Einzelnen Beitrag anzeigen

Magellan

Registriert seit: 12. Dez 2006
Ort: Berlin
12 Beiträge
 
#1

schellexecute von CD-Laufwerk funktioniert nicht immer

  Alt 29. Jul 2009, 16:23
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:
  ...
          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);
...
Nach dem Einlegen der CD (als nicht Admin) unter Windows Vista
(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?
  Mit Zitat antworten Zitat