Abfrage ob Word-Dokument passwortgeschützt ist (vb.net, VB2010Express)
Hallo,
gibt es in vb.net eine Möglichkeit zu prüfen, ob ein zu öffnendes Word-Dokument passwortgeschützt ist?
Neugierige Grüße,
Andreas
gibt es in vb.net eine Möglichkeit zu prüfen, ob ein zu öffnendes Word-Dokument passwortgeschützt ist?
Neugierige Grüße,
Andreas
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 246750
Url: https://administrator.de/forum/abfrage-ob-word-dokument-passwortgeschuetzt-ist-vb-net-vb2010express-246750.html
Ausgedruckt am: 04.04.2025 um 21:04 Uhr
3 Kommentare
Neuester Kommentar
Hallo Andreas,
wenn es um ein Passwort geht das zum Öffnen des Dokumentes benötigt wird, könntest du es über einen Umweg so machen: Das "Dummypassword" kannst du bei jedem Öffnen eines Dokumentes mit übergeben, nicht passwortgeschützte Dokumente ignorieren den Parameter.
Eine einfache Methode zu erkennen ob ein File geschützt ist oder nicht, ohne das File zu öffnen, ist mir persönlich nicht bekannt. Du müsstest das dann anhand der RAW-Struktur der Word-Dokumente analysieren. Beim OpenXML Format wäre das kein Problem, da ungeschützte Files die "ZIP-Signatur" besitzen, geschützte nicht. Um auch Office 97-2003 Dokumente zu berücksichtigen wäre dies vermutlich aufwändiger.
Grüße Uwe
wenn es um ein Passwort geht das zum Öffnen des Dokumentes benötigt wird, könntest du es über einen Umweg so machen: Das "Dummypassword" kannst du bei jedem Öffnen eines Dokumentes mit übergeben, nicht passwortgeschützte Dokumente ignorieren den Parameter.
Function isProtected(ByVal path As String) As Boolean
Dim objWord As New Word.Application
Try
Dim doc As Document = objWord.Documents.Open(path, , , , "dummypassword")
Catch ex As System.Runtime.InteropServices.COMException
If ex.ErrorCode = "-2146822880" Then
'Dokument ist Passwortgeschützt
Return True
End If
End Try
objWord.Quit()
Return False
End Function
Grüße Uwe