0

使用 VS2008 向导,我创建了一个服务(目前除了启动和停止之外什么都不做)

我希望使用(进程外)COM 对象

如果我添加一个#import“object.tlb”,那么重新编译会给出

错误 C2812:/clr:pure 和 /clr:safë 不支持 #import

更改属性以使用 /clr(不是纯的或安全的),允许编译,但服务安装失败,并显示“Ätempt to load an unverifiable executable with fixups”

任何建议表示赞赏

彼得

4

1 回答 1

0

在 MSDN 文章中明确提到了 InstallUtil.exe:

请注意,您不能部署使用 C++ 和 Installutil.exe 创建的 Windows 服务。Installutil.exe 无法识别由 C++ 编译器生成的嵌入式本机代码。如果您尝试使用 Installutil.exe 部署 C++ Windows 服务,则会引发异常,例如 BadImageFormatException。要使用此方案,请将服务代码移至 C++ 模块。然后,用 C# 或 Visual Basic 编写安装程序对象。

于 2012-05-25T09:29:13.850 回答