Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Жизнидеятельность приложений [D7, WinXP]


voe ©   (2005-11-15 16:01:00) 

Каким образом моржно отследить жизнидеятельность программы.
Я запуская WinRar из своего приложения и мне надо отследить его жизнидеятельность. Подскажите пожалуста. Желательно по падробней.


Хинт   (2005-11-16 16:02:00) [1]

var
si:STARTUPINFO;
pi:PROCESS_INFORMATION;
cmdline:string;
begin
ZeroMemory(@si,sizeof(si));
si.cb:=SizeOf(si);
cmdline:="C:\my.exe";
if not CreateProcess(nil, PChar(cmdline), nil, nil, False, 0, nil, nil, si, pi) then
begin
...
end;
WaitForSingleObject( pi.hProcess, INFINITE );
CloseHandle( pi.hProcess );
CloseHandle( pi.hThread );
end;


GuAV   (2005-11-16 15:50:00) [2]

wicked ©   (16.11.05 0:31) [5]

> в цикле WaitForSingleObject на 200 мсек и проверять,
> чего он там вернул.... ну и
> Application.ProcessMessages само-собой....

Тогда уже MsgWaitForMultipleObjects .


voe   (2005-11-16 14:46:00) [3]

А поподробней процикл или про поток можно?!
Очень нужно


wicked   (2005-11-16 00:31:00) [4]


> Запускаете WinRar через CreateProcess, потом вызывате WaitForSinfleObject.
>  Как только управление вернется на следующий оператор -
> значит, WinRar завершился. А чтобы не возникало эффекта
> "зависания", нужно делать все это в отдельном потоке.

как еще один вариант, без потока - в цикле WaitForSingleObject на 200 мсек и проверять, чего он там вернул.... ну и Application.ProcessMessages само-собой....


Юрий Зотов   (2005-11-15 17:14:00) [5]

Попробую потелепатить...

Запускаете WinRar через CreateProcess, потом вызывате WaitForSinfleObject. Как только управление вернется на следующий оператор - значит, WinRar завершился. А чтобы не возникало эффекта "зависания", нужно делать все это в отдельном потоке.

Итак, ключевые слова у Вас теперь есть, а примеров в Сети полно.


alex_***   (2005-11-15 16:44:00) [6]

натравить на него Spy++ например. и любоваться потоком сообщений


Digitman   (2005-11-15 16:40:00) [7]


> жизнидеятельность


определение термина - в студию !...


Leonid Troyanovsky   (2005-11-15 16:13:00) [8]


> voe   (15.11.05 16:01)  

> Я запуская WinRar из своего приложения и мне надо отследить
> его жизнидеятельность. Подскажите пожалуста. Желательно
> по падробней.


Большинство экспертов признают наиболее подробным
анализ по продуктам жизнедеятельности.

--
Regards, LVT.


Наверх

Титульная страница Поиск, карта сайта Написать письмо