Вниз
Скачать: 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 вся ветка

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



Память: 0.45 MB
Время: 0.011 c
8-83610
Vadim840
2003-02-12 12:59
2003.05.26
Фото формы


3-83367
sapr
2003-05-06 10:07
2003.05.26
DBGrid с отображением гиперссылок


3-83342
AleksandrKu
2003-05-04 09:03
2003.05.26
как открыть ДБ с разрушившимся индексом


14-83697
Hooch
2003-05-06 11:47
2003.05.26
Оракл


4-83826
AlexB
2003-04-01 06:57
2003.05.26
Message table




   Наверх