Huhu ich mal wieder!
Ich nutze die ShellApiEx.pas wie folgt:
Delphi-Quellcode:
if ShellExecuteAndWaitW(Application.Handle, '
open', '
MSDE\Setup_MSDE2K.EXE',
nil,
nil, sw_shownormal, TRUE) = 42
then
begin
//Gestartete Anwendung wurde beendet
showmessage('
MSDE Setup läuft nicht mehr');
end;
Ich versuche auf das Beenden des
MSDE 2.0 Setups reagieren. Verschiedene Tests mit NOTEPAD ergaben, dass die Funktion den Wert 42 zurückgiebt wenn das aufgerufene Programm geschlossen wird. Alles wunderbar!
Jetzt hab ich halt das NOTEPAD gegen ein Setup getauscht. Der Aufruf klappt prima, auch auf das vorzeitige Beenden des Setups reagiert mein Programm. Doch leider kann das Setup nicht vollständig ausgeführt werden - bei ca. 12 Sekunden Rest-installationszeit reagiert meine Hauptanwendung nicht mehr....
Wenn ich das
MSDE Setup ohne "fremde" Hilfe aufrufe funktionierts prima. Auch mit dem "normalen" Shellexecute lässt sich das
MSDE Setup ganz durchführen - nur nicht mit dem ShellExecuteAndWaitW
Woran könnte das liegen?