COM组件开发实践(五)---From C++ to COM :Part 2
一,使用抽象基类重用C++对象 在上一篇文章《COM组件开发实践(四)---From C++ to COM :Part 1》中,我们已经将要复用的C++对象封装到DLL中了,对象的声明和实现已经实现了剥离,但还有问题:对象的私有成员(如我们示例中CDB类的数组变量m_arrTables)还是被客户看得一清二楚,即使客户没办法去访问它们;若对象改变了它的数据成员的大小,则所有的客户程序必须重新编.....
COM组件开发实践(四)---From C++ to COM :Part 1
源代码下载 – 74kb 一,C++客户重用C++对象 假设已经有一个可以重用的类,我们就可以在自己的程序中去重用它,只需要将其定义和实现文件加入到我们自己的工程中,并且在使用它的文件中包含此类的定义文件就可以了,这也是我们最常用的C++标准重用方法。就拿我自己来说,在CodeProject上遇到比较好的控件代码,都是这样直接用到自己的项目中来的。 &nb...
COM组件开发实践(六)---From C++ to COM :Part 3
在上一篇文章《COM组件开发实践(五)---From C++ to COM :Part 2 》中,我们进展到使用COM库加载C++对象了,这一篇中我们将真正将C++对象变成 COM对象,而在下一篇中我们将为它添加多接口支持。 C++对象变成COM对象 要将一个C++对象变成一个真正的COM对象,只需要如下操作: 1)实现接口的引用计数。因此每个COM对象都需要有两个函数用于管理引用计数...
{C++} COM 组件多层聚合嵌套原理
这个小Demo是控制台调用三个动态链接库的,每个链接库中都有一个方法,最外面的库CompB.dll里面是减法运算, 聚合CompC.dll里面的乘法,CompC.dll聚合CompA.dll里面的加法。CompB.dll调用接口是OtherInterface,CompC.dll 调用接口是AnyInterface,CompA.dll调用接口是SomeInterface。 ...

C++通过COM接口操作PPT
一、 背景说明 在VS环境下,开发C++代码操作PPT,支持对PPT模板的修改。包括修改文本标签、图表、表格。满足大多数软件生成PPT报告的要求,先手工创建好PPT模板,在程序中修改模板数据。 二、 开发环境构建 通过VS2012的Class Wizard创建PowerPoint和Excel的COM接口;由于需要操作PPT中的图表,而图表的数据使用Excel存储的,需要修改图表的数据就得生成E.....
COM是一个更好的C++
上周准备在公司内部转岗,面了3个部门windows客户端相关的工作,最终拿到3个Offer,主要涉及C++和Windows两大块内容,C++的题目基本都答上了,Windows一直都是我的弱项,在这里记录一下Windows相关的题目。有些答不上的问题就没列出来,还有些问题忘了,下面的答案有些大部分是我自己的理解,有些是直接从网上copy的,有问题大家可以讨论。 1:GetMessage和PeekM....
COM应用总结(2/3) c++实例和部署
接着把这个总结继续。 实例 以常用的HTML文档的处理为例,深入地描述一下COM的使用,其他的类别使用类同(如Office的编程对象) 首先工程包含 #include <mshtml.h> 具体的代码如下: //以DOM对象的形式遍历HTML文档 int WalkTree(CComPtr<IHTMLDOMNode> domNode) { ...
彻底理解C、C++、Win32与COM中的字符串
C/C++中的字符串问题在网上的讲解一向非常含糊,存在各个层次的库混用、滥用的情况,尤其是宽字符与窄字符等问题很难找到有效的资料,本篇随笔分享一下我长期收集到的一些比较准确的资料以及据此得到的个人理解. C语言中的字符串 C语言中提供了两种字符类型c...
本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。
开发与运维
集结各类场景实战经验,助你开发运维畅行无忧
+关注