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

Вниз

завершение работы чужой программы   Найти похожие ветки 

 
Ancara   (2003-05-15 12:02) [0]

Народ, помогите, плиз.
Такая ситуевина: я запускаю из своей проги чужую прогу при помощи WinExec (также пытался CreateProcess), эта чужая прога (WinRar)делает свои дела и закрывается. Как мне заставить мою прогу ждать закрытия WinRar"а, а не лезть вперед паровоза?


 
DVM ©   (2003-05-15 12:07) [1]

procedure Start;

var

si: TStartupInfo;

p: TProcessInformation;

begin

FillChar(Si,SizeOf(Si),0);

with Si do begin

cb := SizeOf( Si);

dwFlags := startf_UseShowWindow;

wShowWindow := 4;

end;

Form1.WindowState:=wsMinimized;

Createprocess(nil,"c:\windows\sndrec32.exe e:/temp.wav",nil,nil,false,

Create_default_error_mode,nil,nil,si);

Waitforsingleobject(p.hProcess,infinite);

Form1.WindowState:=wsNormal;

end;


 
Ancara   (2003-05-15 12:13) [2]

Элементарно, а-то запарился..
Огромное спасибо!! :))


 
Юрий Зотов ©   (2003-05-15 12:16) [3]

1. И при каждом вызове процедуры Start происходит утечка системных ресурсов. Потому что нет CloseHandle(p.hThread) и CloseHandle(p.hProcess).

2. Этот код лучше поместить в дополнительный поток. Иначе, пока выполняется запушщенная программа, запустившая как бы "подвисает".



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
4-83811
OxOTHuK
2003-03-29 07:41
2003.05.26
PID окна


6-83633
trash
2003-03-26 17:52
2003.05.26
NMHTTP с прокси без кеширования


1-83444
Zew
2003-05-14 19:05
2003.05.26
Сравнить текст


6-83646
acsoft
2003-03-26 06:50
2003.05.26
Нажатие кнопки на HTML-странице в TWebBrowser


14-83701
asku
2003-05-05 15:09
2003.05.26
API