Как автономно от ArcGIS запустить свою программу?

0 голосов
спросил 21 Июнь, 10 от developer195 (560 баллов) в категории Программные продукты Esri
Здравствуйте, помогите, плиз, с задачей: как запустить на компе, на котором нет никаких средств ArcGIS отдельную программу, написанную в Delphi с помощью ArcObjects, что для этого по миниуму надо сделать (что перенести и/или установить на этот комп)?
Спасибо!

27 Ответы

0 голосов
ответил 21 Июнь, 10 от pooperec (10,820 баллов)
ArcGIS Runtime библиотеки... Но всё зависит от того какие соклассы (библиотеки) использовались в работе... Некоторые библиотеки не идут в составе ArcGis Runtime...
0 голосов
ответил 21 Июнь, 10 от developer195 (560 баллов)
Спасибо, а нельзя ли немного поподробнее.
Я пытаюсь оторвать свою программу от ArcGIS и у меня она "падает" на строке
  TAutoObjectFactory.Create(ComServer, TServer_Class, ClassServer,
    ciMultiInstance, tmApartment);
Это скорее всего из-за того, что у меня СОМ-сервер не зарегистрирован?
Я пытаюсь зарегистрировать СОМ-сервер с помощью делфиевской tregsvr.exe, но это не ничего не даёт.
Что у меня не так?

0 голосов
ответил 22 Июнь, 10 от developer195 (560 баллов)
Может кто-то сможет помочь?
0 голосов
ответил 22 Июнь, 10 от TDenis (42,620 баллов)
Сказали жеж, нужен ArcGIS Engine Runtime.
http://www.dataplus.ru/Soft/ESRI/ArcGIS/ArcGISEngine.htm
0 голосов
ответил 22 Июнь, 10 от pooperec (10,820 баллов)
developer195
1. Регистрируй библиотеку командой regsvr32 name_of_DLL.dll.
2. Ищи инсталл, какой именно смотри по ссылке Дениса.
0 голосов
ответил 22 Июнь, 10 от developer195 (560 баллов)
Благодарю за ответы.
У меня уже есть проинсталлированный ArcGIS Engine Runtime, но я не могу разобраться, как с его помощью сделать независимым своё приложение.
0 голосов
ответил 22 Июнь, 10 от pooperec (10,820 баллов)
Вы не сделаете свое приложение независимым, при разработке приложений на базе ArcObjects Вам необходимо инсталлировать/регистрировать как Ваши библиотеки, так и библиотеки ArcGis Runtime / ArcView / ArcEditor / ArcInfo ...
0 голосов
ответил 22 Июнь, 10 от developer195 (560 баллов)
Я в общих чертах понимаю, что я должен делать.

Разрешите для большей взаимной понятности показать, что я делаю.
1. Создаю dll с COM-сервером, в этой dll как и положено экспортируются следующие функции:

exports
  DllGetClassObject,
  DllCanUnloadNow,
  DllRegisterServer,
  DllUnregisterServer;

2. Пытаюсь зарегистрировать созданную dll:

regsvr32.exe /i TestDll.dll

в результате regsvr32.exe пишет ошибку: "TestDll.dll была загружена, но найти точку входа для TestDllInstall не удалось. Зарегистрировать этот файл невозможно."

Скажите, в чём я неправ?
0 голосов
ответил 22 Июнь, 10 от pooperec (10,820 баллов)
в ключе /i
0 голосов
ответил 22 Июнь, 10 от developer195 (560 баллов)
Сделал без ключа /i:
regsvr32.exe TestDll.dll
Получаю следующее: на машине, гдк установлен ArcGIS, всё хорошо - бибилиотека регистрируется и разрегистрируется, а на "голой" машине regsvr32.exe выдаёт подряд 3 ошибки:
1."Неизвестное программное исключение..."
2."Runtime error 217 at 00875F71"
3. Ошибка при вызове LoadLibrary ("TestDll.dll") - произошёл сбой в программе инициализации библиотеки компоновки

Скажите, что на этот раз я намутил?
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...