我创建了一个简单的Windows服务,该项目的平台是任何CPU ,我使用 installutil.exe 命令安装了我的服务。然后我卸载了该服务并将平台设置为 X64 。但在此之后,我无法安装该服务。我收到以下错误
初始化安装时发生异常:System.BadImageFormatException:无法加载文件或程序集 - 或者 其中一个依赖项。尝试加载带有的程序 格式不正确。
我想将平台更改为 X64 以使用某些dll。请帮帮我。
答案 0 :(得分:0)
您必须选择x86平台,dll以混合模式运行并且将与您的服务一起使用
答案 1 :(得分:0)
InstallUtill.exe是平台特定的
检查一下: https://stackoverflow.com/a/2160932/891715
此外,这将为您提供正确版本的正确路径:
string InstallUtilPath = Path.Combine(
System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeDirectory(),
"installutil.exe");
还有一点警告:如果您正在使用安装项目安装服务,请特别小心。它将installutil嵌入到自身中(通常它不是正确的版本......)。