我有一个奇怪的问题,希望有人能帮助我。
我有13个独立的C#项目的解决方案。 我使用Vista x64的开发上,我想建立这些项目为目标的x86平台。 这通常是很容易的。 我可以去解决方案属性 - >配置属性和平台更改为86。 这里奇怪的是,我的项目3不肯让我选择86。
所以,我想我会去这些3个项目的分别,并改变它在项目属性 - >生成并修改平台。 而配置和平台的下拉列表中不存在这些项目。 我用Google搜索了一下周围,发现在工具 - >选项 - >项目和解决方案 - >设置显示高级生成配置。 选择在此之后,将项目属性为违规项目时,我现在看到两个下拉列表,但平台只允许我选择Active(任何CPU)。
我也无法改变平台的解决方案性能的x86为这些项目。
有任何想法吗?
听起来像生成配置也水涨船高扭曲。 后的溶液配置为具有支持x86很可能添加的三个项目(新项目只支持AnyCPU,即使该解决方案支持更多的平台。)
- 去建设 - >配置管理器...
- 更改“活动解决方案平台”,以86(如果它的存在。如果仅仅AnyCPU是存在的,然后使用。)
- 对于每个有问题的项目,在Platform列中,选择“新建”
- 选择新平台为“86”,从复制设置“任何CPU”,并确保该复选框未选中。
- 点击OK。
获取解决方案和各个项目之间的一致的配置/平台可能会非常棘手。 配置管理器的行为可能 - 尤其是定制解决方案的配置。 我建议在测试解决方案先手。
我还开发了在x64和部署的x86。 但是我不更改默认值(任何CPU)的平台,它为我工作就好了。 你有跨平台的工作方式不同的任何代码(如运互操作)? 看看这篇文章由Hanselman在对32/64位.NET定位的详细信息。
我想比较的csproj文件的文本内容,以查看是否有已意外下降,或在任何设置。 另外,还要检查SLN的内容,也许有一些奇怪的与CONFIGS。
问候,
Sebastiaan
对于Visual Studio 2010。运行Access 12.0:在Solution Explorer中的项目名称R-单击,选择属性 - 构建* - 目标平台 - 86。