C++ Builder 5中使用COM组件

lake_cx 2009-01-23 10:35:42
我在BCB5中要操作XML,导入了msxml.dll的类型库,生成了MSXML_TLB.h和MSXML_TLB.cpp文件。
但我在使用过程中发现包装的部分方法没有实现代码,导致无法链接
譬如IXMLDocument2DispT中有方法HRESULT __fastcall set_url(BSTR p/*[in]*/);,但是该方法在MSXML_TLB.cpp中并没有对应的实现。
后来改用指针(m_XmlDoc->set_url)操作(直接使用IXMLDocument2接口),发现声明是HRESULT STDMETHODCALLTYPE set_url(BSTR p/*[in]*/);,请问这种声明能成么?它不用声明成外部实现么?我直接调用的话也会在链接时找不到set_url这个外部符号啊,是不是需要引用什么库文件?
...全文
195 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lake_cx 2009-01-24
  • 打赏
  • 举报
回复
嗯,我改用IXMLDOMDocument了,不知道那个IXMLDocument怎么用的。。。
我来看看CB 2009-01-23
  • 打赏
  • 举报
回复
麻烦啊,换用新的版本看看
lake_cx 2009-01-23
  • 打赏
  • 举报
回复
我印象中,貌似接口的成员一般声明为纯虚方法,只是作个占位而已(类似结构体),但BCB5自动生成的接口怎么不是这样的啊,它那interface关键字貌似只是个标识而已,没什么作用
oyljerry 2009-01-23
  • 打赏
  • 举报
回复
参考一下vc的

VC中对XML编程 通过引入msxml.dll动态库
....
#import "msxml.dll"
using namespace MSXML;
....
写了上面两句有就可以使用xmlsdk.chm中介绍的各种XML对象了

CoInitialize(NULL);
IXMLDOMDocumentPtr domPtr;
IXMLDOMNodePtr nodePtr;
IXMLDOMNodeList listPtr;
...
_variant_t tt("ttt.xml");
....
domPtr.CreateInstance("msxml.xmldocument");
domPtr->Load(tt);//装载XML文件
...
操作XML文档

oyljerry 2009-01-23
  • 打赏
  • 举报
回复
找一下库文件 ... msxml2.lib
Borland C++Builder 5.0 (简介)   Borland C++Bilder 5.0是Interprise(Borland)公司推出的基于C++ 语言的快速应用程序开发(Rapid Application Development,RAD)工具,它是最先进的开发应用程序的组件思想和面向对象的高效语言C++融合的产物。C++Builder 充分利用了已经发展成熟的Delphi 的可视化组件库(Visual Component Library,VCL),吸收了Borland C++ 5.0 这个优秀编译器的诸多优点。C++Builder 结合了先进的基于组件的程序设计技术,成熟的可视化组件库和优秀编译器,调试器。发展到5.0版本,C++Builder 已经成为一个非常成熟的可视化应用程序开发工具,功能强大而且效率高。 C++Builder的特色: 1.C++Builder 是高性能的C++开发工具   C++Builder是基于C++的,它具有高速的编译,连接和执行速度。同时,C++Builder具有双编译器引擎,不仅可以编译C/C++程序,还能编译Object Pascal语言程序。 2.C++Builder是优秀的可视化应用程序开发工具   C++Builder是一完善的可视化应用程序开发工具,使程序员从繁重的代码编写解放出来,使他们能将注意力重点放在程序的设计上,而不是简单的重复的劳动。同时,它提供的完全可视的程序界面开发工具,从而使程序员对开发工具的学习周期大大缩短。 3.C++Builder具有强大的数据库应用程序开发功能   C++Builder 提供了强大的数据库处理功能,它使的程序员不用写一行代码就能开发出功能强大的数据库应用程序,这些主要依赖于C++Builder众多的数据库感知控件和底层的BDE数据库引擎。C++Builder除了支持MicroSoft的ADO(Active Data Object)数据库连接技术,还提供了一种自己开发的成熟的数据库连接技术——BDE(Borland Database Engine)数据库引擎。 4.C++Builder具有强大的网络编程能力 C++Builder具有众多的Internet应用程序开发控件,如WebBroker,CppWebBroswer,WinSocks等,它们基本含盖了Internet应用的全部功能,利用它们程序员可以方便地建立自己地Internet应用程序。

703

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder ActiveX/COM/DCOM
社区管理员
  • ActiveX/COM/DCOM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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