Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.04;
Скачать: CL | DM;

Вниз

Можно ли как-нибудь узнать результат выполнения   Найти похожие ветки 

 
Ega23 ©   (2006-12-11 10:10) [0]

RegSvr32?
Есть программка, регистрирующая по заданному списку dll с СОМ-объектами. Там всё довольно тупо:
 
 CurrDir := ExtractFileDir(ParamStr(0));
 for i := 0 to DllList.Count - 1 do
   WinExec(PChar("regsvr32 " + CurrDir + DllList.Strings[i]), SW_SHOW);


DllList : TStringList.

Так вот, можно-ли узнать результат того, что в WinExec на клиенте?


 
BiN ©   (2006-12-11 10:18) [1]

Под "результатом" имеется ввиду код завершения процесса? В этом случае нужно вместо WinExec использовать ShellExecuteEx или CreateProcess.


 
umbra ©   (2006-12-11 10:22) [2]

в реестре можно поискать GUID или ProgId.


 
Ega23 ©   (2006-12-11 10:41) [3]


> Под "результатом" имеется ввиду код завершения процесса?


Имеется ввиду - зарегистрировался СОМ-объект, или нет.


 
Ega23 ©   (2006-12-11 10:42) [4]


> в реестре можно поискать GUID или ProgId.


Не выход, могла быть попытка перерегистрации.


 
BiN ©   (2006-12-11 10:50) [5]


> Ega23 ©   (11.12.06 10:41) [3]
>
> Имеется ввиду - зарегистрировался СОМ-объект, или нет.

написание своего regsvr32 сводится к вызову  DllRegisterServer/ DllUnregisterServer.


 
Ega23 ©   (2006-12-11 10:59) [6]


> написание своего regsvr32 сводится к вызову  DllRegisterServer/
> DllUnregisterServer.


Да ну, так просто?
Ну спасибо, побежал писАть, вопрос снят...  :о)


 
BiN ©   (2006-12-11 11:04) [7]


> Ega23 ©   (11.12.06 10:59) [6]


Может поможет RegisterComServer из ComObj(?)


 
umbra ©   (2006-12-11 11:07) [8]

однозначно определить результат регистрации сервера можно лишь попытавшись создать его экземпляр. Выяснить, сколько раз там регистрировалась библиотека невозможно (если, конечно, библиотека сама при регистрации не пишет подобные данные куда-нибудь)



Страницы: 1 вся ветка

Текущий архив: 2007.02.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.034 c
15-1168892349
Pasha L
2007-01-15 23:19
2007.02.04
Достать Демки Инди


2-1169041017
Garacio
2007-01-17 16:36
2007.02.04
Использовать ini для процедуры сравнения


15-1168991424
kaZaNoVa
2007-01-17 02:50
2007.02.04
Автовыгрузка DLL аспекты реализации


3-1163395467
pavel_guzhanov
2006-11-13 08:24
2007.02.04
Как в Interbase вставлять в поле текущую дату?


15-1168607123
DVM
2007-01-12 16:05
2007.02.04
Как вам такой админ. Говорят правда.