2010-09-04 62 views
0

我正在寻找一些COM,.NET互操作性主题,我遇到了一些遗留COM使用C++的例子,四舍五入它,我明白,你定义每个接口和coclass里面和idl (接口定义文件),所以其他com知道的语言可以理解类型信息,但唯一没有在idl文件中定义的com类是从IClassFactory派生的com类,有人可以告诉为什么,因为其他.NET语言也需要获得类工厂为了直观其他com类,那么他们如何才能理解类型信息?COM类工厂

回答

0

类工厂很少直接使用。事实上,如果您需要首先创建一个类工厂来创建任何COM对象,那么您将如何创建类工厂本身?

COM库负责创建对象。例如,如果COM服务器是DLL,则需要导出DllGetClassObject函数。当客户想要创建一个COM对象时,它会调用CoCreateInstance指定一个CLSID。使用CLSID,COM​​库查找服务器和(如果它是DLL)加载它并调用它的DllGetClassObject

这只是关于该主题的两个字。 COM是一个非常大的话题;如果您想完全了解您可能必须从very beginning开始......

相关问题