zoukankan      html  css  js  c++  java
  • Delphi中动态调用TXMLDocument的经历

    var
      vXMLDocument: TXMLDocument;
    begin
      vXMLDocument := TXMLDocument.Create('c:/temp/temp.xml');
      Caption := IntToStr(vXMLDocument.Node.ChildNodes.Count);
      vXMLDocument.Free;
    end;
     
    执行上面的代码跳出"Invalid pointer operation"异常
    发现屏蔽vXMLDocument.Free;又正常了
    跟踪内核代码vXMLDocument被释放了两次搞不清楚原因
    没办法只好到处搜代码
     
    然后在窗体上直接放置一个TXMLDocument控件
    这段代码又不出错了
     
    郁闷,唯一的区别就是放置的控件赋值了Owner,直接TXMLDocument.Create('c:/temp/temp.xml');没有赋值Owner
    好吧,先解决问题
    var
      vXMLDocument: TXMLDocument;
    begin
      vXMLDocument := TXMLDocument.Create(Self);
      vXMLDocument.FileName := 'c:/temp/temp.xml';
      vXMLDocument.Active := True;
      Caption := IntToStr(vXMLDocument.Node.ChildNodes.Count);
      vXMLDocument.Free;
    end;
    看来正是这样,但这都是根据经验比较出来的
    VCL内核怎么处理还有待分析
     
    http://blog.csdn.net/zswang/article/details/1610404
  • 相关阅读:
    Fedora install chrome
    Ubuntu13.04 安装 chrome
    cjb
    屏蔽视频广告
    tars环境部署
    rpm包安装失败的解决办法
    Java环境变量配置错误
    Protobuf的安装使用
    fpm打包工具
    gcc6.3的安装
  • 原文地址:https://www.cnblogs.com/findumars/p/6347936.html
Copyright © 2011-2022 走看看