Borland C ++ Builder中的新TXMLDocument

时间:2008-12-08 15:03:10

标签: c++builder txmldocument

我可以在Borland C ++ Builder中自己创建和销毁TXMLDocument吗?我尝试过但是borland一直告诉我TXMLDocument是(并且必须是)IDE管理组件。

另外,我想要这样做的唯一原因是TXMLDocument崩溃:我从中获取TXMLDocument和'获取'工作簿,设置一些文档属性(稍后将xml保存为Excel文件) ,我添加一些样式。好吧,然后我添加一个工作表,然后添加我想要的所有单元格,然后保存它。此时一切正常。

然后我要保存另一个Excel文件。由于IDE不允许我删除并重新创建TXMLDocument,我尝试只删除它的工作表。当我尝试这个(在调试模式下)时,IDE在CPU选项卡中进入行步模式(显示一些汇编程序):

ntdll.DbgBreakPoint:
77A07DFE CC               int 3
77A07DFF C3               ret

2 个答案:

答案 0 :(得分:2)

你需要做这样的事情:

_di_IXMLDocument Doc = NewXMLDocument(); 

我不记得为什么会有血腥的细节,但这应该指向正确的方向。

有关Codegear网站here的更多信息。

答案 1 :(得分:0)

试试这个:

#include <oxmldom.hpp>
#include <XMLDoc.hpp>
#include <xmldom.hpp>
#include <XMLIntf.hpp>


  try
  {
   CoInitialize(0);
   _di_IXMLDocument xmlDoc;
    xmlDoc = LoadXMLData( s1 );
   s1 = xmlDoc->XML->Text;
   CoUninitialize();
   mylog( Fun + String::Format( "ANSW-MSG-XML %s ", ARRAYOFCONST(( s1 ))));
  }
  catch ( Exception & ex )
  {
   mylog( Fun + String::Format( "PARSEXML:ERRORE %s \nmsg:%s",
      ARRAYOFCONST(( ex.Message, cmdMsg ))));
  }