【问题标题】:BadFormatException installing 64-bit serviceBadFormatException 安装 64 位服务
【发布时间】:2012-06-27 12:03:21
【问题描述】:

.NET 4.0、Windows 7、VS 2010:

尝试使用安装项目安装 64 位服务会导致错误 1001。初始化安装时发生异常:System.BadImageFormatException。

安装项目是使用this 创建的。我还按照here 的指示将目标平台设置为 64 位。

如果我将服务平台切换到 32 位,一切正常。

你知道如何解决这个 System.BadImageFormatException 异常吗?

【问题讨论】:

    标签: .net 64-bit installation setup-project badimageformatexception


    【解决方案1】:

    如果安装程序的目标平台设置正确,那么剩下的就是服务项目本身是否针对 x86。

    为“任何 CPU”(或 x64 - 因为作为任何 CPU 的 .Net 应用程序将在 64 位机器上以 64 位运行)添加一个新的解决方案配置(如果您还没有),创建项目配置(s ) 也是如此。

    在项目属性的“构建”选项卡上检查 exe 的目标平台是“任何 CPU”(或 x64)(在属性页上大约 4 行)。

    【讨论】:

    • 谢谢。我不得不去服务本身的属性。它设置为 x64,然后我将其切换到任何 CPU。而且,这在某种程度上奏效了——现在我可以毫无错误地安装该服务,并且它在没有 32 位指示器的情况下显示在任务管理器中。
    【解决方案2】:

    将项目的目标平台设置为 AnyCPU,但您必须取消选中首选 32 位。然后将安装程序项目设置 targePlatform 设置为 x64,然后构建项目。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-09-06
      • 2011-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-05
      • 2016-07-16
      • 1970-01-01
      相关资源
      最近更新 更多