在dllmain()/ DLL_PROCESS_ATTACH允许实例化COM对象?

DLLMAIN() / DLL_PROCESS_ATTACH加载DLL可能会造成麻烦。 但是可能使用eq CoInitialize()/ CoCreateInstance()实例化COM Objects

编辑 :问题是:可以创buildCOM实例导致类似的错误,如在这种情况下加载DLL? 加载DLL创buildCOM实例在某种程度上对我来说似乎是相似的。

我不确定你从哪里得到这个引用,但是这听起来不对。

你不应该把任何意义的代码放进DllMain。 尤其是调用LoadLibrary的代码。 许多Windows API将调用LoadLibrary,所以最好避免在这里进行任何复杂的初始化。 使用全局C ++对象(对于它的构造函数)或者更好,导出一个用于初始化的函数。

CoCreateInstance for in-proc组件最终将调用LoadLibrary或其变体之一。 在DllMain中调用这个函数也不是明智的做法。