在 VBScript 中解析 XML 时访问一条信息时出现问题

Problem accessing a piece of information while parsing XML in VBScript

我的代码将遍历我的 XML 文件并提取 TO、FROM 和 SUBJECT,效果很好。我遇到的问题是我不知道如何从 ELEMENT 节点中提取 ID 属性。我需要它来识别保存电子邮件内容的文件名。我尝试过的任何东西似乎都不起作用。理想情况下,该 ID 将添加到 strQuery.

这是我正在使用的 XML 的示例:

这是我的代码:

Set xmlDoc = CreateObject( "Microsoft.XMLDOM" )
xmlDoc.Async = "False"
xmlDoc.Load("C:\Program Files (x86)\Mail Enable\Postoffices\ACS\MAILROOT\name\Inbox\_index.xml")

strQuery = "//ELEMENT/ (FROM | TO | SUBJECT)"
'strQuery = "ELEMENT"

Set colNodes = xmlDoc.SelectNodes(strQuery)
For Each objNode In colNodes
    WScript.Echo objNode.NodeName & ": " & objNode.Text
Next

获取父节点的ID属性:

WScript.Echo objNode.ParentNode.GetAttribute("ID")

或者,select <ELEMENT> 节点,获取其 ID 属性,然后 select 所需的子节点:

For Each objNode In xmlDoc.SelectNodes("//ELEMENT")
    WScript.Echo objNode.GetAttribute("ID")
    WScript.Echo objNode.SelectSingleNode("./FROM").Text
    WScript.Echo objNode.SelectSingleNode("./TO").Text
    ...
Next

作为旁注,Microsoft.XMLDOM 已弃用。请改用 Msxml2.DOMDocument.6.0