CoCreateInstance是创建组件时使用得最多的一种方法,但由于其灵活性不足以满足所有组件的需求,因此引入了类厂。所有的组件都是类厂创建的。CoCreateInstance实际上也是按照一般发方法通过类厂来创建组件的。当客户直接使用类厂时,将能够获得更高的灵活性。
1.
CoCreateInstance
函数
此函数需要一个CLSID参数来创建相应组件的一个实例,并返回此实例的某个接口。其声明如下:
HRESULT
__stdcall CoCreateInstance(
const CLSID clsid,
IUnkown* pIUnkownOuter,//outer component
DWORD dwClsContext, &n

本文介绍了CoCreateInstance函数及其局限性,然后详细讲解了类厂(IClassFactory)在组件创建中的作用,包括CoGetClassObject函数、IClassFactory接口以及何时使用CoGetClassObject。类厂的特性包括每个实例对应特定CLSID的组件,并且通常与创建的组件在同一DLL中。
最低0.47元/天 解锁文章
1万+





