Спасибо за подсказки.
Нашел в интернете небольшой код который мне подходит. Так как мои познания в программировании пока не столь значимы, я прошу вас мне помочь немного подредактировать ниже следующий код.. после запуска второго приложения - первое ждет когда оно завершится и при этом зависает когда с ним взаимодействуешь.. как этого избежать?
Код:
function StartFileAndWait(CommandString: string): boolean; //âõîä - êîìàíäà çàïóñêà
var
si: TStartupInfo;
pi: TProcessInformation;
begin
Result := False;
ZeroMemory( @si, sizeof( si ) );
si.cb := SizeOf( si );
if not CreateProcess( nil, // No module name (use command line).
PChar( CommandString ), // Command line.
nil, // Process handle not inheritable.
nil, // Thread handle not inheritable.
False, // Set handle inheritance to FALSE.
0, // No creation flags.
nil, // Use parent's environment block.
nil, // Use parent's starting directory.
si, // Pointer to STARTUPINFO structure.
pi ) // Pointer to PROCESS_INFORMATION structure.
then
begin
result:=false;
Exit;
end;
WaitForSingleObject( pi.hProcess, INFINITE );
CloseHandle( pi.hThread );
CloseHandle( pi.hProcess );
Application.BringToFront;
Result := True;
end;
procedure TForm1.btn1Click(Sender: TObject);
begin
if StartFileAndWait('cmd.exe') then ShowMessage('Process terminated');
end;
Заранее спасибо!