
Ich habe kürzlich viele gelöschte Dateien mithilfe eines Tools namens Photorec wiederhergestellt -http://www.cgsecurity.org/wiki/PhotoRec
Ein echter Lebensretter. Das einzige Problem ist, dass die Namen der wiederhergestellten Dateien durch eine zufällige Zeichenfolge ersetzt werden, die dieses Programm generiert. (Dateinamen und Verzeichnisstrukturen gingen verloren, weil der Benutzer die Dateien gelöscht hat).
Also habe ich ein anderes Programm namens Photorecsorter ausgeführt, um wiederhergestellte Dateien nach ihren Dateierweiterungen in Ordner zu sortieren (pdf in einem Ordner, ppt in einem anderen usw.). http://builtbackwards.com/projects/photorec-sorter/
Ich habe über 100.000 Dateien wiederhergestellt, daher kann ich Benutzer nicht bitten, Dateien zu öffnen und sich den Inhalt anzusehen, um das Gesuchte zu finden. Ich weiß, dass mir Metadaten (Header) in Word-Dokumenten helfen können, zwei wichtige Informationselemente abzurufen, die dann zum Umbenennen dieser Datei verwendet werden können – Titel des Word-Dokuments und letztes Änderungsdatum. Wenn ich weiß, wie das für Word-Dokumente geht, kann ich es vielleicht auch selbst für andere Office-Erweiterungen und PDFs tun. Ich habe online nach einigen Tools gesucht, aber bevor ich etwas ausprobiere, wollte ich sehen, was Experten hier vorschlagen.
Danke
Antwort1
Eine VBS (VBScript)-Datei wie die folgende sollte zumindest für Word-Dokumente hilfreich sein:
Option Explicit
Dim objWord, objDoc
Set objWord = CreateObject("Word.Application")
objWord.Visible = False
objWord.DisplayAlerts = False
objWord.Documents.Open "C:\MyDoc.docx", False, True ' path, confirmconversions, readonly
Set objDoc = objWord.ActiveDocument
MsgBox "Title: """ & objDoc.BuiltInDocumentProperties("Title") & """"
MsgBox "Subject: """ & objDoc.BuiltInDocumentProperties("Subject") & """"
MsgBox "Author: """ & objDoc.BuiltInDocumentProperties("Author") & """"
MsgBox "Creation Date: """ & objDoc.BuiltInDocumentProperties("Creation Date") & """"
MsgBox "Last Save Time: """ & objDoc.BuiltInDocumentProperties("Last Save Time") & """"
objWord.Quit 0 ' wdDoNotSaveChanges
Set objWord = Nothing
Set objDoc = Nothing
Sie könnenDateisystemobjektalle DOC/DOCX-Dateien in einem Verzeichnis zu durchlaufen undumbenennensie basierend auf den zurückgegebenen Eigenschaftszeichenfolgen.
Für Excel- oder PowerPoint-Dateien verwenden SieExcel.AnwendungoderPowerPoint.Anwendungwenn Sie die Dokumentobjekte erstellen. Wenn Sie nicht weiterkommen, suchen Sie einfach im Internet nach relevanten VBScript-Tutorials zur Office-Automatisierung.
Es gibt offensichtlich keine allgemeine Methode zum Abrufen von Metadaten für alle Dateiformate, daher erfordern andere Formate wie PDF eine völlig andere Lösung. Ich empfehle Ihnen, im Internet zu suchen oder eine neue Frage zu stellen, wenn Sie dabei Hilfe benötigen.