急,调用xmltosting函数时出错:Invalid pointer operation 本帖最后由 r9000_com 于 2011-05-27 08:55:33 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 调试啊,肯定是那个对象为nil function xmltohtml(xmlsource:string):string;varRoot,n1,n2,data:IXMLNode;xdoc:TXMLDocument;beginxdoc := TXMLDocument.Create(nil);xdoc.LoadFromXML(xmlsource); xdoc.Active := true; Root := xdoc.DocumentElement; n1:=Root.ChildNodes[0]; n2:=n1.ChildNodes.First; showmessage(n2.text);end;---------上面这段代码提示:Invalid pointer operation如果把它放到,onclick事件中,却是一点问题都没有,何解啊?procedure TForm1.Button1Click(Sender: TObject);varRoot,n1,n2,data:IXMLNode;xdoc:TXMLDocument;beginxdoc := TXMLDocument.Create(nil);xdoc.LoadFromXML(xmlsource); xdoc.Active := true; Root := xdoc.DocumentElement; n1:=Root.ChildNodes[0]; n2:=n1.ChildNodes.First; showmessage(n2.text);end;-------这一段就一点问题都没有 试了,用loadfromfile('c:\resl.xml'),一样的出错就是不能放函数中去,奇怪 function xmltohtml(xmlsource:string):string;varRoot,n1,n2,data:IXMLNode;xdoc:TXMLDocument; -----------> IXMLDocument;beginxdoc := TXMLDocument.Create(nil);xdoc.LoadFromXML(xmlsource); xdoc.Active := true; Root := xdoc.DocumentElement; n1:=Root.ChildNodes[0]; n2:=n1.ChildNodes.First; showmessage(n2.text);end;要引用这4个单元: xmldom, XMLIntf, msxmldom, XMLDoc 搞定了,谢谢大家热心帮忙.function xmltohtml(xmlsource:string):string;varRoot,n1,n2,data:IXMLNode;xdoc:IXMLDocument;beginxdoc := NewXMLDocument(nil);CoInitialize(nil);xdoc.LoadFromXML(xmlsource);Root := xdoc.DocumentElement;n1:=Root.ChildNodes[0];n2:=n1.ChildNodes.First;end; xdoc:=nil; CoUninitialize(); delphi调用C写的dll,无法调用多数组参数的函数 clientdateset 如何更新 感谢在keiy()的帮助下把问题解决,请keiy()进来领分 关于核算的问题 请教关于ADO和BDE 请问一个自定义消息的问题 请各位高手指点,很急!!!!!!!!!!!!! 如何安装TGIFIMAGE控件? 菜鸟求助:请高手讲解一下delphi/run下第三项(param???)的具体用法 简单的sql语句 菜鸟请教个问题 相同xml处理代码,放函数出错,放onclick就没问题,求解。。
function xmltohtml(xmlsource:string):string;
var
Root,n1,n2,data:IXMLNode;
xdoc:TXMLDocument;
begin
xdoc := TXMLDocument.Create(nil);
xdoc.LoadFromXML(xmlsource);
xdoc.Active := true;
Root := xdoc.DocumentElement;
n1:=Root.ChildNodes[0];
n2:=n1.ChildNodes.First;
showmessage(n2.text);
end;---------上面这段代码提示:Invalid pointer operation
如果把它放到,onclick事件中,却是一点问题都没有,何解啊?procedure TForm1.Button1Click(Sender: TObject);
var
Root,n1,n2,data:IXMLNode;
xdoc:TXMLDocument;
begin
xdoc := TXMLDocument.Create(nil);
xdoc.LoadFromXML(xmlsource);
xdoc.Active := true;
Root := xdoc.DocumentElement;
n1:=Root.ChildNodes[0];
n2:=n1.ChildNodes.First;
showmessage(n2.text);
end;
-------这一段就一点问题都没有
试了,用loadfromfile('c:\resl.xml'),一样的出错就是不能放函数中去,奇怪
var
Root,n1,n2,data:IXMLNode;
xdoc:TXMLDocument; -----------> IXMLDocument;
begin
xdoc := TXMLDocument.Create(nil);
xdoc.LoadFromXML(xmlsource);
xdoc.Active := true;
Root := xdoc.DocumentElement;
n1:=Root.ChildNodes[0];
n2:=n1.ChildNodes.First;
showmessage(n2.text);
end;要引用这4个单元: xmldom, XMLIntf, msxmldom, XMLDoc
function xmltohtml(xmlsource:string):string;
var
Root,n1,n2,data:IXMLNode;
xdoc:IXMLDocument;
begin
xdoc := NewXMLDocument(nil);
CoInitialize(nil);
xdoc.LoadFromXML(xmlsource);
Root := xdoc.DocumentElement;
n1:=Root.ChildNodes[0];
n2:=n1.ChildNodes.First;
end;
xdoc:=nil;
CoUninitialize();