Upgrade and Convert Windows Server Editions


If, like us, you like to play around on Windows Server, testing out the features of new editions and releases, there comes a time when you will eventually have to upgrade your Windows Server edition. If you allow the 180 days to expire, then your server will shutdown after an hour has elapsed.


While learning the intricacies of Windows Server 2016 Server Cluster Manager we had to upgrade and validate our server several times. The easiest way to do this is with DISM through PowerShell or command prompt.
Deployment Image Servicing and Management (DISM.exe) is a command-line tool primarily used to service and prepare Windows images. Using it we can identify our current edition, identify editions we can upgrade to and upgrade and validate our edition.
Caveats
If the machine is a domain controller then you cannot upgrade it. First you need to add an additional domain controller that is running a retail version. Then remove AD DS from the evaluation machine. Once upgraded you can add this service back.
Microsoft does not officially support downgrading editions, so if you install Essentials you can upgrade to Standard or DataCenter. If you install Standard then you cannot downgrade to Essentials but you can upgrade to Datacenter. If you install Datacenter then you cannot downgrade to Essentials or Standard. We will show you how identify the edition you have and what you can move to.
Identifying Our Edition
Using elevated Powershell or command prompt we run
DISM /online /Get-CurrentEdition


This confirms what is displayed on the desktop that our current version is ServerStandardEval
Identifying An Edition To Upgrade
Based on what version of Windows server you installed will determine what pathway you can use to upgrade.
DISM /online /Get-TargetEditions


As we can see the only editions available to us are ServerStandard and ServerDatacenter.
Upgrading From Evaluation
First thing we will try is upgrading from our evaluation edition.
DISM /online /Set-Edition:ServerStandard /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /AcceptEula




Once completed hit Y and allow your server to restart. Once completed you should see the evaluation licence warning gone from the bottom right corner and running DISM /online /Get-CurrentEdition
will show EVAL now removed.


Upgrading Editions
Like before we will run DISM /online /Get-TargetEditions
to identify what editions are available to upgrade to. As you can see we cannot downgrade to Essentials and we cannot drop back to an evaluation version.


Once again run DISM /online /Set-Edition:ServerDatacenter /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /AcceptEula


Allow your server to restart and there we go. We now have all the features of Windows Server Datacenter. A quick check with Get-CurrentEdition and Get-TargetEditions will show the edition we have licenced and that no other editions are available to upgrade to.
Windows Server 2019 Activation Problems
One issue we ran into while testing out different editions was a new install of Windows Server 2019 Essentials not allowing us to activate giving us Error code: 0x87E10BC6. Running Get-CurrentEdition and Get-TargetEditions gave us the following.




We went to settings and changed the product key to a valid one which allowed us to activate. From there we could progress upgrading again to ServerStandard and then onto ServerDatacenter with DISM.
We hope this helps if you are having problems changing Windows Server Editions.
For further reading, head here for the full list of conversion options between editions here