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

Вниз

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

 
Leon777   (2002-10-30 15:57) [0]

Из программы, параллельно, запускаю DOS приложение
(winexec("x.exe < x.in > xvw.txt",SW_SHOWMINIMIZED);)

Эта программка создает файлы с результатами своей деятельности
В основной программе я использую эти результаты, поэтому мне позарез необходимо дождаться окончания работы DOSовской проги. Как это сделать?
Максимум, что я смог, это дождаться создания файла, но не полного окончания работы с ним DOS программы!
(WaitForSingleObject(FileCreate(""xout.txt "),INFINITE);)
Пробовал запускать с помощью OLE, тоже не смог отследить.
Поможите люди добрые кто как могёт. Хотя, конечно, чем проще код – тем лучше.


 
Wizard_Ex ©   (2002-10-30 16:19) [1]

Может так лучше?
var
si : Tstartupinfo;
p : Tprocessinformation;
nn : string;
begin

nn:="Ptp.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;


 
Leon777   (2002-10-30 16:45) [2]

Благодарствую. Осмысливаю код.
Проверил, работает.
Выручили, а то я уже Хэндланулся.
Один из моих вариантов был близок, но
хендлы, флажочки и нитки так забили мою голову,
что чего-то все время не хватало.
Осмысливаю это чего-то.
Спасибо!


 
Wizard_Ex ©   (2002-10-30 16:47) [3]

Пожалуйста. Был рад помочь.



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
1-24844
Delph
2002-12-27 15:49
2003.01.09
Как очистить картинку в TImage?


14-25086
han_malign
2002-12-18 16:59
2003.01.09
Нарочно не придумаешь...


14-25083
nick_vstu
2002-12-19 11:58
2003.01.09
Как отключить обработку исключительних ситуаций в IDE Delphi 7?


6-24997
Граф
2002-11-06 22:15
2003.01.09
регламентировать доступ к shares через логин-пароль в ХР


1-24861
Timka
2002-12-26 18:49
2003.01.09
удаление файлов