Ich weiß nicht ob der Shell Befehl in Delphi auch Shell heißt, ansonsten Windows API
Der ShellExecute(Ex) kann all das, was man in den Eigenschaften zu den Datei-Endungen findet. Jeder Doppelklick oder rechte Maustaste führt in der Regel einen ShellExecute aus. Insofern kann man ihm auch die ganzen Attribute mitgeben wie "open" und "print" etc. Soll bedeuten, auch drucken kann er.
> Übrigens ruft es erst FindExecutable auf und mit dem
> ermittelten Pfad dann ShellExecute.
Eigentlich überflüssig, da der ShellExecute diese Funktion sowieso ausführt. Abgesehen davon liefert FindExecutable nicht immer zuverlässige Ergebnisse und ist nur für Dokumente geeignet. Insbesondere ist dies der Fall, wenn mehrere Versionen eines Programmes auf einen Rechner installiert sind. Wenn man den richtigen Pfad einer zugehörigen Anwendung herausfinden will, sollte man sich einer etwas moderneren Brücke bedienen und die entsprechenden Werte direkt aus der Registry lesen.
Das Registy-Dreieck besteht aus
Endung - Klasse - CLSID
damit kann man alles herausfinden.
z.B.
Endung *.doc
Nachsehen unter HCCR\.doc
(HCCR = HKEY_CLASSES_ROOT)
Registriert mit folgenden Klassen (mein Rechner)
Word.Document.6
Word.Document.8
WordDocument
WordPad.Document.1
Nachsehen unter
HCCR\Word.Document.6
oder allgemein unter
HCCR\Word.Document\CurVer => liefert z.B. Word.Document.8, hier aber egal
an dieser Stelle kann ich herausfinden, welches die aktuelle Version ist.
Weiter nachsehen unter
HCCR\Word.Document.8\CLSID liefert: {00020906-0000-0000-C000-000000000046}
Weiter nachsehen unter
HCCR\CLSID\{00020906-0000-0000-C000-000000000046}
liefert z.B. : LocalServer32 --> Pfad zur Anwendung
Wenn wir das Spielchen jetzt mit .htm durchspielen, dann finden wir auch gleichzeitig alles, was zu dieser Endung dazugehört, wie z.B. den Standardbrowser etc.
Mit freundlichen Grüßen
Martin Bembenek
mailto:mbe-***@public.gmane.org
*************************************************************************
http://www.logicsystems.de
http://www.bocash.de
logic systems GmbH
Ehrenfeldstr. 14
D-44789 Bochum
Germany
Besuchen Sie uns auf eine der folgenden Messen:
LEARNTEC 2003 in Karlsruhe
*************************************************************************
> -----Original Message-----
> From: Hartmut Rieg [mailto:hr-fQL2t8H8y/***@public.gmane.org]
> Sent: Sunday, October 20, 2002 10:47 PM
> To: SCHUL-NETZ-0lvw86wZMd/***@public.gmane.org
> Subject: Re: [SN] Pfad zum Standardbrowser
>
>
> At 15:14 20.10.2002 +0200, you wrote:
> >FindExecutable ist eine Win32 API Funktion und hat mit VB nur soweit
> >etwas
> >zu tun, dass VB (genauso wie Delphi und viele andere) sie
> einbinden kann.
>
> Natürlich. Das Beispiel in VB war lediglich das erste, das
> ich bei Google
> gefunden habe. Übrigens ruft es erst FindExecutable auf und mit dem
> ermittelten Pfad dann ShellExecute. Das ist dann nützlich,
> wenn man nicht
> nur eine Datei öffnen will, sondern den Pfad und den
> Programmnamen explizit
> wissen will. So war ja auch die ursprüngliche Frage gestellt.
>
> >Wenn schon Windiows API, dann aber
> >
> >ShellExecute oder ShellExecuteEx
>
> wobei ich bisher nicht gewusst habe, dass ShellExecute auch
> eine Datei oder
> einen Ordner öffnen kann.
> Zu Shell habe ich übrigens in der API-Hilfe von Delphi 5
> nichts gefunden.
>
> Schöne Grüße
> Hartmut Rieg
>
>
http://www.byterun.de
ICQ 124193345
-------------------------------------------------------------------------
Schul Netzwerk Admin Liste (SCHUL-NETZ-0lvw86wZMd/***@public.gmane.org)
Info, Archiv & FAQ und Abmelden unter: http://www.schul-netz.de
-------------------------------------------------------------------------
Schul Netzwerk Admin Liste (SCHUL-NETZ-0lvw86wZMd/***@public.gmane.org)
Info, Archiv & FAQ und Abmelden unter: http://www.schul-netz.de