Hi All. I have a bit of code that does an execute and waits for the app. to close. What I want to do is execute a game and know when its finished, BUT when I use my code, it starts to execute the app, but then it stops and returns an error code of zero which means its finished...BUT it never started. This is teh code I use. anyone got anything better?
Jeremy function TfrmMain.WinExecAndWait32(Path: PChar; Visibility: Word): integer; var Msg: TMsg; lpExitCode: cardinal; StartupInfo: TStartupInfo; ProcessInfo: TProcessInformation; begin FillChar(StartupInfo, SizeOf(TStartupInfo), 0); with StartupInfo do begin cb := SizeOf(TStartupInfo); dwFlags := STARTF_USESHOWWINDOW or STARTF_FORCEONFEEDBACK; wShowWindow := visibility; {you could pass sw_show or sw_hide as parameter} end; if CreateProcess(nil, path, nil, nil, False, NORMAL_PRIORITY_CLASS, nil, nil, StartupInfo, ProcessInfo) then begin repeat while PeekMessage(Msg, 0, 0, 0, pm_Remove) do begin if Msg.Message = wm_Quit then Halt(Msg.WParam); TranslateMessage(Msg); DispatchMessage(Msg); end; GetExitCodeProcess(ProcessInfo.hProcess,lpExitCode); until lpExitCode <> Still_Active; with ProcessInfo do {not sure this is necessary but seen in in some code elsewhere} begin CloseHandle(hThread); CloseHandle(hProcess); end; Result := 0; {success} end else Result := GetLastError; end; --------------------------------------------------------------------------- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz To UnSub, send email to: [EMAIL PROTECTED] with body of "unsubscribe delphi" Web Archive at: http://www.mail-archive.com/delphi%40delphi.org.nz/