Главная страница
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.019 c
1-83520
exo
2003-05-13 15:24
2003.05.26
как сделать button активным постоянно?


14-83663
Leran2002
2003-05-05 17:19
2003.05.26
Проблема с SetSystemTime


14-83745
Lola
2003-04-25 16:04
2003.05.26
---|Ветка была без названия|---


14-83652
ctranik
2003-05-07 22:41
2003.05.26
У FTP есть такая команда


3-83330
diww
2003-05-05 12:53
2003.05.26
переиндексация dbf