AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi schellexecute von CD-Laufwerk funktioniert nicht immer
Thema durchsuchen
Ansicht
Themen-Optionen

schellexecute von CD-Laufwerk funktioniert nicht immer

Ein Thema von Magellan · begonnen am 29. Jul 2009 · letzter Beitrag vom 5. Aug 2009
Antwort Antwort
Seite 1 von 3  1 23      
Magellan

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

schellexecute von CD-Laufwerk funktioniert nicht immer

  Alt 29. Jul 2009, 17: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
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.622 Beiträge
 
Delphi 12 Athens
 
#2

Re: schellexecute von CD-Laufwerk funktioniert nicht immer

  Alt 29. Jul 2009, 17:27
Hallo und Willkommen in der DP ,

ich würde zunächst Folgendes versuchen:
Delphi-Quellcode:
if not ShellExecuteEx(@seInfo) then
  ShowMessage(SysErrorMessage(GetLastError));
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Magellan

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

Re: shellexecute von CD-Laufwerk funktioniert nicht immer

  Alt 29. Jul 2009, 17:43
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..."
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.622 Beiträge
 
Delphi 12 Athens
 
#4

Re: schellexecute von CD-Laufwerk funktioniert nicht immer

  Alt 29. Jul 2009, 17:46
Hast Du dieses Verhalten auch, wenn Du im Explorer zu der *.html navigierst und einen Doppelklick ausführst?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Magellan

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

Re: schellexecute von CD-Laufwerk funktioniert nicht immer

  Alt 29. Jul 2009, 17:55
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.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.622 Beiträge
 
Delphi 12 Athens
 
#6

Re: schellexecute von CD-Laufwerk funktioniert nicht immer

  Alt 29. Jul 2009, 18:00
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.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Magellan

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

Re: schellexecute von CD-Laufwerk funktioniert nicht immer

  Alt 29. Jul 2009, 18:05
Ein Doppelklick auf die Datei funktioniert (öffnet den IE).
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.622 Beiträge
 
Delphi 12 Athens
 
#8

Re: schellexecute von CD-Laufwerk funktioniert nicht immer

  Alt 29. Jul 2009, 18:08
Das ist in der Tat merkwürdig. Ein "normales" ShellExecute geht auch nicht?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Magellan

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

Re: schellexecute von CD-Laufwerk funktioniert nicht immer

  Alt 29. Jul 2009, 18:13
Leider nein - das gleiche Verhalten...
Mit shellexecute hatte die autostart Programme für CDs bislang auch umgesetzt.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.622 Beiträge
 
Delphi 12 Athens
 
#10

Re: schellexecute von CD-Laufwerk funktioniert nicht immer

  Alt 29. Jul 2009, 18:43
Dann gehen mir im Moment leider die Ideen aus, sry
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz