@Matthias
XMLDoc.DefaultInterface.SetProperty('SelectionNamespaces','xmlns:na="http://my.netscape.com/rdf/simple/0.9/"');
verursacht bei mir eine stille
Exception (wie auch immer das an dieser Stelle funktioniert). D.h. man merkt erst, das in der Zeile eine
Exception auftritt, wenn man den Source in einen Try/Except Block kapselt.
Mit folgendem Source:
Delphi-Quellcode:
procedure TForm1.XMLDocondataavailable(Sender: TObject);
var
xmlTopics : IXMLDOMNodeList;
iCnt : Integer;
jCnt : Integer;
begin
If XMLDoc.DefaultInterface.parseerror.errorCode=0
then
begin
Try
XMLDoc.DefaultInterface.SetProperty('
SelectionNamespaces','
xmlns:na="http://my.netscape.com/rdf/simple/0.9/"');
xmlTopics := xmlDoc.DefaultInterface.documentElement.childNodes;
For iCnt := 0
to xmlTopics.length-1
do
begin
For jCnt:=0
to xmlTopics.item[iCnt].childNodes.length-1
do
ListBox1.Items.Add(xmlTopics.item[iCnt].childNodes.item[jCnt].Text+'
: '+
xmlTopics.item[iCnt].childNodes.item[jCnt].nodeName);
ListBox1.Items.Add('
----');
end;
XMLDoc.DefaultInterface.save(ApplicationPath+'
Test.xml');
Except
On E :
Exception do
ShowMEssage(E.
Message);
end;
end
else
begin
ListBox1.Items.Add('
Errorcode: '+IntToStr(XMLDoc.DefaultInterface.parseerror.errorCode));
ListBox1.Items.Add('
Line: '+IntToStr(XMLDoc.DefaultInterface.parseerror.Line));
ListBox1.Items.Add('
Char: '+IntToStr(XMLDoc.DefaultInterface.parseerror.LinePos));
ListBox1.Items.Add('
Descritpion: '+(XMLDoc.DefaultInterface.parseerror.Reason));
end;
end;
erhalte ich folgende Fehlermeldung:Versuch, einen schreibgeschützten Knoten zu ändern
Lustigerweise zweimal hintereinander