玩技术,Geeker
一个原创技术文章分享网站

标签:COM

ATL/COM

COM编程——多线程

果冻想阅读(1085)评论(0)

前言 做了这么长时间的COM开发,对于COM编程中的多线程开发还是一知半解的;这也不符合天秤座的脾气,所以,今天一定要对COM编程中的多线程好好的总结一番。 COM线程 搞Windows开发,应该熟悉Windows的线程和同步了,如果不熟悉...

ATL/COM

COM编程——常用数据类型

果冻想阅读(1002)评论(0)

前言 学习是一个探索的过程,但是在探索的过程中,我们要学会去总结,如果总是去探索,而不去归纳总结探索的成果物,那么你的探索很可能就得不到别人的认可,也可能使自己进入一种迷茫的状态中。最近的一阶段,做的项目都是关于COM的,在与COM打交道时...

ATL/COM

COM编程——调度接口与自动化

果冻想阅读(1214)评论(0)

前言 客户与组件通信的方法有很多种,而今天这里将会详细的总结自动化这种方法。自动化使得解释性语言和宏语言访问COM组件更为容易,同时用这些语言编写组件也将更为容易。自动化关注的是运行时的类型检查,这一点是以速度的牺牲和编译时的类型检查为代价...

ATL/COM

COM编程——EXE中的服务器

果冻想阅读(985)评论(0)

前言 我们之前总结的很多东西,甚至是提供的DEMO程序都是基于进程中服务器的,也就是生成的COM组件的形式为DLL。但是,有的时候,我们可能需要使组件是以EXE的形式发布。这样就会出现另一个问题,不同EXE中的组件和客户将在不同的进程中运行...

ATL/COM

COM编程——智能指针

果冻想阅读(911)评论(0)

前言 在COM开发中,我们都是在和接口指针打交道。对于接口指针,我们都要小心翼翼的使用AddRef和Release操作来增加对应接口的引用计数。关于引用计数的使用规则可以查看之前总结的 《引用计数(1)》和 《引用技术(2)》。对于接口的引...

ATL/COM

COM编程——聚合

果冻想阅读(818)评论(0)

前言 聚合属于组件复用中比较重要的一种技术,理解起来也是有一定难度的;之前总结的包容是在外部组件的内部组合了内部组件,也就是说外部组件可能是内部组件的一层wrapper;这样有个问题就是,我们进行调用外部接口时,都是将对应的调用转发给内部组...

ATL/COM

COM编程——类厂

果冻想阅读(1102)评论(3)

前言 在之前总结的文章中,我都是直接使用自己实现的一个CreateInstance去new一个组件;但是,在COM中真正进行创建组件时,并不是那样简单的,这里面的水有点深,但是却包含了很多的知识点,而今天我这里总结的就是如何去创建一个组件。...

ATL/COM

COM编程——COM库函数

果冻想阅读(1203)评论(0)

前言 所有的COM组件和客户都需要完成一些相同的操作。为保证这些操作是按照标准的并且是兼容的方法完成的,COM定义了一个函数库以实现所有这些操作。这个函数库是在OLE32.dll中实现的。在使用静态链接时,可以使用OLE32.lib。 CO...

ATL/COM

COM编程——GUID和注册表

果冻想阅读(1575)评论(2)

什么是GUID? 做COM开发,就不得不去了解IID了,IID作为每一个接口的唯一标识符;我之前也有像下面这样定义一个IID: // {2A06BBB3-667C-4D51-A8AD-F3CFDD7EF682} static const I...

ATL/COM

COM编程——HRESULT

果冻想阅读(1259)评论(2)

前言 在前面总结的COM编程文章中,总是能看到接口的返回值为HRESULT;对于HRESULT是什么并没有进行详细的说明,只是说这个是用来表示接口的调用成功或失败的。而今天这篇博文将对HRESULT进行全面的总结。 HRESULT的定义 对...

ATL/COM

COM编程——引用计数(2)

果冻想阅读(1138)评论(1)

前言 在上一篇《COM编程——引用计数(1)》中对AddRef和Release的实现机制进行了详细的总结,而这篇博文主要是对AddRef和Release的使用进行总结;主要从引用计数优化和引用计数使用规则两个方面进行总结。 引用计数优化 在...

ATL/COM

COM编程——引用计数(1)

果冻想阅读(1379)评论(2)

前言 在COM编程——QueryInterface函数(1)中说到了IUnknown接口的声明,对于其中的QueryInterface进行了总结,而剩下的AddRef和Release并没有进行讲解,而今天这篇博文以及下一篇博文就是对AddR...

ATL/COM

COM编程——QueryInterface函数(2)

果冻想阅读(845)评论(0)

前言 在COM编程——认识组件中也总结了,COM是一个说明如何建立可动态互变组件的规范,它提供了为保证能够互操作,客户和组件应遵循的一些标准。而在实现和使用QueryInterface时,就需要去遵守一些规则,只有遵守了这些规则,才能是一个...

ATL/COM

COM编程——QueryInterface函数(1)

果冻想阅读(1114)评论(8)

前言 组件对外公布的是接口;一个组件可以实现多个接口,也就是说可以对外公布多个接口,之前也总结过了,你很少会100%的去完全了解一个组件的所有接口,就像你去学习编程一样,你几乎不可能去成为编程中的全才。那么,既然我们不能去完全的了解一个组件...

ATL/COM

COM编程——接口的背后

果冻想阅读(1376)评论(9)

前言 学习C++的人,肯定都知道多态机制;多态就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。对于多态机制是如何实现的,你有没有想过呢?而COM中的接口就将这一机制运用到了极致,所以,不知道多态机制的人,是永...

在这里玩技术,享受技术带来的疯狂

捐赠名单关于果冻