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

Вниз

закрытие   Найти похожие ветки 

 
vova_vova   (2006-03-24 13:11) [0]

День добрый. Подскажите пожалуйста, как отследить закрытие программы, открытой из моего приложения функцией winexec. Спасибо


 
Рамиль ©   (2006-03-24 13:25) [1]

Winexec не получится. Используй CreateProcess.


 
Рамиль ©   (2006-03-24 13:29) [2]

var
 Rlst: LongBool;
 StartUpInfo: TStartUpInfo;
 ProcessInfo: TProcessInformation;
 Error: integer;
 ExitCode: Cardinal;
begin
 FillChar(StartUpInfo, SizeOf(TStartUpInfo), 0);
 with StartUpInfo do
 begin
   cb := SizeOf(TStartUpInfo);
   dwFlags := STARTF_USESHOWWINDOW or STARTF_FORCEONFEEDBACK;
   wShowWindow := SW_SHOWNORMAL;
 end;
 Rlst := CreateProcess("C:\Windows\System32\notepad.exe", " c:\readme.txt", nil, nil, false, NORMAL_PRIORITY_CLASS, nil, nil, StartUpInfo, ProcessInfo);
 if Rlst then
 with ProcessInfo do begin
   WaitForInputIdle(hProcess, INFINITE); // ждем завершения инициализации
   WaitforSingleObject(ProcessInfo.hProcess, INFINITE); // ждем завершения процесса
   GetExitCodeProcess(ProcessInfo.hProcess, ExitCode); // получаем код завершения
   CloseHandle(hThread); // закрываем дескриптор процесса
   CloseHandle(hProcess); // закрываем дескриптор потока
 end
else Error := GetLastError;
end;


 
vova_vova   (2006-03-24 14:18) [3]

Спасибо, попробую...



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

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

Наверх




Память: 0.47 MB
Время: 0.038 c
1-1140539314
Валерий
2006-02-21 19:28
2006.04.09
Из CBuilder в Delphi


2-1143211969
JohnKorsh
2006-03-24 17:52
2006.04.09
Могут ли D5 и D7 сосуществовать на одном копьютере?


15-1142260806
oldman
2006-03-13 17:40
2006.04.09
Вот купил себе инструмент...


1-1141591754
Кальян
2006-03-05 23:49
2006.04.09
Закраска в StringGrid


1-1141306181
MegaVolt
2006-03-02 16:29
2006.04.09
Как выводить статус от нескольких потоков?