0

我对免注册 COM 和清单非常有经验,但我被一个我无法克服的问题难住了。我有一个作为 Windows 服务运行的可执行文件,它生成另一个可执行文件(使用 CreateProcess)。生成的可执行文件使用一个 COM 库(我们也制作),并且有一个定义 COM 程序集的清单文件。

应该注意的是,出于调试目的,Windows 服务也可以从命令提示符以控制台模式运行。当我在控制台模式下运行服务时,生成的可执行文件“看到”了 COM 库,因此清单工作正常。当它作为服务运行时,我总是在生成的进程中收到“类未注册”错误。

我不知道为什么它不起作用。是免注册限制吗?如果我注册 COM 库,那么一切正常(在控制台模式或服务模式下),但我显然想避免这种情况。

谢谢,

诺曼底

4

1 回答 1

1

可能是Windows服务的当前目录是system32文件夹?运行后尝试更改环境,看看它是否会解析清单文件。

很可能这是问题所在,但我不想花一个小时来模拟和测试它。:)

于 2013-10-29T01:15:35.857 回答