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

Вниз

как изнать работает ли еще приложение вызванное exec()   Найти похожие ветки 

 
НАА   (2003-02-15 13:14) [0]

Надо дождаться завершения работы программы вызванной exec() и только после этого позволить пользователю продолжать давить клавиши.
Как сделать?


 
Романов Р.В. ©   (2003-02-15 14:02) [1]

function WinExecAndWait32(FileName:String; Visibility : integer):integer;
var
zAppName:array[0..512] of char;
zCurDir:array[0..255] of char;
WorkDir:String;
StartupInfo:TStartupInfo;
ProcessInfo:TProcessInformation;
begin

StrPCopy(zAppName,FileName);
GetDir(0,WorkDir);
StrPCopy(zCurDir,WorkDir);
FillChar(StartupInfo,Sizeof(StartupInfo),#0);
StartupInfo.cb := Sizeof(StartupInfo);


StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
StartupInfo.wShowWindow := Visibility;
if not CreateProcess(nil,
zAppName, { указатель командной строки }
nil, { указатель на процесс атрибутов безопасности }
nil, { указатель на поток атрибутов безопасности }
false, { флаг родительского обработчика }
CREATE_NEW_CONSOLE or { флаг создания }
NORMAL_PRIORITY_CLASS,
nil, { указатель на новую среду процесса }
nil, { указатель на имя текущей директории }
StartupInfo, { указатель на STARTUPINFO }
ProcessInfo) then Result := -1 { указатель на PROCESS_INF }


else begin
CloseHandle(ProcessInfo.hThread);
WaitforSingleObject(ProcessInfo.hProcess,INFINITE);
GetExitCodeProcess(ProcessInfo.hProcess,DWord(Result));
CloseHandle(ProcessInfo.hProcess);
end;
end;


(c) AlexT1000

Значения параметра Visibility смотри в справке по ShowWindow


 
Anatoly Podgoretsky ©   (2003-02-15 15:05) [2]

НАА (15.02.03 13:14)
Это зависит от реализации функции Exec


 
НАА   (2003-02-17 10:13) [3]

Романов Р.В. © (15.02.03 14:02)
Спасибо, работает
Ещё бы система не запоминала клики по кнопкам, и не исполняла бы их после завершения внешней программы, то было бы совсем отлично :))



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
14-87693
Вадим
2003-02-10 00:26
2003.02.27
А нормально ли это?


1-87516
stikriz
2003-02-16 00:28
2003.02.27
RTTI


4-87751
Darts
2003-01-13 11:39
2003.02.27
Проблемы с UpDown


1-87374
MiXenWorK
2003-02-17 16:57
2003.02.27
Печать изображений


1-87500
cyberwolf
2003-02-15 21:43
2003.02.27
Повтор события onkeydown