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

Как выяснить, работает ли программа или уже завершилась?   Найти похожие ветки 

 
Olsher   (2004-06-15 10:08) [0]

Как узнать, закончила ли свою работу другая программа, запущенная из моей программы?


 
Fay ©   (2004-06-15 10:11) [1]

Запускать её самому или перебирать процессы


 
Fay ©   (2004-06-15 10:12) [2]

Так. Торможу 8)


 
Mim1 ©   (2004-06-15 10:18) [3]

procedure TForm1.Button1Click(Sender: TObject);
var si:STARTUPINFO;
   pi:PROCESS_INFORMATION;
   xc:cardinal;
begin
   ZeroMemory(@si,sizeof(si));
   si.cb:=SizeOf(si);
   si.wShowWindow := SW_HIDE;
   si.dwFlags := STARTF_USESHOWWINDOW;

   CreateProcess(nil,
{$ifdef home}
     PCHAR("rar32 a test.zip "+"C:\Video\nge\nge-01.viv")
{$else}
     PCHAR("rar32 a test.zip "+Application.EXENAME)
{$endif}
     ,nil,nil,false,NORMAL_PRIORITY_CLASS,nil,nil,si,pi);
   CloseHandle(Pi.hThread);
   with tanimate.Create(self) do
     begin
       Parent := self;
       Align := alClient;
       BringToFront;
       CommonAVI := aviCopyFiles;
       Active := True;
       StopFrame := 34;
       while WaitForSingleObject(Pi.hProcess, 10) = WAIT_TIMEOUT do
         Application.ProcessMessages;
       free;
     end;
   if GetExitCodeProcess(Pi.hProcess,xc) then
     showMessage(inttostr(xc));
   CloseHandle(Pi.hProcess);
end;


 
Тимохов ©   (2004-06-15 10:19) [4]

http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988621841&n=15
возможно это поможет.

нужно waitforsingleobject делать не infinite (т.е. бесконечно), а 0, т.е. тут же получить signaled (т.е. завершился) ли процесс или нет. надо проверять р-т этой функции. посмотри в msdn про waitforsingleobject



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

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



Память: 0.46 MB
Время: 0.02 c
4-1084962191
Zyb
2004-05-19 14:23
2004.06.27
АТ-комманды для Моторола Е365


3-1086286568
hardclubber
2004-06-03 22:16
2004.06.27
Автоинкримент в IB


1-1087215804
Артем
2004-06-14 16:23
2004.06.27
Проблемы с нодом в TreeView


14-1086619909
wl
2004-06-07 18:51
2004.06.27
Где можно достать реферат


1-1087015145
mmb
2004-06-12 08:39
2004.06.27
Как получить строки из DLL при вызове функции?




   Наверх