非常着急,请问下面的代码有什么问题。关于TXMLDocument,高分

ActiveLF 2002-05-10 10:00:52
XMLDocument:=TXMLDocument.create('1.xml'); //1.xml是个空文件或者有简单几行xml的指令
if xmlDocument=nil then begin iErrorCode:=1;exit;end;
XMLDocument.DOMVendor:=GetDOMVendor('MSXML');
//XMLDocument.ParseOptions:=[poValidateOnParse];
XMLDocument.XML.Clear;
XMLDocument.XML.Add('<?xml version="1.0" encoding="gb2312"?>');
XMLDocument.XML.Add('<?xml-stylesheet type="text/xsl" href="http://active/download/formformat.xsl"?>');
XMLDocument.Active:=true;
a:=XMLDocument.Encoding;

请问为什么XMLDocument.Encoding访问不了,运行到最后一句,delphi提示访问拒绝。
...全文
49 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hzb 2002-05-15
  • 打赏
  • 举报
回复
你试一下这样:
var
XMLDocument :IXMLDocument;
begin
....
XMLDocument :=TXMLDocument.Create(nil);
...
end;

不过这种方法只能用来独立的工程里,不能用在package里,在package里XMLDocument不能初始化DOMVendor列表,可能是delphi的bug。
ActiveLF 2002-05-14
  • 打赏
  • 举报
回复
有没有根元素都一样,一样是访问拒绝,我早就试过了。这个问题的关键在于我没把TXMLDocument放进一个form里面,而几乎所有的文档在介绍TXMLDocuemnt的时候(包括delphi本身的文档),都是放在一个form或者datamodule里面举例的。所以这个问题的本质就是:TXMLDocument如果不放在form上应该怎么用?高手在哪?高分相赠!!!
火鸟李国平 2002-05-14
  • 打赏
  • 举报
回复
帮你UP
hzb 2002-05-14
  • 打赏
  • 举报
回复
老大,你的XML文档没有顶层元素也能通过验证吗?

XMLDocument.XML.Add('<?xml-stylesheet type="text/xsl" href="http://active/download/formformat.xsl"?>');

这句话后面应该加上你的文档的顶层元素,例如
XMLDocument.XML.Add('<test/>');
zhengxionghua 2002-05-14
  • 打赏
  • 举报
回复
GZ

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧