На главную... Продукты | Технологии | Классификаторы | Проекты | Скачать | Цены| Форум | Статьи | Обучение | Контакты

GTK ActiveX Free : axMapAtlas

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: Пред. 1 2
RSS
GTK ActiveX Free : axMapAtlas, ошибка несоответствия типов
 
Пришлите, пожалуйста, e-mail, на который выслать пример.

Проблема все с тем же axgistoolkit.tlh
Делал в соответствии с Вашим алгоритмом действий.
Удалил из Вашего проекта axfMapWorkSet.h и axMapAtlas.h
Проект - Добавить класс - MFC - MFC класс из TypeLib - Добавить - Файл - Выбираю в путях axGisToolKit.ocx - это выполняю для 2х классов IaxfMapWorkSet и IaxMapAtlas.
Компилирую.
Список ошибок в axgistoolkit.tlh:
error C2146: syntax error : missing ';' before identifier 'DialogFiles'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2146: syntax error : missing ';' before identifier 'HistoryList'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2146: syntax error : missing ';' before identifier 'GetDialogFiles'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2146: syntax error : missing ';' before identifier 'GetHistoryList'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2143: syntax error : missing ';' before 'IaxMapFileNameEdit::GetDialogFiles'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2497: 'IStringsPtr' : 'implementation_key' can only be applied to function declarations
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2143: syntax error : missing ';' before 'IaxMapFileNameEdit::GetHistoryList'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2497: 'IStringsPtr' : 'implementation_key' can only be applied to function declarations
error C2086: 'int IStringsPtr' : redefinition
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

Есть подозрение, что при импорте из OCX VS интерпретирует типы по-своему, что в итоге приводит к несоответствию типов.
 
Цитата
Роман Твердов пишет:
Пришлите, пожалуйста, e-mail, на который выслать пример.

winogradov@list.ru

PS: а какой компилятор?

Цитата
Роман Твердов пишет:
Есть подозрение, что при импорте из OCX VS интерпретирует типы по-своему, что в итоге приводит к несоответствию типов.

Поэтому лучше использовать стандартные типы
Изменено: Сергей Виноградов - 05.07.2013 10:48:59
 
Говорил я Вам Сергей, что ВижуалСтудия интерпретирует строку как IDispath.
COM контейнер - или целый объект с кучами методов типа (_get _set _char _ansi _utf8 _widecher и другое)  :)
---
Когда то я писал пример под АктивХ и строки в Си интерпретировал как переменная->to_char() вроде ОСХ "заглатывала"
Изменено: KFF - 05.07.2013 23:41:57
Не тот глуп кто не знает, а тот, кто не знает где искать.
 
Цитата
KFF пишет:
Говорил я Вам Сергей, что ВижуалСтудия интерпретирует строку как IDispath.

Не совсем так, у меня в MSVC проблем со строками как раз нет. Приведенные выше ошибки валятся у разработчиков ( под Борландом? )
у меня проблемы с типами типа: TxDoublePoint xDoublePoint;

То Роман: нельзя ли хотя бы для теста завести функцию ExistsMapInPoint принимающую на вход не структуру а пару даблов?
 
Сергей, а какой размер у X и Y генерируется в структуре TxDoublePoint в MSVC  :?:
"Внутри COM объекта" обрабатываются 8-ми байтные float
Не тот глуп кто не знает, а тот, кто не знает где искать.
 
Цитата
KFF пишет:
Сергей, а какой размер у X и Y генерируется в структуре TxDoublePoint в MSVC
"Внутри COM объекта" обрабатываются 8-ми байтные float

Цитата
#pragma pack(push, 4)

struct __declspec(uuid("32508ed4-9aab-4357-a180-9c770b6a3120"))
TxDoublePoint
{
   double X;
   double Y;
};

#pragma pack(pop)

16 байтавая структура, внутри два 8 байтовых дабла
 
Сергей, а Вы наш пример попробовали? работает? Почему не хотите использовать предложенное нами?
Ошибки, которые я привел, возникают в MSVC при попытке собрать приложение.
Страницы: Пред. 1 2
Читают тему (гостей: 1)



© КБ Панорама, 1991-2024

Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности