PowerShell module to get and set Visual Studio Community Edition license expiration date in the registry. Visual Studio 2015, 2017 and 2019 are supported.
Based on Dmitrii's answer to this question: Visual Studio Community 2017 is a 30 day trial?
This forked version includes the source to build MSI Installers that will:
- Install the module in the well-known Powershell path using embedded files for non-connected environments
- Create a scheduled task to run it every night as SYSTEM.
The MSI Installers are built using the WixSharp project, the task scheduler manipulation is made using TaskScheduler, a .NET Wrapper for the Task Scheduler COM Interface.
- Run the MSI based on the platform of your choice found in Releases
- A task, visible as administrator, is created in the 'VSCELicense' folder of the local scheduled tasks library. Your can change its schedule if needed, based on operational constraints
-
Download/clone this repository
-
Run PowerShell.exe as Administrator
-
Import module:
Assuming that you cloned/downloaded this repo to
C:\VSCELicense
Import-Module -Name 'C:\VSCELicense\VSCELicense.psd1'
If you get
execution of scripts is disabled on this system
message, you can temporarily override PowerShell execution policy by runningSet-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
See PowerShell documentation for more details:
All supported versions of Visual Studio.
Get-VSCELicenseExpirationDate
One specific version of Visual Studio.
Get-VSCELicenseExpirationDate -Version 2017
Multiple versions of Visual Studio.
Get-VSCELicenseExpirationDate -Version 2019, 2017
⚡ Writing to the Visual Studio license registry key requires elevated permissions. Run PowerShell as administrator for examples to work.
All supported versions of Visual Studio.
Set-VSCELicenseExpirationDate
One specific version of Visual Studio.
Set-VSCELicenseExpirationDate -Version 2017
Multiple versions of Visual Studio.
Set-VSCELicenseExpirationDate -Version 2019, 2017
All supported versions of Visual Studio.
Set-VSCELicenseExpirationDate -AddDays 10
One specific version of Visual Studio.
Set-VSCELicenseExpirationDate -Version 2017 -AddDays 10
Multiple versions of Visual Studio.
Set-VSCELicenseExpirationDate -Version 2019, 2017 -AddDays 10
⚡ This will immediately expire your license and you wouldn't be able to use Visual Studio.
All supported versions of Visual Studio.
Set-VSCELicenseExpirationDate -AddDays 0
One specific version of Visual Studio.
Set-VSCELicenseExpirationDate -Version 2017 -AddDays 0
Multiple versions of Visual Studio.
Set-VSCELicenseExpirationDate -Version 2019, 2017 -AddDays 0
- 0.0.8 - Make it easier to use by not requiring to specify Visual Studio version
- 0.0.7 - Added 2015 support (@GDI123)
- 0.0.6 - Load
System.Security
assembly if module was imported without manifest - 0.0.5 - Duh, actually set
PowerShellVersion = '3.0'
in manifest - 0.0.4 - Support downlevel PowerShell versions, starting from
3.0
- 0.0.3 - Fixed manifest to avoid execution errors under fresh PowerShell environments (@1Dimitri)
- 0.0.2 - Added 2019 support
- 0.0.1 - Initial commit, 2017 support