COM IUnknown在调用CoGetClassObject之前是否需要指向它的指针?

时间:2010-05-16 12:15:45

标签: object com iunknown

在COM中,当您想要创建某个COM Server对象的实例时,首先需要获取指向它的IUnknown接口的指针,然后才使用CoGetClassObject创建一个类对象吗?

据我所知,IUnknown用于管理对象的生命周期,因此根据我的理解,无论客户想要创建什么对象,都需要首先指向它的IUnknown接口实现。

声音正确吗?如果没有,谁能告诉我它是如何工作的?

1 个答案:

答案 0 :(得分:3)

IUnknown管理现有 COM对象的生命周期。在创建对象之前,没有IUnknown指针可以说明。

CoGetClassObject用于获取期望创建感兴趣对象的对象的IUnknown接口。即,它是一个对象 factory ,通常是实现IClassFactory,它声明了用于创建对象的CreateInstance方法。

不是明确地使用类工厂,而是简单地调用CoCreateInstance