Имя: Пароль:
1C
1С v8
Есть внешняя компонента, хочу получить путь откуда она прогружается
0 shamashs
 
19.08.16
15:41
Объект = Новый COMОбъект("Vertx.e");

Вот так создается ком обьект, каким образом я могу получить, путь к файлу из которого он создается?
1 hitodom
 
19.08.16
15:43
в реестре посмотри
2 lodger
 
19.08.16
15:44
в винде есть dcomcnfg
3 shamashs
 
19.08.16
15:47
Средствами 1с
4 Torquader
 
19.08.16
15:49
Во-первых, это не внешняя компонента, а COM-объект, реализующий интерфейс IDispatch.
Так что искать по ProgId в реестре ссылку на ClassId, а уже у указанного ClassId можно найти программу или Dll, которая загружается в память.
Искать придётся через WMI - там есть возможность чтения данных реестра.
5 Горогуля
 
19.08.16
15:49
(3) дарю: "читать реестр 1с". передай гуглу
6 shamashs
 
19.08.16
15:52
Спасибо
7 lodger
 
19.08.16
15:59
мне одному интересно, зачем человеку с ком-объектом в руках знать из какой папки он выпал?
8 Горогуля
 
19.08.16
16:03
(7) ну.. может, он в исключении хочет сказать "зарегистрируйте вот это" ;)
9 H A D G E H O G s
 
19.08.16
16:14
(8) Значит в реестре этих данных нет. Дада
10 Torquader
 
19.08.16
16:17
(8) Ну, может быть, он хочет проверить, есть ли такой объект, чтобы если нету, то и не пытаться его создать.

Интересно, если манифест в 1С подправить, то можно ли в сам исполняемый файл 1С вписать данные объекта ?
11 shamashs
 
22.08.16
08:46
Для обновления компоненты. Решил просто регистрировать новую