为了简化我的虚拟环境设置,我正在使用Chocolatey来自动化我的虚拟机。
因为我可以运行cinst
命令来安装Visual Studio
c:\> cinst VisualStudio2012Professional
我想知道在安装后是否有命令行开关检查(并随后“安装”)Visual Studio中的更新?
有些事情......
"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe" /InstallUpdates
这也应该扩展到VS.旁边安装的任何扩展。
答案 0 :(得分:11)
有一种方法可以检查,但它根本不是直截了当的。 Visual Studio更新通过当前托管的ATOM源发布:
http://go.microsoft.com/fwlink/?LinkID=251032
此网址位于:
C:\ Program Files(x86)\ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ CommonExtensions \ Platform \ Shell \ Microsoft.VisualStudio.ExtensionManager.Implementation.pkgdef
在[$ RootKey $ \ ExtensionManager \ Repositories {52943709-1abb-4abe-b413-41e8bb6d0462}]键下。
对于任何不保证的Visual Studio BUT版本,上述URL不应更改。如果您检查http://go.microsoft.com/fwlink/?LinkID=290886的回复,您将获得此回复:
<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title type="text"></title>
<id>uuid:99B94631-1B1A-45A0-9C34-54F75988DD54;id=1</id>
<updated>2013-02-12T20:00:00-07:00</updated>
<entry>
<id>8EAF6C8E-1283-4EEE-AB6E-F0F087BFCBFF</id>
<title type="text">Visual Studio 2012 Update 3</title>
<summary type="text">Includes security updates, other critical updates, hotfixes, and feature packs that have been issued since the product was released.</summary>
<published>2012-12-01T21:00:00-07:00</published>
<updated>2012-12-01T21:00:00-07:00</updated>
<author>
<name>Microsoft Corp.</name>
</author>
<link rel="alternate" type="text/html" href="http://go.microsoft.com/fwlink/?LinkID=257044&clcid=0x409"/>
<link rel="releasenotes" type="text/html" href="http://go.microsoft.com/fwlink/?LinkID=257045&clcid=0x409"/>
<link rel="update" type="text" href="http://go.microsoft.com/fwlink/?LinkID=302339"/>
<!-- icon should be 32 x 32 pixels -->
<link rel="icon" type="text" href="http://visualstudiogallery.msdn.microsoft.com/Content/VisualStudio/VSDownload_32x.png"/>
<!-- preview image should be 200 x 200 pixels -->
<link rel="previewimage" type="text" href="http://visualstudiogallery.msdn.microsoft.com/Content/VisualStudio/VSDownload_200x.png"/>
<Vsix xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/developer/vsx-syndication-schema/2010">
<Id>8EAF6C8E-1283-4EEE-AB6E-F0F087BFCBFD</Id>
<Version>11.0.60610.01</Version>
<References />
</Vsix>
</entry>
<entry>
<id>28743233-1A36-4e67-8747-F072F8C76D1F</id>
<title type="text">Visual Studio Extensions for Windows Library for JavaScript</title>
<summary type="text">This release updates the development resources for the controls, CSS styles, and helper functions that are included in the Windows Library for JavaScript.</summary>
<published>2013-08-08T20:00:00-07:00</published>
<updated>2013-08-08T20:00:00-07:00</updated>
<author>
<name>Microsoft Corp.</name>
</author>
<link rel="alternate" type="text/html" href="http://go.microsoft.com/fwlink/?LinkId=260891&clcid=0x409"/>
<link rel="releasenotes" type="text/html" href="http://go.microsoft.com/fwlink/?LinkID=260892&clcid=0x409"/>
<link rel="update" type="text" href="http://go.microsoft.com/fwlink/?LinkID=260893"/>
<link rel="icon" type="text" href="http://visualstudiogallery.msdn.microsoft.com/Content/VisualStudio/VSDownload_32x.png"/>
<link rel="previewimage" type="text" href="http://visualstudiogallery.msdn.microsoft.com/Content/VisualStudio/VSDownload_200x.png"/>
<Vsix xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/developer/vsx-syndication-schema/2010">
<Id>Microsoft.WinJS</Id>
<Version>1.0.9200.20789</Version>
<References />
</Vsix>
</entry>
</feed>
请注意,此Feed中有两个条目,您感兴趣的条目是标题以“Visual Studio 2012 Update”开头的条目。
如果此文件中指定的版本(此处为11.0.60610.01)大于您在磁盘上的版本:
(Get-Item "${env:ProgramFiles(x86)}\Microsoft Visual Studio 11.0\common7\ide\devenv.exe").VersionInfo.ProductVersion
然后,您需要在Link / @ Update节点中下载并安装URL:
<link rel="update" type="text" href="http://go.microsoft.com/fwlink/?LinkID=302339"/>
该网址应该重定向到具有更新的MSI。
答案 1 :(得分:1)
基于Devenv Command Line Switches MSDN文档中的信息。目前无法调用命令行swtich来检查/安装Visual Studio的更新。
但Matt Wrock在他的回答中显示了一个很好的解决方法。
答案 2 :(得分:0)
@Matt的答案已过时。对于VS2019,请按照以下方式操作: