【问题标题】:Installing .net 4 project on target server - Error System.BadImageFormatException在目标服务器上安装 .net 4 项目 - 错误 System.BadImageFormatException
【发布时间】:2010-04-20 14:37:49
【问题描述】:

我已经在我的一台服务器上安装了 .net 4 框架。

当我运行在 Visual Studio 中创建的安装项目时 - 收到以下错误:

错误 1001 发生异常时 初始化安装。 System.BadImageFormatException:可以 不加载文件或程序集或其之一 依赖关系。该程序集已构建 由比当前更新的运行时 已加载运行时,无法加载。

我肯定在目标机器上安装了 .net 4 框架 - 发生了什么?

【问题讨论】:

    标签: .net .net-4.0


    【解决方案1】:

    我最终找到了解决方案,并在博客中写到:Deploying .NET 4 Project – Error 1001 (System.BadImageFormatException)


    更新:复制了blog的内容:

    “上周在伦敦参加了英国科技日活动后,我热衷于加入 Visual Studio 2010 和 .net 4.0 的潮流。

    我将我们在 Crocus 的一些项目转换为 .net 4 框架(这非常简单——没有任何问题!) 我什至利用了 .net 4 中的一些快速实现特性,并将我们大量重写的一些方法转换为使用可选参数。

    特别是一个项目是 Windows 服务,它按计划发送采购订单。 (我最近写了一篇关于由于 Quartz.net 期望 UTC 开始时间而导致崩溃的原因)

    这有一个与之关联的 Visual Studio 部署项目。

    在构建新升级的.net 4 版本的项目,并将.msi 文件部署到我们的目标服务器后,我得到以下错误:

    初始化安装时出现错误 1001 异常。 System.BadImageFormatException:无法加载文件或程序集或一个 其依赖项。此程序集由比更新的运行时构建 当前加载的运行时,无法加载。

    现在,我肯定已经将所述服务器升级到 .net 4(事实上是两次 - 在我第一次收到此错误之后!)

    在谷歌搜索之后,有些人说要更改我的程序集上的 platform target,我这样做了,但无济于事。

    我最终发现了问题。

    您需要设置.NET Framework Launch Condition

    操作方法如下:

    1. 在解决方案资源管理器中右键单击您的部署项目。 在上下文菜单中,选择查看 -> 启动条件
    2. 在“版本”下选择“.NET Framework 4”

    重建和部署我的设置文件后,一切正常。”

    【讨论】:

    • 我遇到了同样的问题。但是,您的链接在工作中被阻止。由于某种原因,它被标记为恶意网站。你能指出我正确的方向吗?
    • 我很幸运在我的网站上有那个裤子牛病毒 - 上面的答案是对如何做的总结。
    • 答案的链接已损坏。太糟糕了,真的需要这个。
    • 从 Google 缓存中检索:1) 在解决方案资源管理器中右键单击您的部署项目 -> 查看 -> 启动条件 2) 检查 .NET Framework 节点的属性:在“版本”下选择 .NET Framework 4 3) 重建和部署安装文件后,一切都应该没问题。 PS:为我工作 - 谢谢。
    • @alexjamesbrown 谷歌搜索和冲浪太多,但这击中了靶心。完美的一次性工作解决方案。这就是为什么 +1。
    【解决方案2】:
    1. 单击安装程序项目,然后转到项目>属性。
    2. 单击先决条件按钮
    3. 选中“Microsoft .NET Framework 4(x86 和 x64)”框并取消选中之前版本的框架
    4. 在先决条件窗口和属性窗口中点击确定。
    5. 右键单击安装程序项目并转到查看>启动条件
    6. 突出显示 .NET Framework 条件并更新属性框中的以下字段
      一种。安装网址:http://msdn.microsoft.com/en-us/netframework/aa569263.aspx
      湾。版本:.NET Framework 4
    7. 重建安装程序

    【讨论】:

    • 这并不能解决我的问题。一切都设置为 x64 和 .NET Framework 4,但我仍然收到此错误。
    【解决方案3】:

    还在挣扎的小伙伴们,试试下面 转到自定义操作并在属性选项中将以下内容更新为 true

    【讨论】:

    • 非常感谢您的这篇文章。这一直让我发疯。
    • 这是安装时出错的 x64 服务的答案!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-16
    • 2011-03-07
    • 2010-09-06
    • 1970-01-01
    • 2011-07-25
    相关资源
    最近更新 更多