sharing Visual Studio Community 2017 (VCS2017)

signal processing, XR, sim racing, microscopes, STM32 and ESP32 projects


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, 54 VisualStudio and 13 Visual Studio entries
    • Windows 8.1 now has 12922 VC, 5172 VisualStudio and 175 Visual 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

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) ```