Einzelnen Beitrag anzeigen

Doktor Ruff

Registriert seit: 10. Okt 2006
8 Beiträge
 
#1

Probleme mit WaitForSingleObject

  Alt 21. Dez 2006, 16:32
Ich rufe mit Hilfe von ShellExecuteEx den Standardbrowser auf und warte danach auf dessen Beendigung. Das ShellExecute funktioniert auch soweit nur leider liefert mir die Funktion WaitForSingleObject einen komischen Wert (8-stellige Zahl) und dieser ändert sich auch nicht wenn ich den Browser wieder schließe, sprich den Prozess beende. Irgendwo liegt in meinem Code also der Hund begraben oder ich hab da was falsch verstanden.

Delphi-Quellcode:
var
  SHELLINFO : TShellExecuteInfo;
begin
  with SHELLINFO do
  begin
    cbSize := SizeOf(SHELLINFO);
    fMask := SEE_MASK_NOCLOSEPROCESS;
    Wnd := 0;
    lpVerb := PChar('open');
    lpFile := PChar(startHTML);
    lpParameters := nil;
    lpDirectory := nil;
    nShow := SW_SHOWNORMAL;
// hInstApp := 0;
  end;
  try
    ShellExecuteEx(@SHELLINFO);
    repeat
      Application.ProcessMessages;
// showMessage(IntToStr(WaitForSingleObject(SHELLINFO.hProcess, 1000));
    until (WaitForSingleObject(SHELLINFO.hProcess, 1000) = WAIT_TIMEOUT);
    showMessage('Blob');
  except
    on E:Exception do showmessage(e.Message);
  end;
end;
  Mit Zitat antworten Zitat