明确设置目标平台时未构建的新项目
-
04-10-2019 - |
题
我使用一个项目创建了一个新解决方案,然后将目标平台从“任何CPU”更改为“ X86”。在添加的新项目之后,默认情况下不会构建,并且他们的目标平台也不会遵循全局设置。为什么?!
查看“配置管理器”的新项目未检查到“构建”,并且它们获得了目标平台“任何CPU”,而不是全球设置的X86。为什么会发生这种情况?我也希望新项目能够获得全球设置和定义的X86目标平台。我尝试过的某些事情:
- 将全局平台切换回任何CPU,然后再次转到X86。不用找了..
- 为新项目明确选择平台。 x86在列表中不可用,当我说
<New..>
并尝试添加它,我不允许”..已经存在具有相同名称的解决方案平台。". - 在新项目的构建属性上,我无法在“配置”部分中更改平台,但是我可以将“平台目标”设置为一般部分中的x86。但是,尚不清楚这是否确实有所作为,如果我以后更改目标平台,则不会做出响应。
最初,我认为这是一个问题,从将我的解决方案从VS2008转换为VS2010,但是问题适用于两个地方。即,当我在VS2008中创建解决方案并留在VS2008中时,我仍然会遇到问题。
解决方案
是的,这是VS2010的几乎打破变化,有点混乱。 2010年创建的新解决方案将具有两种配置:“调试| x86”和“ Release | x86”。这与先前版本创建的解决方案不同,即“调试| Any CPU”和“ Release | Any CPU”是默认值。
然后,当您在此VS2010创建的解决方案中添加以前版本中创建的现有项目时,您会得到一个讨厌的混合袋。平台组合现在显示 三 选项,“ x86”,“任何CPU”和“混合平台”。后者将建立所有项目。还有什么 非常 混淆是配置名称实际上并未直接影响平台目标设置。
它是可固定的,您可以在.sln和.vcproj文件中搜索并替换“任何CPU”,并使用文本编辑器搜索并替换“ x86”。也许最好的方法是避免麻烦,让VS2010转换VS2008解决方案,而不是创建新的解决方案。令人讨厌的问题。
其他提示
脚步:
- 关闭项目
- 在记事本中打开CSPROJ文件
- 用x64替换所有x86,保存
- 重新开放该项目并起作用。
不隶属于 StackOverflow