| Обсуждение |
| system primitive failed [ Вадим Протасов ]Четверг, 8 августа 2013, 08:10
Добрый день. Возникает следующая проблема. Если открыть окно ObjectLand через com интерфейсы, и прикрепить растровое изображение, возникает ошибка "system primitive failed". При этом, изображение нормально прикрепляется. Если же открыть OL просто как программу и прикрепить растр, то такой ошибки не появится. Можете подсказать, в чем может быть проблема? |
|
| [ ObjectLand Support ]Четверг, 8 августа 2013, 15:19
Напишите подробнее как вы открываете окно через СОМ-интерфейсы (пример кода) и какие действия подразумеваете под словом "прикрепить" растровое изображение? Также укажите версию ObjectLand. |
|
| [ Вадим Протасов ]Пятница, 9 августа 2013, 11:39
открываю OL вот так:
try {
gdbTheme = gdb.Themes.Item(CbThem.SelectedItem);
} catch (Exception ex) {
ObjectLandMap.Instance.StatusKernelObjectLand = ObjectLandMap.StatusKernel.NotRunning;
MessageForm.ShowMessage(MessageForm.MessageIcon.Error, "Ошибка",
"Невозможно открыть тему для просмотра.",
"Процесс ObjectLand'a был завершен.",
"Обратитесь к администратору", ex);
return;
}
strThemeName = gdbTheme.Name;
if (gdbThemeBrowser != null) {
gdbThemeBrowser.Close();
gdbThemeBrowser = null;
}
if (gdbTheme == null) {
ObjectLandMap.Instance.StatusKernelObjectLand = ObjectLandMap.StatusKernel.NotRunning;
MessageForm.ShowMessage(MessageForm.MessageIcon.Error, "Ошибка",
"Невозможно открыть тему для просмотра.",
"Процесс ObjectLand'a был завершен.",
"Обратитесь к администратору", null);
return;
}
try {
gdbThemeBrowser = gdbEngine.CreateThemeBrowser((GDBTheme)gdbTheme);
} catch (Exception) {
ObjectLandMap.Instance.StatusKernelObjectLand = ObjectLandMap.StatusKernel.NotRunning;
}
tbch = new GDBThemeBrowserEvents_ThemeBrowserChangedEventHandler(
gdbThemeBrowser_ThemeBrowserChanged);
gdbThemeBrowser.ThemeBrowserChanged += tbch;
gdbThemeBrowser.SetPosition(BrowserOLRectangle.X, BrowserOLRectangle.Y);
gdbThemeBrowser.SetSize(BrowserOLRectangle.Width, BrowserOLRectangle.Height);
if (!gdbThemeBrowser.Visible) {
gdbThemeBrowser.Visible = true;
}
if (!gdbThemeBrowser.Locked) {
gdbThemeBrowser.Active = true;
}
Под словом прикрепить растр подразумеваю выбрать в меню OL "Объект" -> "Добавить" -> "Растровый".
Версия 2.7.5 |
|
| [ ObjectLand Support ]Понедельник, 12 августа 2013, 11:51
Попробуйте увеличить максимальный размер используемой виртуальной памяти ObjectLand (http://www.objectland.ru/support/doc/usermanual/MGIS_SysTunMemory.html)
Какого размера растр вы пытаетесь добавлять? |
|
| [ Вадим Протасов ]Среда, 21 августа 2013, 16:14
Да в общем то пробовал разные загружать, и 40кб, и 5мБ, и 40мб. Ошибка появляется не на всех машинах, и не всегда, зависимости от формата и |
|
| [ Вадим Протасов ]Среда, 21 августа 2013, 16:15
размера на смог найти. Видимо так и останется |
|
| [ ObjectLand Support ]Четверг, 22 августа 2013, 18:03
Попробуйте обновить версию ObjectLand до версии 2.7.7.
Очень помогло бы найти ошибку, если бы Вы запустили ObjectLand с ключом -debug.
Например, создайте ярлык на десктопе на файл Objland.exe, отройте диалог свойств и в поле Объект добавьте текст "-debug".
Т.е. должна получиться строка вида "C:\Program Files\ObjectLand\BIN\Objland.exe" -debug
В таком режиме, во время возникновения ошибки "system primitive failed" теперь появится диалоговое окно runtime-отладчика с красным фоном. В этом окне нужно включить чек-бокс "Показать переменные" и после этого нажать кнопку "Сохранить...". Сохраненное содержимое отладочной информации пришлите на support@objectland.ru. |
|
| [ ObjectLand Support ]Пятница, 23 августа 2013, 12:20
Я извиняюсь, ключ "-debug" нужно добавить не в ярлык, а в ветку реестра
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{A5E45481-1644-11D6-876B-008048DD5B76}\LocalServer32
Теперь значение "(По умолчанию)" должно иметь вид "C:\Program Files\ObjectLand\BIN\objland.exe /AutoSLLs:gdbcom /Automation /debug" |
|
ОтветитьЗнаком «*» отмечены обязательные для заполнения поля. |
| |