Com不是要求,要实现几个IUnknown的接口么,QueryInterface,AddRef,Release等等么。ATL的项目里面,只有一个CComModule的全局对象,几个DllRegisterService,DllUnregisterService等等函数。这几个函数和Com接口是实现没有什么关系吧?它把Com实现要求的那些东西,包装到哪里去了? 我应该如何添加自己的Interface呢?谢谢!
解决方案 »
- 奇怪!GDI+初始化正常,函数调用正常,但就是不显示,求解..
- list control得不到我现在点的是第几行
- 如何用资源中的图像ID创建对应的GDI+的 Bitmap对象
- vc++调用matlab引擎
- [处女帖]如何检测打印机打印是否完成
- 请教有关2个相交多边形合并为一个多边形问题,各位给点思路!谢谢!
- 动态创建了一个按钮,怎么为这个按钮添加消息映射
- 句柄是什么
- 关于crystal report的问题,请帮忙必有分
- 请教高手:学VC到底是要学什么内容?除了MFC(听大虾们说又过时了)外,还有什么让初学者开始学?
- 列表控件的表头如何改成单击下拉的?
- VC做图像处理,为什么都是用的VS2005啊?
http://www.vckbase.com/vckbase/columnist/yangfeng/第五篇-用 ATL 写第一个组件
DLL服务器本身只需要DllRegisterService/UnregisterService/CanUnload这几个导出函数建立一个简单对象或者ActiveX控件后添加的代码才是组件的实现ATL中的COM实现并不一定需要显式得提供IUnknown的实现
通常是在实例生成时利用CCom*Object的模板化间接完成的
ATL中QI是通过查表进行的
通过DECLARE_INTERFACE宏在接口表中添加接口,
同时因为利用到C++的多继承,类也需要从此接口派生