Powerpoint - Wie kann ich herausfinden, ob eine Präsentation programmatisch ein Passwort hat?

StackOverflow https://stackoverflow.com/questions/215946

  •  03-07-2019
  •  | 
  •  

Frage

Ich schreibe eine Anwendung, die Powerpoint-Präsentationen verarbeitet und ich bin auf der Suche nach Möglichkeiten zu erkennen, ob oder nicht eine Powerpoint-Präsentation ein Kennwort hat, wenn es dann die Verarbeitung stoppt.

War es hilfreich?

Lösung

Es scheint mir, dass es keine Möglichkeit, zu überprüfen, ob die Präsentation kennwortgeschützt ist. Sie haben das Dokument öffnen ersten Eigenschaften zugänglich zu machen. Sie haben das Passwort angeben, wenn Sie das Dokument öffnen.

Es gibt eine Password-Eigenschaft überprüfen.

Ich habe eine Abhilfe auf Expertenbörse gefunden :

  

Das Problem ist folgendes: Visuelle   Basic ist ein Single-Threaded   Anwendung , das bedeutet, dass Sie heucheln   setzen ein bestimmtes Verfahren in die Warteschleife und   mit einem anderen gehen (in den gleichen   Anwendung). Wenn Powerpoint hat ein   „Offener“ -Passwort-Set, das   Create Verfahren in Ihrem   Anwendung wird gehalten, bis setzen   Powerpoint gibt sie, das ist, wenn   der Benutzer in einem Passwort. Es gibt   kein Weg vorbei, die ich kenne aus,   Sie können jedoch eine Abhilfe machen:

     

2-Anwendungen , 1 Anwendung   die Anwendung, die Sie bereits haben, die   zweite ist ein „Powerpoint unlocker“.   Sie führen das zweite Programm kurz vor   Sie öffnen das geschützte Powerpoint   Präsentation in Anwendung 1. Sie können   man das mit dem Shell-Befehl. Das   „Powerpoint-unlocker“ kann als   vorgeschoben, wie Sie es haben wollen, können Sie   beispielsweise Befehlszeile bereitzustellen   Parameter zu spezifizieren, die   Präsentation müssen entriegelt werden   was Ihr Passwort ein. Dann nutzen Sie die    Find api das Fenster zu erhalten   Griff der gesperrten Präsentation .   Sobald Sie, dass Sie die   Sendmessage api das Passwort einzugeben.   Danach wird die „Powerpoint-unlocker“   leert und die erste Anwendung kann   wieder mit seiner Ausfürung.

     

Ich hoffe, das hilft!

     

Osmodean

Andere Tipps

Betrachten Blick auf diese - http : //blogs.msdn.com/b/openspecification/archive/2009/07/17/overview-of-protected-office-open-xml-documents.aspx

Für eine PPTX-Dokument können Sie die ersten 8 Bytes untersuchen im Header suchen (sollte [d0cf 11e0 a1b1 1ae1] für eine verschlüsselte Datei), und wissen, ob es sich um eine verschlüsselte PPTX ist oder nicht.

Doch für Dateien mit Office 2003 (Standarderweiterung .ppt) erstellt, ist der Header die gleiche (MS-CFB-Header). Also, wenn jemand ein Office 2003-Dokument erstellt und dann benennt sie in einen PPTX, Ihr Code wird betrachtet es als ein verschlüsseltes Dokument (während, wäre es nicht unbedingt sein).

Wenn Sie mit Dokumenten arbeiten bereits in Powerpoint geöffnet, können Sie die SaveCopyAs Funktion verwenden, um das Dokument zunächst auf der Festplatte im PPTX-Format zu speichern (verwenden Sie die Standardoption im zweiten Parameter), und dann den Header untersuchen, um zu prüfen, ob es ist eine verschlüsselte Datei.

Betrachten Blick auf diese - https://msdn.microsoft.com/ko -kr / library / dd948895 (v = office.12) aspx

Für eine PPT (Office 2003) Dokument, können Sie die ganze Zahl ohne Vorzeichen untersuchen (0xF3D1C4DF Bits) zu identifizieren, ob die Datei verschlüsselt ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top