Monthly Archive


Windows activation

Windows activation is usually straight forward. Put in the license key during installation, ensure the machine can connect to the Internet and wait a bit. Windows is activated.


Except today I was rebuilding some VMs and the activation didn’t work. I got a message about not being able to connect to the activation servers. The choices at this time are wait and hope it sorts itself out, try a manual activation or if all else fails and you’re prepared to lose a significant portion of your remaining lifetime try a telephone activation.


The GUI for activation was nice and simple and worked. As with most things in Windows you now have to go through more steps to get to what you need to do and then the GUI is based on a whole load of assumptions about what you want to do that often bear no relationship to reality. Since Windows Vista the GUI has become harder and harder to use to get anything done unless its a task that Microsoft thinks you’re capable of doing. The more you know about Windows the harder it is to rely on the GUI.


You can use CIM to force the activation

Get-CimInstance -ClassName SoftwareLicensingProduct -Filter "PartialProductKey IS NOT NULL" | Invoke-CimMethod -MethodName Activate


If at first you don’t succeed put the code in a loop and keep trying


You can test the activation status

enum Licensestatus {
Unlicensed = 0
Licensed = 1
OOBGrace = 2
OOTGrace = 3
NonGenuineGrace = 4
Notification = 5
ExtendedGrace = 6

Get-CimInstance -ClassName SoftwareLicensingProduct -Filter "PartialProductKey IS NOT NULL" | select Name, ApplicationId, @{N='LicenseStatus'; E={[LicenseStatus]$_.LicenseStatus} }

Comments are closed.