sharing Visual Studio Community 2017 (VCS2017)
Windows C# programming pretty much requires VSC2017…
Background
- Hobbyist debugging projects using custom client USB drivers
- practically, Windows drivers must all be signed, a tedious process
- as of Windows 10 1809, Universal Windows Drivers are wanted.
- Windows Driver Frameworks (WDF) drivers do NOT work on earlier Windows
- need to debug on Windows Home 8.1, 10 and perhaps Insider Preview
- my PC has only one SATA III channel for SSD;
- UEFI boot manager selects among bootable SSD Windows partitions
- need to minimize C:\ space usage; SSD wear increases nonlinearly for > 50%.
Problem
- VSC2017 spreads ~ 6.24 GB among
C:\Program Files (x86)
folders:- Windows 8.1 folders with VSC2017, compared to Windows 10 without:
- 3.16 MB
Windows Phone Kits
- 5.38 GB
Microsoft SDKs
- 236 B
NuGet
- 2.27 MB
IIS
- 349 MB
Common Files
(35.3 MB on Win 10) - 308 KB
Application Verifier
- 104 MB
Entity Framework Tools
- 26.7 MB
Microsoft.NET
(28 KB on Win 10) - 29.1 MB
Windows Kits
- 1.54 MB
Microsoft SQL Server
- 209 MB
MSBuild
(36 KB on Win10) - 156 MB
Microsoft Visual Studio
- Beyond SSD space constraints,
maintaining multiple VSC2017 instances would be problematic - Visual Studio has been thru many interations, presumably with different champions
- camel: horse designed by a committee
- Windows 10 registry has 4525
VC
, 54VisualStudio
and 13Visual Studio
entries - Windows 8.1 now has 12922
VC
, 5172VisualStudio
and 175Visual Studio
entries…
- Normal VSC2017 installation allows some content elsewhere
- custom installation terminologies and contexts are unclear and incomplete
when not simply misleading - vswhere
reports nothing on Windows 10,
even when invoked from (Windows 8.1) installation directory- presumably addicted to registry entries
- PowerShell tool is “more powerful”..
- Installing multiple VS versions side-by-side on a single PC is not interesting to me
- custom installation terminologies and contexts are unclear and incomplete
possibly interesting
- who knows?
- Microsoft.VisualStudio.Setup.Configuration.Native
“adds the header location and automatically links the library.” - [–path shared=
](https://docs.microsoft.com/en-us/visualstudio/install/command-line-parameter-examples?view=vs-2017)?? - Visual studio SharedInstallationPath ``` Registry keys There are several locations where you can set enterprise defaults, to enable their control either through Group Policy or directly in the registry. Visual Studio looks sequentially to see if any enterprise policies have been set; as soon as a policy value is discovered in the order below, the remaining keys are ignored.
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\VisualStudio\Setup HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\Setup (on 64-bit operating systems) ```
- “enterprise”
- not for community edition?
- not for Windows Home? VisualStudio does not exist in first key on my PC..
- what gets put there? second key has CachedPath and SharedInstallationPath set to custom location, leaving 6.24 GB on C:
- Setup does not exist for the third key
-
Moving or disabling the package cache for Visual Studio 2017
- Visual Studio 2017 administrator guide
- VS Community release bootstrapper
- network installation?
- “Visual Studio 2017 supports no-registry, side-by-side installations of all SKUs”
- claimed in StackOverflow
- supposing SKUs in that claim refers only to content optionally installed elsewhere, but registry shows 5916 references to that location