2016-02-10 70 views
1

仅可使用命令行获得.NET解决方案的主动配置和平台吗?我希望外部进程检查.sln文件并指定是否选择了DebugRelease并选择了哪个平台。使用命令行获取.NET解决方案的主动配置和平台

+0

假设活动配置/平台是默认的(例如Debug | AnyCPU)或命令行上指定的那个,这是一个有点鸡或蛋问题。 – stijn

+0

我指定了我自己的平台和配置(智能电视统一应用程序)。 – Nickon

回答

0

构建解决方案时首先要做的事情之一就是调用ValidateSolutionConfiguration目标,这也正好打印出配置。例如:

> msbuild /nologo /t:ValidateSolutionConfiguration my.sln 
... 
ValidateSolutionConfiguration: 
    Building solution configuration "Debug|Win32". 
... 

有用,现在只需要使用类似grep的工具来解析输出。下面是例如如何使用PowerShell输出配置和平台:

PS > (msbuild .\ig\ig.sln /t:ValidateSolutionConfiguration) | 
     Select-String 'Building solution configuration "(\w+)\|(\w+)"' | 
     %{ $_.matches[ 0 ].Groups[ 1, 2 ].Value } 
Debug 
Win32 
相关问题