![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сервис+WinExec [D5, NT4]
roman002 © (2002-09-11 07:49:00)Подскажите может особенность какая в выполнении WinExec из NT сервиса. По щелчку кнопки в обычном приложении
WinExec(PChar("---"), SW_MINIMIZE); выполняется, а из сервиса хрен-то и сообщений никаких
Lord Warlock (2002-09-11 09:16:00) [1]А вот пример запуска обычной программы как сервиса:
procedure THaspRunnerService.ServiceExecute(Sender: TService);
var W: array [0..MAX_PATH] of Char;
S: String;
hwndHandle : THANDLE;
begin
S:="Путь\Что-то там.exe";
WinExec(PChar(S),SW_SHOWMINNOACTIVE);
while not Terminated do
ServiceThread.ProcessRequests(True);
hwndHandle:=FindWindow(Nil, "Заголовок главного окна программы");
if hwndHandle<>0 then
PostMessage(hwndHandle, WM_QUIT, 0, 0);
end;
roman002 (2002-09-11 08:55:00) [2]Спасибо
Ученик (2002-09-11 08:24:00) [3]Команда выполняется, только если у сервиса не стоит "птица" интерактивный, то окно приложения не будет показано, и еще одна особенность приложения запускается по Local System Account, т.е. все подключенные сетевые диски будут не видны.