带有author属性的VBS文件列表

时间:2012-09-06 10:07:38

标签: vbscript

我有一个VBS列表脚本列出文件,有各种日期。所有的文件都是MS Word文档,但我想从文档属性中获取AUTHOR(我试过google搜索“author”属性而不是最好的搜索)。

我正在查找文件夹中所有文档的文本列表: - 文件名,访问日期,创建日期,修改日期和AUTHOR。我希望VBS会破解它,但如果有其他解决方案,我愿意接受建议。

On Error Resume Next

Const WINDOW_HANDLE = 0
Const BIF_EDITBOX = &H10
Const BIF_NONEWFOLDER = &H0200
Const BIF_RETURNONLYFSDIRS = &H1

Set objShell = CreateObject("Shell.Application")
Set wshShell = CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")

'**Browse For Folder To Be Processed
strPrompt = "Please select the folder to process."
intOptions = BIF_RETURNONLYFSDIRS + BIF_NONEWFOLDER + BIF_EDITBOX
strTargetPath = wshShell.SpecialFolders("MyDocuments")
strFolderPath = Browse4Folder(strPrompt, intOptions, strTargetPath)

Set objNewFile = objFSO.CreateTextFile(strFolderPath & "\filelist.txt", True)
Set objFolder = objFSO.GetFolder(strFolderPath)
Set objColFiles = objFolder.Files

For Each file In objColFiles
    objNewFile.WriteLine(file.Name)
    objNewFile.WriteLine(file.DateCreated)
    objNewFile.WriteLine(file.DateLastAccessed)
    objNewFile.WriteLine(file.DateLastModified)
Next
objNewFile.Close

'**Browse4Folder Function
Function Browse4Folder(strPrompt, intOptions, strRoot)
    Dim objFolder, objFolderItem

    On Error Resume Next

    Set objFolder = objShell.BrowseForFolder(0, strPrompt, intOptions, strRoot)
    If (objFolder Is Nothing) Then
        Wscript.Quit
    End If
    Set objFolderItem = objFolder.Self
    Browse4Folder = objFolderItem.Path
    Set objFolderItem = Nothing
    Set objFolder = Nothing
End Function

1 个答案:

答案 0 :(得分:0)

您必须浏览Word应用程序对象的属性。

查看here例如如何做到这一点。

应该是这样的:

Set oWord = CreateObject("Word.Application")
Set oDoc = oWord.Documents.Open("myWordDocument.doc")
Set sAuthor = oDoc.BuiltInDocumentProperties("Author")