COM技术内幕--学习笔记
hongyang1980
从事你喜欢的工作你就会成功!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
读书笔记五(Chapter9 and Chapter10)
Chapter9 客户端的简化1.智能指针 智能指针---主要是指组件的AddRef和Release工作可以由系统自动做好,程序员不用操心啦。接口指针类---ATL中有CComPtr何CComQIPtr的COM接口指针类。接口指针的应用---通过接口的IID来创建对象,然后调用CoCreateInstance创建组件。例如:IPtr spIX;HRESULT hr =原创 2009-01-20 17:38:00 · 511 阅读 · 0 评论 -
Inside COM 笔记一(Chapter1 & Chapter2)
Chapter1首先介绍什么是组件,它的优点是什么。Quote文章的原话是:与语言无关,二进制形式发布,不妨碍老客户的情况下升级,透明的被分配到网络上。Chapter2 interface这里的interface不是普通意义上的函数,而是指一堆函数的集合,有时可以说是C++里的类。这点需注意,有时容易confuse我们。interface做的尽量能够预测未来,怎么预测未来,就是靠实现和声明分离,似原创 2008-11-25 16:44:00 · 431 阅读 · 0 评论 -
Inside COM 笔记二(Chapter3,Chapter4)
首先介绍QueryInterface,可见它的地位。为什么要存在,因为COM组件对用户来说是一个黑盒子,不知道里面到底有什么,所以就需要有查询的方法。COM的Interface必须继承自IUnknown。每个Interface的vtbl中的前3个函数都是QuereyInterface,AddRef和Release。IUnknown的获取,通过CreateInstance函数得到,而不必再使用new原创 2008-11-27 12:22:00 · 416 阅读 · 0 评论 -
Inside COM 笔记三(Chapter5, Chapter6)
Chapter5 动态链接Dll 动态链接库,他与组件有什么关系呢?答:Dll只是发布组件的形式,不是组件。组件是Dll中实现的接口集合。如何创建组件?这里涉及到Dll的输出函数,Dll存在的意义也就是它了。试想没有输出函数的Dll会有什么用啊?输出函数的定义注意加extern “C”防止编译器加上类型信息。方便调用者使用。光有extern“C”,还是不能使用Dll,还要有DEF文件来说明有哪些导原创 2008-12-03 18:27:00 · 571 阅读 · 0 评论 -
Inside COM 笔记四(Chapter7, Chapter8)
Chapter7 类厂首先介绍组件的创建,CoCreateInstance函数。函数声明:STDAPI CoCreateInstance( REFCLSID rclsid, //Class identifier (CLSID) of the object LPUNKNOWN pUnkOuter, //Pointer to controlling IUnknown DWORD dw原创 2008-12-18 14:15:00 · 899 阅读 · 0 评论
分享