A: WinExec() или ShellExecute. У второй больше возможностей.
(SO): CreateProcess() в параметре process info возвращает handle запущенного
процесса. Вот и делаешь WaitForSingleObject(pi.hProcess, INFINITE);
(AA): (Win16) Delay можно взять из rxLib.
|
|
handle := WinExec(...); if handle >= 32 then
while GetModuleUsage(handle) > 0
do
Delay( nn ); else
raise ....
|
(AM): Чтобы выяснить, работает ли программа, используйте GetProcessTimes(),
параметр lpExitTime.
(Win32) Для принудительного завершения процесса -- TerminateProcess.
(Win16) (RR): Надо послать программе сообщение WM_QUIT:
|
|
Handle := Winexec(App, 0); PostMessage(Handle, WM_QUIT, 0,
0); | |