2013-07-16 137 views
0

我有大约3层的Visual Studio解决方案。每个人都使用前一个编译的DLL来构建在网站中使用的实用程序。VS2010 x64解决方案构建,但部署项目失败

我有任务将所有内容都转换为64位。我已将所有3个解决方案中的每个项目中的每个项目都设置为x64处理器(除了网站中的.deploy项目;只能选择“任何CPU”)。

每个解决方案的构建都很完美,没有提到处理器不匹配。

但是,如果我勾选.deploy项目旁边的构建框,它会失败,并显示“无法加载文件或程序集......尝试加载程序的格式不正确”错误。

我是否认为问题在于部署项目而不是代码?其他一切都在构建,它只是开始呻吟的部署项目。我无法选择除“任何CPU”以外的任何事实都有点令人沮丧。

回答

0

事实上,我不能选择“任何CPU”以外的任何东西都有点令人沮丧。

这可能是为了让你做正确的事情。您应该选择AnyCPU作为项目的平台目标设置,而不是x64。 AnyCPU说明它的功能,它将作为64位操作系统上的64位代码运行。并且仍然以32位模式工作,例如在Visual Studio中使用这是一个32位的过程。请注意,对于托管项目,它是项目+属性,生成选项卡,重要平台目标设置,而不是解决方案平台的名称。将其设置为AnyCPU。在VS2012中取消选择“首选32位”选项。

显式定位x64仅适用于非托管代码,例如由C++编译器生成的代码。这个问题是否适用尚不清楚。

+0

是的,我认为你是对的。设置一切到任何CPU确实似乎工作,并且是一个更好的解决方案。 – Greg

相关问题