Как зарегистрировать dll-ку?

0 голосов
спросил 02 Ноя, 04 от Гость (210,080 баллов) в категории Программные продукты Esri

Написал dll для ArcMap
Теперь хочется научиться регистрировать её не запуская приложение т.е. не через "настроить-> добавить из файла->..." а как ни будь программно.
Подскажите пожалуйста как это можно сделать?

6 Ответы

0 голосов
ответил 04 Ноя, 04 от evgen_ru (240 баллов)

Конечно, укаазываешь:

regsvr32 Твоя_DLL

Есть еще категории, типа "Commands" и т.д. посмотри их в categories.exe, но в них надо регистрироваться черех этот exe или пропиской определенных ключей в реестр. Для простой кнопки это не нужно.

0 голосов
ответил 04 Ноя, 04 от Гость (210,080 баллов)

а если у меня ToolBar тогда как быть, а можно по подробнее на счет ключей в реестре?

0 голосов
ответил 22 Ноя, 04 от Andranic (2,620 баллов)

Для примера привожу reg файл, для автоматической регистрации (можете включить его в ваш дистрибутив)

REGEDIT4

;////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

;Add Extension to ESRI Mx Extensions Category ({B56A7C45-83D4-11D2-A2E9-080009B6F22B})

;GUID вашего класса Extension {GUID}
[HKEY_CLASSES_ROOT\CLSID\{GUID}\Implemented Categories\{B56A7C45-83D4-11D2-A2E9-080009B6F22B}]

;////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

;Add Commands and Tools to ESRI MX Commands Category ({B56A7C42-83D4-11D2-A2E9-080009B6F22B})

;GUID вашего класса-кнопки- 1 (ICommand) {GUID}
[HKEY_CLASSES_ROOT\CLSID\{GUID}\Implemented Categories\{B56A7C42-83D4-11D2-A2E9-080009B6F22B}]

;GUID вашего класса-кнопки- 2 (ICommand) {GUID}
[HKEY_CLASSES_ROOT\CLSID\{GUID}\Implemented Categories\{B56A7C42-83D4-11D2-A2E9-080009B6F22B}]

;GUID вашего класса-инструмента- 1 (ITool) {GUID}
[HKEY_CLASSES_ROOT\CLSID\{GUID}\Implemented Categories\{B56A7C42-83D4-11D2-A2E9-080009B6F22B}]

; и т.д.

;////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

;Add CommandBars to ESRI MX CommandBars Category ({B56A7C4A-83D4-11d2-A2E9-080009B6F22B})

;GUID вашего тулбара (ICommandBar) {GUID}
[HKEY_CLASSES_ROOT\CLSID\{GUID}\Implemented Categories\{B56A7C4A-83D4-11d2-A2E9-080009B6F22B}]

Вместо GUID Подставляйте значения ваших GUID-ов соответствующих классов. Можете регистрировать сразу несколько Extension и CommandBar, также как я привел здесь для кнопок.

0 голосов
ответил 23 Фев, 05 от Гость (210,080 баллов)

Можна сделать автоматично с Add-Ins  на ESRI

ESRI Compile and Register.

0 голосов
ответил 03 Май, 05 от Гость (210,080 баллов)
при создании нового extention его надо регистрировать через Component Category Manager или через Add-Ins VB6. Это все перкрасно работает если ты делаешь все это сам.
А что делать, если твою dll относят туда, где никто не сможет этого сделать?
При создании проекта в VB6 создается reg файл, который якобы можно использовать для быстрой установки компонента на другом компе.  В нем есть все необходимые giud`ы, но нет инфы о местонахождении dll на компе. При ее запуске на другом компе extention не появляется.

Короче, что нужно сделать чтобы в организации, которой нет программеров, нет vb6 и в которой не знают что такое Component Category Manage, они смогли самостоятельно, без напрягов установить компонент?
0 голосов
ответил 24 Июнь, 05 от Гость (210,080 баллов)

Add-Ins  на ESRI - Compile and Register - если вьполните ето, то резултат BAT файл. extension (DLL) + BAT файл - ето достаточно что инсталироват  extension. Copy extension (DLL) + BAT file in folder and run bat file to register extension.

 

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