Версия Гис Конструктор для Qt Designer(MAPAPIVERSION = 0x111015, MAPACCESSVERSION = 20130912).
1. Создаю временную карту, не используя функцию MAPAPI mapCreateTempSite, т.к. она пытается делать записи в каталог приложения, что запрещено системой безопасности. 2. Создаю и рисую объект на созданной в п.1 временной карте по немного видоизмененному примеру, описанному тут, а затем пытаюсь его удалить с карты:
Код
auto hobj = createObjectByKey(m_mapHandler, key, 1000); // код из примера, где объект сохраняется на карте путем вызова ф-и mapCommitObject
if (hobj != 0) {
mapSetRealShowScale(m_mapHandler, 1000000.);
QImage img = paintMapObj(hobj); // код из примера, только функция в результате возвращает QImage
auto fRes = mapDeleteObject(hobj); // при этом вызове происходит падение приложения
if (fRes == 0) {
qDebug() << Q_FUNC_INFO << mapGetAccessError();
}
Q_ASSERT_X(fRes != 0, Q_FUNC_INFO, "mapDeleteObject");
// освобождаем объект
mapFreeObject(hobj);
}
3. При вызове функции удаления созданного на карте объекта(mapDeleteObject(hobj)) происходит падение приложения.
Доброе утро! В дополнение к вышесказанному, под Windows с использованием GIS Toolkit Active Free вылетов при удалении элемента с карты нет. Поэтому хотелось бы разобраться, что я возможно делаю не так.
Ваши действия по созданию/удалению объекта корректны - в данном случае имеет место ошибка в используемой Вами версии ГИС Конструктор.
Мы можем предложить Вам следующие варианты решения: - обновление ГИС Конструктор версии 11 (бесплатно); - обновление ГИС Конструктор до версии 12 (по стоимости обновления).
Для выполнения любого из данных действий напишите, пожалуйста, письмо на нашу почту (panorama@gisinfo.ru) с указанием организации и номера лицензионного ключа.
Александр Савелов написал: Для выполнения любого из данных действий напишите, пожалуйста, письмо на нашу почту ( panorama@gisinfo.ru ) с указанием организации и номера лицензионного ключа.
Здравствуйте, Александр, выслал данные на указанную почту. Спасибо.