{"id":3765,"date":"2017-01-25T18:57:21","date_gmt":"2017-01-25T10:57:21","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/heaths\/?p=3765"},"modified":"2019-02-17T15:29:20","modified_gmt":"2019-02-17T22:29:20","slug":"visual-studio-setup-powershell-module-available","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/setup\/visual-studio-setup-powershell-module-available\/","title":{"rendered":"Visual Studio Setup PowerShell Module Available"},"content":{"rendered":"<p>To make the new <a href=\"https:\/\/blogs.msdn.microsoft.com\/heaths\/2017\/01\/25\/documentation-available-for-the-setup-configuration-api\/\">setup configuration APIs<\/a> more accessible to developers, we have published the &#8220;VSSetup&#8221; PowerShell module on <a href=\"https:\/\/powershellgallery.com\">powershellgallery.com<\/a>, making it quick and easy to install.<\/p>\n<p>If you have Windows Management Framework (WMF) 5.0 or newer &#8211; installed with Windows 10 &#8211; or <a href=\"http:\/\/go.microsoft.com\/fwlink\/?LinkID=746217\">PowerShellGet<\/a> for PowerShell 3.0 or 4.0, you can run the following from even an unelevated PowerShell host:<\/p>\n<pre>Install-Module VSSetup -Scope CurrentUser<\/pre>\n<p>You can also install for all users if you leave off the <code>Scope<\/code> parameter entirely. You can also download and extract a ZIP archive from our <a href=\"https:\/\/github.com\/Microsoft\/vssetup.powershell\/releases\">Releases<\/a> page on the <a href=\"https:\/\/github.com\/Microsoft\/vssetup.powershell\">project page<\/a>.<\/p>\n<p>After installing, you can quickly enumerate all launchable instances you have installed.<\/p>\n<pre>Get-VSSetupInstance<\/pre>\n<p>If you want to enumerate all instances &#8211; even those requiring a reboot or otherwise not complete &#8211; you can pass <code>-All<\/code>.<\/p>\n<pre>Get-VSSetupInstance -All<\/pre>\n<p>The default display properties present the main information for which end users are probably most interested, but you can pipe the results to <code>select *<\/code> to see everything.<\/p>\n<p>If you want to select specific instances &#8211; like the latest installed instance with the .NET Framework (desktop) workload &#8211; you can use <code>Select-VSSetupInstance<\/code>.<\/p>\n<pre>Get-VSSetupInstance | Select-VSSetupInstance -Latest -Require Microsoft.VisualStudio.Workload.ManagedDesktop<\/pre>\n<p>More examples are available in our <a href=\"https:\/\/github.com\/Microsoft\/vssetup.powershell\/blob\/master\/README.md\">README<\/a>. You can log bugs and suggestions on the <a href=\"https:\/\/github.com\/Microsoft\/vssetup.powershell\/issues\">Issues<\/a> page, and we are happy to consider pull requests. See <a href=\"https:\/\/github.com\/Microsoft\/vssetup.powershell\/blob\/develop\/CONTRIBUTING.md\">CONTRIBUTING<\/a> for developer notes. We appreciate your comments and contributions.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To make the new setup configuration APIs more accessible to developers, we have published the &#8220;VSSetup&#8221; PowerShell module on powershellgallery.com, making it quick and easy to install. If you have Windows Management Framework (WMF) 5.0 or newer &#8211; installed with Windows 10 &#8211; or PowerShellGet for PowerShell 3.0 or 4.0, you can run the following [&hellip;]<\/p>\n","protected":false},"author":389,"featured_media":3843,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[14,30,45,46,49,57],"class_list":["post-3765","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-development","tag-powershell","tag-visual-studio","tag-vs","tag-vs15","tag-vs2017"],"acf":[],"blog_post_summary":"<p>To make the new setup configuration APIs more accessible to developers, we have published the &#8220;VSSetup&#8221; PowerShell module on powershellgallery.com, making it quick and easy to install. If you have Windows Management Framework (WMF) 5.0 or newer &#8211; installed with Windows 10 &#8211; or PowerShellGet for PowerShell 3.0 or 4.0, you can run the following [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/setup\/wp-json\/wp\/v2\/posts\/3765","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/setup\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/setup\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/setup\/wp-json\/wp\/v2\/users\/389"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/setup\/wp-json\/wp\/v2\/comments?post=3765"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/setup\/wp-json\/wp\/v2\/posts\/3765\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/setup\/wp-json\/wp\/v2\/media\/3843"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/setup\/wp-json\/wp\/v2\/media?parent=3765"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/setup\/wp-json\/wp\/v2\/categories?post=3765"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/setup\/wp-json\/wp\/v2\/tags?post=3765"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}