将c ++代码提供给给定的xml:

时间:2009-08-11 09:44:43

标签: registry get attributes msxml

我创建了一个类似注册表结构的xml ..我可以通过节点名称遍历节点...我无法通过属性值遍历一个nodepath ...我给下面的xml ..

 <Computer>
   <HIVE Name="HKEY_CUREENT_USER">
     <Elements>
       <element Name="(Default)" Type="REG_SZ" Data="(value not set)" /> 
       <element Name="SoftwareMicrosoftVisualStudio9.0ResourceEditorsPerformanceLoggingEnabled" Type="REG_SZ" Data="" /> 
     </Elements>
     <KEYS>
       <Key Name="Network">
         <Elements>
           <element Name="(Default)" Type="REG_SZ" Data="(value not set)" /> 
         </Elements>
       </Key>
     </KEYS>
   </HIVE>
 </Computer>

我希望路径访问“HKEY_CUREENT_USER \ Network”...给我一个c ++解决方案 代码(使用MSXML)

2 个答案:

答案 0 :(得分:1)

您需要访问的XPath表达式是/ Computer / HIVE / KEYS / Key [@ Name ='Network']

如果你把它放在DOM文档的selectnodes语句中,那么你将得到一个nodelist,你可以查询所需的信息

答案 1 :(得分:1)

加载到DOM并使用以下方法:

IXMLDOMDocument::selectSingleNode(
     L"/HIVE[@Name='HKEY_CUREENT_USER']/Key[@Name='Network']/...")