尝试运行项目时出错:模块应包含程序集清单

时间:2012-08-27 03:26:55

标签: c# visual-studio-2010

当我尝试运行项目时,它说:

  

尝试运行项目时出错:无法加载文件或程序集“ Project.exe ”或其中一个依赖项。
  该模块应该包含一个程序集清单。

当我从调试文件夹运行exe时出现此错误:

  

应用程序无法正确启动(0xc000007b)

我也重新安装了Visual Studio,但似乎没有用!

如何解决我的问题?

6 个答案:

答案 0 :(得分:27)

  

预计该模块将包含一个程序集清单

这是一个低级装配加载问题。 CLR找到了一个具有正确名称的文件,但是当它尝试加载程序集时,它会发现该文件不包含正确的清单。 .NET程序集必须包含清单,它包含描述程序集的元数据,列出程序集中的类型等。

如果您不知道EXE或DLL可能是麻烦制造者,那么您可以使用Fuslogvw.exe utility

  1. 从“Visual Studio命令提示符”启动它。
  2. 单击“设置”按钮,然后单击“将绑定故障记录到磁盘”单选按钮。
  3. 切换回VS并启动程序并等待异常发生。
  4. 返回Fuslogvw,单击“刷新”按钮,然后双击添加的条目。
  5. 它会显示找到的文件。
  6. 目前常见的几种可能性是尝试使用要求CLR版本2的EXE加载.NET 4程序集。这需要一个强制使用CLR 4的app.exe.config文件。

答案 1 :(得分:5)

就我而言,我只是在Project Properties中更改Target Framework(.Net Framework 4)。它解决了这个问题。

答案 2 :(得分:2)

当我使用Vs2012 utimate发布Asp.net Mvc4,然后将dll上传到服务器时,我遇到了同样的问题。 我通过构建代码将其修复为发布模式,然后将bin文件夹中的所有dll上传到服务器。

答案 3 :(得分:0)

0xc000007b是“STATUS_INVALID_IMAGE_FORMAT”。根据经验,这将我指向项目属性。 一些值得一试的东西:

  • 检查所有构建选项是否都设置为x86或x64,具体取决于您的系统架构或AnyCPU。
  • 如果您正在使用dll,请考虑它们是否是针对您的目标体系结构进行编译的。如果没有,那么请相应地重新编译它们,或者从你得到它们的地方获得正确的版本。
  • 最后,检查项目程序集和加载的程序集是否具有不同的名称。这似乎也让事情变得更加繁荣。

答案 4 :(得分:0)

在我的情况下,只需转到项目属性并设置 - >启动对象projectname.program和build-> platform target - >即可解决问题。 86。

答案 5 :(得分:0)

我只是通过重新启动系统以及我设置为多用户的项目属性以及组合框启动选项来解决这个问题。这将有助于你。