4 Stimmen

IXMLDOM erkennt die XPath-Funktion last() nicht?

Guten Tag! Ich arbeite mit Delphi 2009 und MSXML2_TLB Bibliothek (IXMLDOM). Ich brauche, um die letzte Sitzung Knoten auswählen:

Doc := CreateOleObject('Microsoft.XMLDOM') as IXMLDomDocument;
Doc.loadXML(XmlStr);
tmpNode:= Doc.selectSingleNode('//Meeting[last()]');

Aber in der letzten Zeile des obigen Codes erhalte ich eine Ausnahme:

Project test.exe raised exception class EOleException with message: 'Unknown method
//Meeting[-->last()<--]'

Gibt es eine Möglichkeit, wie man den letzten Knoten mit xpath auswählen oder muss ich wirklich Code schreiben, um Knotenliste zu erhalten und dann das letzte Element auswählen?

Doch eine Version Info:

Type Lib: C:\WINDOWS\system32\msxml6.dll (1)
LIBID: {F5078F18-C551-11D3-89B9-0000F81FE221}
HelpString: Microsoft XML, v6.0

Vielen Dank im Voraus! Vojtech

5voto

RRUZ Punkte 132753

Das liegt daran, dass Sie eine Version von msxml verwenden, bei der die last Funktion ist nicht definiert, soweit ich weiß wurde diese Funktion in der Version 4.0 von MSXML eingeführt

Versuchen Sie

Doc := CreateOleObject('Msxml2.DOMDocument.6.0') as IXMLDomDocument;

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X