After feedback on the VSSetup PowerShell module to query Visual Studio 2017 and related products, I’m pleased to say that a native, single-file executable is available on GitHub: vswhere. The VSSetup PowerShell module is also available on GitHub and provides a number of benefits for PowerShell scripts,
Visual Studio 2017 has brought big changes to extensibility that allow developers to install extensions to different instances and install dependencies. In support of multiple instances, a fast API was required that tools can use to find and launch Visual Studio and related tools,
We’ve listened to feedback over the years, and while each new release brought changes to the setup experience of Visual Studio and related products, none have been more significant than what we’re doing for Visual Studio “15”.
New setup engine
With Visual Studio supporting so many platforms and toolkits,
Many years ago when PowerShell was first in beta, I saw an opportunity to write cmdlets that I could string together in different ways rather than writing and maintaining a bunch of one-off Windows scripts for various day-to-day tasks and customer diagnostics.
When you install Visual Studio and related content like Windows Kits or some add-ons, most packages that comprise those bundles are reference counted to make sure they are not removed prematurely. Uninstalling Visual Studio and related content should eventually remove those packages (i.e.
If you’ve installed pre-release versions of Visual Studio – or even another edition of the same release – you may find you can’t change the installation target directory. This is because once a set of shared components is installed,
If you try to install Build Tools for Visual Studio 2017 into a Windows Server 2019 or newer container image, such as mcr.microsoft.com/windows/servercore:1809 or mcr.microsoft.com/windows/servercore:ltsc2019, the install will quickly terminate without error and without installing anything. This is due,
We are investigating how a particular rare problem occurs that can prevent clients like VSIXInstaller.exe, vswhere.exe, and others from finding any Visual Studio instance that results in an error similar to the following:
This is the CLSID for the Visual Studio Installer query API,
Use or contribute your own Dockerfiles on GitHub to help others build similar workloads with Visual Studio Build Tools.
The size and permutations of Build Tools 2017 container images are too great to publish official images, but here's how you can create your own tailored images.
You can now force vswhere to output JSON using the UTF-8 encoding.
The .NET Framework may not be correctly installed into a Windows Server Core container, and managed code - like the compilers - may fail. The documentation was updated with how to work around this.
You can now use -requiresAny with vswhere to specify that any component ID passed to -requires will satisfy the query.
Due to a bug in older versions of Visual Studio 2017, you should set the CachePath policy in both 32- and 64-bit views of the registry.
Preview new documentation for how to install Build Tools for Visual Studio 2017 into a Docker container.
Read about all the new properties output by vswhere.