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

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

WaitForSingleObject [D6, Win2k]


Dmitriy Polskoy ©   (2002-08-28 16:24:00) 

У меня такая проблема: я запускаю процесс(bat-файл), который, в
свою очередь, запускает еще оду программу. Как мне дождаться завершения той второй пограммы?


Слесарь Матерящийся   (2002-08-29 11:02:00) [1]

Ну зачем же использовать bat файл, если можно всё сделать программно?


Slava   (2002-08-29 06:55:00) [2]

var
FExitCode: DWORD;
...

repeat
Application.ProcessMessages;
GetExitCodeProcess(P.hProcess, FExitCode);
Sleep(10);
until FExitCode <> STILL_ACTIVE;


Denvor   (2002-08-29 05:47:00) [3]

Ха!
А как в приведенном выше примере сделать так, чтобы моя программа не превращалась в паралитика и реагировала на щелчки юзера, пока вызванныя программа выполняется?Куда вставить Application.ProcessMessages?


Ученик   (2002-08-28 20:20:00) [4]

>Dmitriy Polskoy © (28.08.02 17:07)
Так вроде ждет или что написано в bat-файле ?


Dmitriy Polskoy   (2002-08-28 17:07:00) [5]

Но у тебя запускается только одна прога. Ее конца дождаться легко. А как поступать со второй?


Wizard_Ex   (2002-08-28 16:37:00) [6]

var
si : Tstartupinfo;
p : Tprocessinformation;
nn : string;
begin

nn:="Pftp.exe";
FillChar(si,Sizeof(si),#0);
si.cb:=Sizeof(si);
si.dwFlags:=STARTF_USESHOWWINDOW;
si.wShowWindow:=SW_SHOWNORMAL;
CreateProcess(nil,PChar(nn),nil,nil,false,0,nil,nil,si,p);
WaitForSingleObject(p.hProcess,infinite);
end;
Пользуй однако...


Наверх

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