使用 DLL 中的 COM 对象,无需注册

2022-01-14 00:00:00 dll com c++

是否可以使用 DLL 中的 COM 对象而不在 C++ 非托管代码中注册?

Is it possible to use COM Object from DLL without register in C++ not managed code?

推荐答案

可以,如果它内部不依赖其他注册对象的话.

Yes, if it does not rely internally on other registered objects.

  1. LoadLibrary DLL
  2. GetProcAddress它的DllGetClassObject
  3. 您调用 DllGetClassObject 以获取 IClassFactory 指针,用于感兴趣的 CLSID
  4. 您可以使用 IClassFactory::CreateInstance 并实例化 coclass
  1. You LoadLibrary the DLL
  2. You GetProcAddress its DllGetClassObject
  3. You call DllGetClassObject to obtain IClassFactory pointer for CLSID of interest
  4. You are good to go with IClassFactory::CreateInstance and instantiate the coclass

相关文章