Visual Studio 2008项目属性构建配置缺少选项

时间:2009-07-16 11:10:32

标签: visual-studio-2008 64-bit platform

我有一个奇怪的问题,希望有人可以帮助我。

我有一个包含13个独立C#项目的解决方案。我正在使用Vista x64进行开发,我想构建这些项目以针对x86平台。这通常很容易。我可以去解决方案属性 - >配置属性并将平台更改为x86。这里奇怪的部分是我的3个项目拒绝让我选择x86。

所以,我想我会分别去这3个项目中的每个项目并在项目属性中更改它 - >生成并更改平台。并且这些项目没有配置和平台下拉列表。我用Google搜索了一下,在Tools-> Options-> Projects And Solutions-> Show Advanced build configuration中找到了一个设置。选择此项后,当进入违规项目的项目属性时,我现在看到两个下拉列表,但平台只允许我选择活动(任何CPU)。

对于这些项目,我也无法将解决方案属性中的平台更改为x86。

有什么想法吗?

4 个答案:

答案 0 :(得分:10)

听起来像构建配置已经搞砸了。在将解决方案配置为支持x86之后,可能会添加这三个项目(新项目仅支持AnyCPU,即使该解决方案支持更多平台。)

  • Go Build-> Configuration Manager ...
  • 将'Active Solution Platform'更改为x86(如果它在那里。如果只有AnyCPU,那就使用它。)
  • 对于每个违规项目,在“平台”列中,选择“新建”
  • 选择新平台为'x86',从'任何CPU'复制设置,并确保未选中复选框。
  • 点击确定。

在解决方案和单个项目之间获得一致的配置/平台可能会非常棘手。 Configuration Manager可能会出现意外行为 - 尤其是使用自定义解决方案配置时。我建议先用测试解决方案。

答案 1 :(得分:2)

我也在x64上开发并部署到x86。但是我没有从默认值(任何CPU)更改平台,它对我来说很好。您是否有任何代码(例如Win interop)在不同平台上的工作方式不同?查看this post by Hanselman以获取有关32/64位.NET目标的详细信息。

答案 2 :(得分:0)

我会比较csproj文件的文本内容,看看是否有任何设置已经意外丢失或进入。还要查看sln的内容,也许有一些奇怪的配置。

此致

Sebastiaan

答案 3 :(得分:-2)

对于Visual Studio 2010.要运行Access 12.0:在解决方案资源管理器中单击项目名称,选择“属性 - 构建* - 目标平台 - x86”。