![]() |
schellexecute von CD-Laufwerk funktioniert nicht immer
Hallo,
eigentlich ist es eine einfache Aufgabe, eine Datei mit dem zugehörigen Programm zu öffnen. Dafür gibts seit vielen Jahren shellexecute oder schellexecuteEx. Das Problem: Ein autostart Programm soll beim Einlegen einer CD eine HTML-Seite im Browser öffnen. Das sollte mit schellexecute bzw. schellexecuteEx doch problemlos gehen. Geht es aber nicht.
Delphi-Quellcode:
Nach dem Einlegen der CD (als nicht Admin) unter Windows Vista
...
with seInfo do begin cbSize := SizeOf(TShellExecuteInfo); fMask := SEE_MASK_NOCLOSEPROCESS; Wnd := 0; lpVerb := 'open'; lpFile := pchar(spath+sFile); lpParameters := NIL; lpDirectory := pchar(sPath); nShow := SW_SHOWNORMAL; end; (*seInfo*) ShellExecuteEx(@seInfo); ... (IE7 + IE8, jeweils mit Standard-Einstellungen) öffnet sich der "Automatische Wiedergabe-Dialog". Führt man die Start.exe aus, poppt für den Bruchteil einer Sekunde ein leeres Browser-Fenster auf, verschwinder darauf hin aber wieder in den Untiefen des Systems. Ist hingegen der IE schon gestartet, dann öffnet sich nach dem Laden der CD ein neuer Tab mit dem gewünschten Inhalt. Das Problem tritt nicht auf - mit z.B. Firefox als Standardbrowser - Wenn man als Admin angemeldet ist - Wenn das autostart Programm von einer Festplatte gestartet wird - unter XP Hat jemand eine Idee? |
Re: schellexecute von CD-Laufwerk funktioniert nicht immer
Hallo und Willkommen in der DP :dp:,
ich würde zunächst Folgendes versuchen:
Delphi-Quellcode:
if not ShellExecuteEx(@seInfo) then
ShowMessage(SysErrorMessage(GetLastError)); |
Re: shellexecute von CD-Laufwerk funktioniert nicht immer
Danke für die Antwort.
Hab ich probiert - keine Fehlermeldung. Auch shellexecute gibt keinen Fehler zurück (>32). Der IE wird ja auch gestartet, aber er lädt die Datei nicht. Es ist nur zu sehen "Verbindung wird hergestellt..." |
Re: schellexecute von CD-Laufwerk funktioniert nicht immer
Hast Du dieses Verhalten auch, wenn Du im Explorer zu der *.html navigierst und einen Doppelklick ausführst?
|
Re: schellexecute von CD-Laufwerk funktioniert nicht immer
Die HTML-Seite lässt sich im IE problemlos öffnen.
Es geht ja alles, wenn der IE bereits läuft oder das Programm von einer Festplatte oder von CD als Admin gestartet wird. |
Re: schellexecute von CD-Laufwerk funktioniert nicht immer
Moment, ich meinte jetzt nicht IE öffnen und zur Seite auf der CD wechseln. Ich meinte tatsächlich einen Doppelklick auf die Datei im Windows-Explorer.
|
Re: schellexecute von CD-Laufwerk funktioniert nicht immer
Ein Doppelklick auf die Datei funktioniert (öffnet den IE).
|
Re: schellexecute von CD-Laufwerk funktioniert nicht immer
Das ist in der Tat merkwürdig. Ein "normales" ShellExecute geht auch nicht?
|
Re: schellexecute von CD-Laufwerk funktioniert nicht immer
Leider nein - das gleiche Verhalten...
Mit shellexecute hatte die autostart Programme für CDs bislang auch umgesetzt. |
Re: schellexecute von CD-Laufwerk funktioniert nicht immer
Dann gehen mir im Moment leider die Ideen aus, sry :(
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz