Ich hätte mit ShellExecute bei
MSDN mal genauer ansehen sollen. Das mit dem Parameter hab ich doch glatt nicht gesehen. Setzt aber natürlich vorraus, dass die zu startende Anwendung Parameter akzeptiert, doch ist das ja meist der Fall, so zum Glück auch in meinem. Hier mal mein Ergebnis:
Code:
Public Sub OpenPDFinArchitect(Filepath As String, Filename As String)
Dim FullName As String
Const ProgName As String = "C:\Program Files (x86)\PDF Architect\PDF Architect.exe"
FullName = Filepath
If Right(FullName, 1) <> "\" Then FullName = FullName & "\"
FullName = FullName & Filename
If LCase(Right(FullName, 4)) <> ".pdf" Then FullName = FullName & ".pdf"
ShellExecute 0, "Open", ProgName, Chr(34) & FullName & Chr(34), "", 1
End Sub