我可以在Borland C++ Builder中自己创建和销毁TXMLDocument吗?我试过了,但是borland一直告诉我TXMLDocument是(而且必须是)一个集成开发环境托管组件。
而且,我想这样做的唯一原因是TXMLDocument有点崩溃:我获取TXMLDocument并从中“获取”一个工作簿,设置一些文档属性(稍后将其另存为Excel文件),然后添加一些样式。好的,然后我添加一个工作表,然后添加所有我想要的具有适当格式的单元格,然后保存它。在这一点上,一切都正常。
然后我想保存另一个Excel文件。由于集成开发环境不允许我删除并重新创建TXMLDocument,因此我尝试只删除其中的工作表。当我尝试这样做时(在调试模式下),IDE进入CPU选项卡中的行步进模式(显示一些汇编程序):
ntdll.DbgBreakPoint:
77A07DFE CC int 3
77A07DFF C3 ret发布于 2008-12-08 15:26:56
你需要做一些类似这样的事情:
_di_IXMLDocument Doc = NewXMLDocument(); 我不记得为什么的血淋淋的细节了,但这应该会给你指明正确的方向。
在Codegear网站here上有更多信息。
发布于 2009-09-15 14:07:03
试试这个:
#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 ))));
}https://stackoverflow.com/questions/349802
复制相似问题