我想在一个继承与TObject的类中动态创建TXMLDocument,但是了总是出错,请大家指点,代码如下:
var
Axml: TXMLDocument;
xn: IXMLNode;
begin
Axml := TXMLDocument.Create(nil);
try
Axml.LoadFromFile('c:\123.xml');
Axml.Active := true;
xn := Axml.DocumentElement; // 这一句总是出错,过不了,Access violation错误。
// 其他代码.....
finally
Axml := nil; // 这里如果用 Axml.Free 也是会出错
end;
我知道在Create创建时指定一个TComponent子类是可以的,比如在窗体中的话可以使用self,但是这里面没有办法这样,请高手指点一下,该怎么做?
var
Axml: TXMLDocument;
xn: IXMLNode;
begin
Axml := TXMLDocument.Create(nil);
try
Axml.LoadFromFile('c:\123.xml');
Axml.Active := true;
xn := Axml.DocumentElement; // 这一句总是出错,过不了,Access violation错误。
// 其他代码.....
finally
Axml := nil; // 这里如果用 Axml.Free 也是会出错
end;
我知道在Create创建时指定一个TComponent子类是可以的,比如在窗体中的话可以使用self,但是这里面没有办法这样,请高手指点一下,该怎么做?
http://www.cnblogs.com/cardon/archive/2010/03/07/1680190.html
Axml: TXMLDocument;
xn: IXMLNode;
DocIntf : IXMLDocument;
begin
Axml := TXMLDocument.Create(nil);
DocIntf := Axml;
try
Axml.LoadFromFile('c:\xx.xml');
Axml.Active := true;
xn := Axml.DocumentElement;
finally Axml := nil;
DocIntf := nil
end;
end;