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

Взаимодействия ГИС сервера с самописной ПО

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: Пред. 1 2 3 4 5 След.
RSS
Взаимодействия ГИС сервера с самописной ПО
 
Цитата
Александр Махин написал:
public const string gisLibrary = "gisuacces"

Изменились имена библиотек.

Для версии 13 они имеют вид:
gis32*.dll - x32 библиотеки
gis64*.dll - x64 библиотеки

Например:
gis32acces.dll / gis64acces.dll
 
Теперь все очень сильно начало лагать, подвисает на каждое действие и часть API функций не срабатывает(((
 
Я так понял, что за отображение выносок на карте по сетевому пути в не зависимости от того как открыта карта локально или с гис сервера отвечает библиотека gis32acces.dll? Я правильно понял?  
 
Цитата
Александр Махин написал:
Я так понял, что за отображение выносок на карте по сетевому пути в не зависимости от того как открыта карта локально или с гис сервера отвечает библиотека gis32acces.dll? Я правильно понял?  

Что такое "выноски"?

За открытие данных отвечает  библиотека gis32acces.dll. Для локальных данных и данных с ГИС Сервера она самодостаточна.
При открытии данных из других источников gis32acces.dll может подгружать дополнительные библиотеки.
Например, при открытии геопорталов подгружается gis32wmsacces.dll и/или gis32wcsacces.dll, при открытии пространственных баз данных - gis32sqlmap.dll.

Цитата
Александр Махин написал:
Теперь все очень сильно начало лагать, подвисает на каждое действие и часть API функций не срабатывает(((

Давайте более предметно. Какие именно функции "лагают", "подвисают" и "не срабатывают"?
Вы все вызовы у себя по коду заменили на новые имена библиотек?
У Вас в проекте используется только API или компоненты GTK Active?
Выполнены ли указания инструкции по регистрации *.ocx, путей к *.dll, обновлению версии GTK Active в проекте?
Предварительно рекомендуется регистрацию старой версии *.ocx и *.dll 12-ой версии удалить (или убрать из путей загрузки DLL ОС Windows), чтобы убедится, что в Вашем проекте нет смешения библиотек ГИС-ядра разных версий.

Скрытый текст
 
Подскажите пожалуйста, а внутри библиотеки gis32acces.dll название функций осталось прежнее или поменялось в отличии от gisuacces.dll?
 
Функции никак не поменялись.
Принцип следующий: весь API из предыдущих версий полностью сохраняется в последующих.
Может меняться внутренняя реализация, но интерфейс остается неизменным.
При необходимости расширения или изменения состава параметров функции, создается новая функция с похожим именем и постфиксом "Ex" или "Pro", при этом старая функция остается как есть - с тем же именем и составом параметров.
С какими функциями возникли трудности?
 
После того как я установил gistoolkitactivefree13 (зарегил, обновил и т.д.) перестали работать такие функции как: mapSetSiteViewOrder, mapPlaneToMap, mapPlaneToGeo42 и я раньше использовал TxTASKPARMEX, но теперь пишет что нет такой функции. Но это только часть, что я успел проверить. И ещё очень сильно начала ПО лагать при открытии и масштабирования.  
 
Цитата
Александр Махин написал:
mapSetSiteViewOrder, mapPlaneToMap, mapPlaneToGeo42 и я раньше использовал TxTASKPARMEX

Покажите, как у Вас описан их вызов.

Я Вас немного обманул. Изменения в MAPAPI все же были, правда затронули они не сами функции, а объявление типов, что при вызове из C# может приводить к тому, что линковщик не найдет функцию.
В 13 версии в MAPAPI изменился тип параметров HMAP, HSITE, HOBJ и др. идентификаторов, которые ранее в зависимости от разрядности интерпретировались как int или как int64 за счет директив препроцессора.
Теперь эти типы одинаково объявлены и для x32, и для x64 (см. maptype.h):
Скрытый текст


Если не ошибаюсь, в C# для параметров таких типов надо использовать объявление их как IntPtr.


Цитата
Александр Махин написал:
И ещё очень сильно начала ПО лагать при открытии и масштабирования.  

Поясните, в чем это выражается?
 
Ок. Но только завтра у нас рабочий день закончился. А завтра я вам скину скрины кода вызова функций.  
 
Код
Изменения в MAPAPI все же были, правда затронули  они не сами функции, а объявление типов, что при вызове из C# может  приводить к тому, что линковщик не найдет функцию.
Изменение типа указателя в h-файле не может влиять на имя функции extern "C".

Все функции на месте. Фрагмент дампа:

   0033CBC8 9750 26C5 mapSetSiteViewOrder
   000BC8C8 3380 23E1 mapPlaneToMap
...

Возможно в тексте программы на C# есть объявления функций с прежним именем библиотеки.
Страницы: Пред. 1 2 3 4 5 След.
Читают тему (гостей: 1)



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

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