2013-09-01 13 views
9

Próbując usprawnić konfigurację środowiska wirtualnego, używam narzędzia Chocolatey do automatyzacji mojej maszyny wirtualnej.Jak mogę sprawdzić aktualizacje Visual Studio za pomocą wiersza poleceń?

Ponieważ mogę uruchomić komendę cinst zainstalować Visual Studio

c:\> cinst VisualStudio2012Professional 

Zastanawiam się, czy po jego zainstalowaniu, jest tam przełącznik linii poleceń w celu sprawdzenia (a następnie „Install”) aktualizacji poziomu Visual Studio?

Coś wzdłuż linii ...

"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe" /InstallUpdates 

ten powinien również obejmować żadnych rozszerzeń, które są zainstalowane wzdłuż bocznej VS.

Odpowiedz

9

Istnieje sposób sprawdzenia, ale nie jest to proste. Aktualizacje programu Visual Studio są publikowane za pośrednictwem kanału Atom, który jest obecnie gospodarzem tutaj:

http://go.microsoft.com/fwlink/?LinkID=251032

Ten adres URL może być zlokalizowane w:

C: \ Program Files (x86) \ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ CommonExtensions \ Platforma \ Shell \ Microsoft.VisualStudio.ExtensionManager.Implementation.pkgdef

Pod [$ RootKey $ \ ExtensionManager \ Repozytoria {52943709-1abb-4abe-b413-41e8bb6d0462}] klucz.

Powyższy adres URL nie powinien być zmieniany w przypadku żadnej wersji Visual Studio, ale nie jest to gwarancja. Jeśli zbadać reakcję http://go.microsoft.com/fwlink/?LinkID=290886, można obecnie dostać tej odpowiedzi:

<?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&amp;clcid=0x409"/> 
    <link rel="releasenotes" type="text/html" href="http://go.microsoft.com/fwlink/?LinkID=257045&amp;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&amp;clcid=0x409"/> 
    <link rel="releasenotes" type="text/html" href="http://go.microsoft.com/fwlink/?LinkID=260892&amp;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> 

pamiętać, że istnieją dwa wpisy w tej paszy i jeden jesteś zainteresowany jest jeden z tytułem literę „Visual Studio 2012 Aktualizacja."

Jeśli wersja określona w tym pliku (11.0.60610.01 tutaj) jest większa niż w wersji masz na dysku:

(Get-Item "${env:ProgramFiles(x86)}\Microsoft Visual Studio 11.0\common7\ide\devenv.exe").VersionInfo.ProductVersion 

Wtedy chcesz pobrać i zainstalować URL w linku/@ Aktualizacji węzeł:

<link rel="update" type="text" href="http://go.microsoft.com/fwlink/?LinkID=302339"/> 

Ten adres URL powinien przekierować do MSI, który ma aktualizację.

+0

to dobry, ale hacky sposób na rozwiązanie problemu. Kto/gdzie wysłałby żądanie funkcji, aby uwzględnić to wszystko w przełącznikach wiersza poleceń devenv.exe? Jeśli jest to jedna z tych sytuacji "nigdy się nie zdarzają", mógłbym po prostu spojrzeć na to, aby stworzyć EXE i przenieść go do #Chocolatey. –

+1

Tak. Prawdopodobnie nie jest to API, na które liczyłeś :) istnieje strona użytkownika, gdzieś do przesłania próśb o funkcję, ale wątpię, by leżała wysoko na zaległościach.Ja też myślałem, że tlit będzie fajne, by stworzyć czekoladowy autoregulator. Chcemy znaleźć pakiety choco do aktualizacji. To ból zarówno dla producenta, jak i konsumenta. –

1

Na podstawie informacji zawartych w dokumentacji MSDN Devenv Command Line Switches. Obecnie nie ma możliwości wywołania polecenia swtich w celu sprawdzenia/zainstalowania aktualizacji programu Visual Studio.

Jednak Matt Wrock pokazuje miłe obejście w swojej odpowiedzi.