2012-11-17 81 views
0

我有一个部署的WPF EXE,我有一些担心,在该领域它是真正运行的x86,所以我可以放心,我没有遇到人们提到的奇怪行为时由于WOW64,你被设置为AnyCPU。 我的项目(只有在项目中的程序集,虽然我确实依赖于32位dll)设置为:enter image description hereVS2010 x86和AnyCPU项目vs解决方案设置

然而,我的解决方案配置设置为AnyCPU。 enter image description here

我仍然可以确信我的应用程序只是32位吗?

哦,这里是我的标志。

enter image description here

回答

1

这是一个有点在VS2010设计缺陷的,它特别罢工当你从VS.的早期版本转换项目平台名称不会以任何方式影响最终进程的位数。它只是一个名称,它不直接影响托管项目的任何项目设置。

只有Project + Properties,Build,“Platform target”设置很重要。而且,只有EXE项目中的设置很重要,DLL必须以EXE项目启动时选择的任何位置为生。所以DLL项目的正常设置是AnyCPU。如果你希望你的进程是32位的,那么把EXE项目的设置改为x86。如果你想要平台名称匹配,那么只需添加另一个名为“x86”,也是在VS2010中创建新项目时的默认名称。让平台名称与C#平台目标设置匹配取决于您,它不是自动的。不要忘记还要更改发布配置上的设置。

平台名称对于本地项目尤其是C++项目非常重要。因为他们不支持AnyCPU之类的东西,所以你需要单独构建它们。平台选择器现在可以在构建之间轻松切换。

相关问题