我有一个没有类型库的 32 位 ATL COM 组件。它有一个用于实现多个接口的给定类的类工厂。
当我将它用作进程内服务器时,一切正常 - 客户端调用 CoCreateInstance(),实例化对象,QueryInterface() 检索指向请求接口的指针。但是当我将组件放入 COM+ 时,我不再可以实例化该类 - CoCreateInstance() 现在返回 E_NOINTERFACE。
我认为问题在于 COM+ 由于缺少类型库而无法执行封送处理——它不知道该怎么做。我需要生成并注册一个类型库来解决这个问题还是有其他方法?