【问题标题】:VBA code to find all hidden folders in directory with WQL and store it in xml fileVBA代码使用WQL查找目录中的所有隐藏文件夹并将其存储在xml文件中
【发布时间】:2017-12-11 15:05:42
【问题描述】:

我现在设法获取所有隐藏文件夹,唯一的问题是将有关它的所有信息存储到 xml 文件中。 谁能帮我解决这个问题?

Dim xdoc
Function CreateFolders(objFile)
  Dim elem
  Dim attr
  set elem = xdoc.createElement("Folders")
  set attr = xdoc.createAttribute("Description")
  attr.value = objFile.Description
  elem.setAttributeNode attr
  set CreateFolders = elem
End Function

Dim FilePath

Dim objFile
Dim root
Dim elem, elem1


Set xdoc = CreateObject("MSXML2.DOMDocument.6.0")
xdoc.appendChild xdoc.createProcessingInstruction        ("xml", "version=""1.0""     encoding=""utf-8""")
FilePath = "C:\Users\User\Downloads\M.xml"

set root = xdoc.createElement("Folders")
xdoc.appendChild root


strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFiles = objWMIService.ExecQuery _
    ("Select * from Win32_Directory Hidden = True")
 For Each objFile in colFiles
   Wscript.Echo objFile.Name
Next

提前感谢您的宝贵时间。

【问题讨论】:

    标签: vba wmi wmi-query wql


    【解决方案1】:

    这是我找到的解决方案。也许它会在未来帮助某人

    Dim xdoc
    Function CreateFolders(objFile)
      Dim elem
      Dim attr
      set elem = xdoc.createElement("Folder")
      set attr = xdoc.createAttribute("Description")
      attr.value = objFile.Description
      elem.setAttributeNode attr
      set CreateFolders = elem
    End Function
    
    Dim FilePath
    Dim objFile
    Dim root
    Dim elem, elem1
    
    
    Set xdoc = CreateObject("MSXML2.DOMDocument.6.0")
    xdoc.appendChild xdoc.createProcessingInstruction("xml", "version=""1.0""       encoding=""utf-8""")
    FilePath = "C:\Users\User\Downloads\My.xml"
    
    set root = xdoc.createElement("Folders")
    xdoc.appendChild root
    
    Wscript.Echo "Stage 1 Done"
    
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:" _
        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
    Set colFiles = objWMIService.ExecQuery _
        ("Select * from Win32_Directory Where Hidden = True")
    Wscript.Echo "Stage 2 Done"
    
    For Each objFile in colFiles
    set elem = CreateFolders(objFile)
    root.appendChild elem
    
    
    Next
    Wscript.Echo "Stage 3 Done"
    xdoc.Save FilePath
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-09
      • 1970-01-01
      • 2021-01-23
      相关资源
      最近更新 更多