美好的一天!我正在使用 Delphi 2009 和 MSXML2_TLB 库 (IXMLDOM)。我需要选择最后一个 session 节点:
Doc := CreateOleObject('Microsoft.XMLDOM') as IXMLDomDocument;
Doc.loadXML(XmlStr);
tmpNode:= Doc.selectSingleNode('//Meeting[last()]');
但是在上面代码的最后一行我得到了异常:
Project test.exe raised exception class EOleException with message: 'Unknown method
//Meeting[-->last()<--]'
有没有办法使用 xpath 选择最后一个节点,或者我真的必须编写代码来获取节点列表,然后选择最后一个元素吗?
还有版本信息:
Type Lib: C:\WINDOWS\system32\msxml6.dll (1)
LIBID: {F5078F18-C551-11D3-89B9-0000F81FE221}
HelpString: Microsoft XML, v6.0
提前谢谢您!沃伊泰克
最佳答案
这是因为您使用的 msxml 版本中未定义 last
函数,据我所知,该函数是在 MSXML v 4.0 中引入的
尝试
Doc := CreateOleObject('Msxml2.DOMDocument.6.0') as IXMLDomDocument;
关于delphi - IXMLDOM 无法识别 XPath last() 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9180242/