| |

VB & Windows APIPfad geöffneter PDF Datei bestimmen | |  | Autor: Joe10 | Datum: 17.05.19 15:26 |
| Hallo,
ich habe mehrere PDF Dateien im Adobe Acrobat Reader geöffnet.
Ich möchte die aktuell geöffnete PDF abspeichern und den Dateinamen ändern in dem ich das heutige Datum mit _YYYYMMDD im Dateinamen am Ende ergänze eben nicht über Speichern unter, sondern über einen Button (z.B. Schnellzugriffsleiste)in einer Excel Arbeitsmappe, die immer auf ist.
Die geöffnete PDF Datei finden kann ich mit folgendem Code. Dabei werden aber nur die Titelleisten der geöffneten Windows ausgelesen. Aber mir fehlt der Pfad zu dieser Datei, damit ich speichern könnte.
Hat einer eine Idee wie ich noch den Pfad der aktuell geöffneten PDF Datei bestimmen kann?
' API Funktionen
Private Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Boolean
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hWnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hWnd As Long) As Long
Public strDatei As String
Public Sub SucheFenster()
strDatei = "Keine PDF Datei geöffnet"
EnumWindows AddressOf FindWindow, 0&
MsgBox "Geöffnete Datei: " + strDatei, , "Hinweis"
End Sub
Private Function FindWindow(ByVal lngHwnd As Long, ByVal lngParam As Long) As Boolean
Dim strTemp As String, lngRetVal As Long, p As Long
lngRetVal = GetWindowTextLength(lngHwnd)
strTemp = Space(lngRetVal)
GetWindowText lngHwnd, strTemp, lngRetVal + 1
If lngRetVal <> 0 Then
p = InStr(UCase(strTemp), ".PDF")
If (p > 0) Then strDatei = Left(strTemp, p + 3): FindWindow = False: Exit Function
End If
FindWindow = True
End Function |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
sevISDN 1.0 
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere Infos
Tipp des Monats Oktober 2023 Dieter OtterPopUp-Menü wird nicht angezeigt :-(In diesem Tipp verraten wir Ihnen, wie Sie Probleme mit PopUp-Menüs umgehen können, wenn diese unter bestimmten Umständen einfach nicht angezeigt werden. Neu! sevPopUp 2.0 
Dynamische Kontextmenüs!
Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... Weitere Infos
|
|
|
Copyright ©2000-2023 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|