Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
2-1169113274
Beavercrazy
2007-01-18 12:41
2007.02.04
Как определить координаты ячейки в строке?


2-1169295348
redlord
2007-01-20 15:15
2007.02.04
получение почты средствами компонентов indi


2-1169377884
md
2007-01-21 14:11
2007.02.04
как найти экземпляр класса?


1-1166071583
kukuikar
2006-12-14 07:46
2007.02.04
Приостановка выключения системы


1-1165585804
Феникс
2006-12-08 16:50
2007.02.04
Экспорт в Excel - (не зарегистрирован класс LeftMargin)




   Наверх