Вниз
Скачать: CL | DM;

Жизнидеятельность приложений   Найти похожие ветки 

 
voe   (2005-11-15 16:01) [0]

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


 
Leonid Troyanovsky ©   (2005-11-15 16:13) [1]


> voe   (15.11.05 16:01)  

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


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

--
Regards, LVT.


 
Digitman ©   (2005-11-15 16:40) [2]


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


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


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

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


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

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

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

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


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


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

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


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

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


 
GuAV ©   (2005-11-16 15:50) [7]

wicked ©   (16.11.05 0:31) [5]

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

Тогда уже MsgWaitForMultipleObjects .


 
Хинт ©   (2005-11-16 16:02) [8]

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;



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

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



Память: 0.46 MB
Время: 0.029 c
1-1131047685
rolex
2005-11-03 22:54
2005.12.04
Баг Chart а или что?


4-1128194544
ArtemESC
2005-10-01 23:22
2005.12.04
Topmost Окнa


6-1124820512
NikNet
2005-08-23 22:08
2005.12.04
Как узнать размер директорий в инернете?


4-1127994105
Jolik
2005-09-29 15:41
2005.12.04
Непонятки с функцией CreateFileMapping...


4-1127991575
Rule
2005-09-29 14:59
2005.12.04
Проблемма при открытии СОМ порта посредством функции CreateFile




   Наверх