pdf Datei Laden

spirit

Erfahrenes Mitglied
Moin

Ich stehe hier gerade etwas auf dem Schlauch. Ich möchte gerne per cmd_click eine PDF-Datei im Acrobatreader laden. Bei dem Shell Befehl bekomme ich immer einen Laufzeitfehler. Hat da jemand eine Idee?
 
Hallo spirit,

mich (und bestimmt auch Hilfesuchende)würde es interessieren, wie du es gelöst hast. Hast du die ShellExecute-Api benutzt oder hast du einen anderen Weg gewählt?
Sollte zweiteres zutreffen, dann bin ich wirklich gespannt, welchen Weg du genommen hast.

Ciao:
Da' Hacker
 
Hallo

Für alle die es interessiert die Lösung
Code:
Private Const MAX_PATH As Long = 260&

Private Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" ( _
    ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal cchBuffer As Long) As Long

Private 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

Private Sub prooflsch_Click()
    Dim path As String
    Dim strLfile As String
    Dim strLpath As String
    Dim strKpath As String
    Dim strCpath As String
    strLpath = App.path & "\data\"
    strCpath = App.path & "\data"
    strLfile = Text1(0).Text & ".pdf"
    strKpath = strLpath & strLfile
    path = Space(MAX_PATH)
    Call GetShortPathName(strLpath & IIf(Right(strCpath, 1) = "\", "", "\") & _
        strLfile, path, MAX_PATH)
    If FileExist(strKpath) Then
        Call ShellExecute(Me.hwnd, "Open", strKpath, "", App.path, 1)
     End If
End Sub

Public Function FileExist(ByVal SPath As String) As Boolean
    FileExist = (FileSystem.Dir(SPath) <> "")
End Function

Sicherlich nicht die perfekte Lösung aber es funktioniert ;-)
 
Zurück