Schau doch im Debugger mal nach, was der sich wirklich aus deiner Pfadangabe
fn zieht. Encoding, und was da alles schief laufen kann.
Nimmt man den
XML-Inhalt von dir und steckt ihn rein funktioniert alles wie es soll:
Delphi-Quellcode:
program Project1;
uses System.Win.ComObj,
Xml.XmlIntf,
Xml.XmlDoc;
const
xml =
'
<?xml version="1.0" encoding="UTF-8"?>'+
'
<EMH>'+
'
<smlCommand>'+
'
<key>0.0.0</key>'+
'
<value>0100000000FF</value>'+
'
<typ>00</typ>'+
'
</smlCommand>'+
'
<smlCommand>'+
'
<key>0.0.1</key>'+
'
<value>0100000001FF</value>'+
'
<typ>00</typ>'+
'
</smlCommand>'+
'
</EMH>';
var
xmlDoc: IXMLDocument;
emhNode: IXMLNode;
begin
CoInitializeEx(0, 0
{COINIT_MULTITHREADED});
xmlDoc := LoadXMLData(
xml);
// geht!
// geht auch:
//xmlDoc := TXMLDocument.Create(nil);
//xmlDoc.LoadFromXML(xml);
emhNode := xmlDoc.DocumentElement;
Write('
<EMH> hat ', emhNode.ChildNodes.Count, '
Einträge');
readln;
end.