RSS
StartseiteKnowledge LibraryTop 10Impressum

7.9 Wie öffne ich eine Datei mit der ihr zugeordneten Anwendung?

VB4-VB6

Von: Thorsten Dörfler

Mithilfe der API Funktion ShellExecute lassen sich nicht nur Dateien mit ihrer zugeordneten Anwendung öffnen (z.B. *.txt mit notepad.exe), sondern auch Internet, eMail und News Adressen mit dem Standardbrowser oder Standard Mail- & Newshandler öffnen. Nachfolgend einige Beispiele:

' --- Deklaration ---
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
       (ByVal hwnd As Long, ByVal lpOperation As String, _
        ByVal lpFile As String, ByVal lpParameters As String, _
        ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Beispiel 1: Öffnen einer Datei mit Notepad

ShellExecute Me.hWnd, "Open", _
    App.Path & IIF(Right$(App.Path, 1) <> "\", "\", "") & "readme.txt", _
    vbNullString, App.Path, vbNormalFocus

Beispiel 2: Öffnen einer Internet Adresse

ShellExecute Me.hWnd, "Open", "http://www.vb-hellfire.de", _
             vbNullString, vbNullString, vbNormalFocus

Beispiel 3: Öffnen des Standard Mailhandler für eine neue eMail

ShellExecute Me.hWnd, "Open", "mailto:faq@vb-hellfire.de", _
             vbNullString, vbNullString, vbNormalFocus

Beispiel 4: Drucken eines Word-Dokuments

ShellExecute Me.hWnd, "Print", _
     App.Path & IIF(Right$(App.Path, 1) <> "\", "\", "") & "readme.doc", _
     vbNullString, vbNullString, vbNormalFocus

Beispiel 5: Starten einer Anwendung ohne ihren Pfad zu kennen

ShellExecute Me.hWnd, "Open", "excel", _
             vbNullString, vbNullString, vbNormalFocus

Möglich ist dies mit allen Anwendungen, die sich in der Registry unter folgendem Pfad eintragen:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths