Visual studio 2012 在NuGet中确定Visual Studio更新版本
是否可以在init.ps1中确定是否安装了Visual Studio 2012 Premium的更新2(或更高版本)?我发现Visual studio 2012 在NuGet中确定Visual Studio更新版本,visual-studio-2012,nuget,Visual Studio 2012,Nuget,是否可以在init.ps1中确定是否安装了Visual Studio 2012 Premium的更新2(或更高版本)?我发现$dte.Version和$dte.Edition,但似乎缺少更详细的信息…dte.Version应该是您需要的信息。下面的帖子显示了更新1(11.0.51106.01)和更新4(11.0.61030.00)的版本号(我可以确认这个值) 编辑: 好的,看起来有点难: 您可以使用$dte.FullName检索devenv.exe的路径,然后检索文件版本 我的powershe
$dte.Version
和$dte.Edition
,但似乎缺少更详细的信息…dte.Version
应该是您需要的信息。下面的帖子显示了更新1(11.0.51106.01)和更新4(11.0.61030.00)的版本号(我可以确认这个值)
编辑:
好的,看起来有点难:
您可以使用$dte.FullName
检索devenv.exe的路径,然后检索文件版本
我的powershell知识非常有限,因此下面是c代码:
生成的FileVersionInfo具有属性
ProductVersion
,其中包含您需要的信息。尝试使用NuGet console进行验证,但我使用PM>$dte.Version
获得11.0
。Visual Studio正在更新4$dte.Version.GetType()
返回String
-所以这里运气不好。感谢您的更新<代码>[System.Diagnostics.FileVersionInfo]::GetVersionInfo($dte.FullName)提供了非常详细的输出。但是,缺少更新版本。我现在将尝试找出哪个ProductBuildPart
对应于更新2。非常感谢更优雅的解决方案…更新2包含ProductBuildPart 60315以供参考。
FileVersionInfo.GetVersionInfo(@"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe")