我有一个关于CoCreateInstnace()方法如何定位和创建COM DLL中包含的CoClass实例的问题。
正在加载MSDN:
CoCreateInstance函数提供 通过连接方便快捷方式 与之关联的类对象 指定CLSID,创建一个 未初始化的实例,并释放 类对象。就这样,它 封装以下内容 功能性:
CoGetClassObject(rclsid, dwClsContext, NULL, IID_IClassFactory, &pCF);
hresult = pCF->CreateInstance(pUnkOuter, riid, ppvObj)
pCF->Release();
所以我想知道这是否完全 CoCreateInstnace是如何实现的?或者只是逻辑等价?如果它的真实实现不是这样的话,我完全不知道CoCreateInstnace如何只用一个CLSID和Windows注册表中注册的一些DLL位置信息来找到并创建一个正确CoClass的实例。
感谢您的回复。
答案 0 :(得分:0)
请通过Visual Studio IDE中的调试版MSVCRT库进行调试来检查它。或者,您可以扫描VC ++包含头文件