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;