SHELLEXECUTE DELPHI ДОЖДАТЬСЯ ЗАВЕРШЕНИЯ
ShellExecute - это функция в Delphi для запуска внешних приложений в операционной системе Windows. Однако, иногда необходимо дождаться завершения выполнения запущенного процесса, особенно когда результат влияет на дальнейшую работу программы.
Для этого можно использовать функцию WaitForSingleObject из Windows API, которая позволяет подождать завершения процесса до определенного момента времени или бесконечно:
var ProcessInfo: TProcessInformation;begin ZeroMemory(@ProcessInfo, SizeOf(TProcessInformation)); if ShellExecute(0, 'open', 'notepad.exe', nil, nil, SW_SHOWNORMAL) > 32 then begin if WaitForSingleObject(ProcessInfo.hProcess, INFINITE) = WAIT_OBJECT_0 then begin ShowMessage('Notepad has been closed.'); end; end;end;
В этом примере запускается блокнот и программа ждет его завершения. Если Notepad.exe был запущен успешно и успешно завершился, то всплывает сообщение «Notepad has been closed».
Как исправить shellexecuteex ошибку
C++ : System vs ShellExecute - Differences?
Fix ShellExecuteEx Failed Error Windows 10
Solve Unable to create output Executable file in Delphi
DELPHI Урок 6 Связи между таблицами (ADOQuery)
JCLCompression and 7-Zip - Delphi #207
delphi 2016 install windows 10
Delphi idhttp extract data from website
How To Fix Unable To Execute File - ShellExecuteEx Failed; Code.2 -- Windows 10/8/7
Delphi and MySQL connection