此问题的相关解决方案和项目文件位于:

http://code.google.com/p/benfwaves/source/browse/trunk/BenfWaves.sln?r=26

http://code.google.com/p/benfwaves/source/browse/trunk/BenfWaves.Library/BenfWaves.Library.csproj?r=26

http://code.google.com/p/benfwaves/source/browse/trunk/BenfWaves.Client/BenfWaves.Client.csproj?r=26

http://code.google.com/p/benfwaves/source/browse/trunk/BenfWaves.Tests/BenfWaves.Tests.csproj?r=26

我试图重构项目文件以消除冗余,并允许编译到.NET 3.5和.NET 4.0。当前,VS2010 IDE可以针对.NET 4.0上的任何CPU进行编译。如果我尝试使用适用于.NET 3.5的Any CPU,则会显示:



我读到这可能是resgen.exe的问题,但是更改该文件上的32位标志并没有改善这种情况。而且,IDE认为项目没有配置任何CPU以外的任何配置,这会产生以下问题:

------ Skipped Build: Project: BenfWaves.Library, Configuration: Debug-4.0 Any CPU ------
           Project not selected to build for this solution configuration
------ Build started: Project: BenfWaves.Client, Configuration: Debug-4.0 x86 ------
           BenfWaves.Client -> D:\projects\BenfWaves\trunk\BenfWaves.Client\bin\x86\Debug-4.0\BenfWaves.Client.exe
------ Skipped Build: Project: BenfWaves.Tests, Configuration: Debug-4.0 Any CPU ------
           Project not selected to build for this solution configuration
========== Build: 1 succeeded or up-to-date, 0 failed, 2 skipped ==========

它跳过了不该做的事情。命令行上的msbuild可在所有三个平台上使用,并且不会跳过任何内容。

任何建议都将受到欢迎。谢谢。

编辑:修订版27之后,至少不再存在“未选中”问题,因为我向项目添加了虚拟配置行以使VS2010正常工作。但是,.NET 3.5下的资源编译问题仍然存在。

最佳答案

我看到您已经修复了sln中的配置错误。 Resx问题与here所述相同。

关于c# - msbuild在命令行上工作,但VS2010表示项目为 "not selected",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5396376/

10-11 16:33