【发布时间】:2018-12-23 23:17:03
【问题描述】:
使用 CreateProcess 和 CoCreateInstance(使用 CLSIDFromProgID 中的类 ID)启动 COM 组件 exe 是否有任何问题?
我已经这样做了,它似乎有效,但在关闭时会产生副作用。 有时它会正常关闭,有时(通过 Process Explorer 查看时)进程保持活动状态但在树中移动。
抱歉含糊不清,但我想知道以这种方式启动 COM 对象(CreateProcess 然后 CoCreateInstance)是否合法,或者正确实现这一点的唯一方法是否只是调用 CoCreateInstance?
谢谢!!!
【问题讨论】:
-
引用:“坏主意顺便说一句,COM 服务器不应该是控制台模式应用程序”。重复使用 CoGetObject() 直到它不再失败。请注意,您无法预测进程开始运行和发布其类工厂需要多长时间,您必须从不低于 10 秒的最坏情况开始工作。