Perform Windows 10 Edition Upgrade Using SCCM

In this article, we will demonstrate how to perform a Windows 10 edition upgrade using SCCM. The Edition Upgrade Policy in SCCM can be used to perform Windows 10 edition upgrades. For example, you can easily upgrade Windows 10 Pro to Windows 10 Enterprise.

There are several methods for changing the product key on a Windows 10 PC. If you want to change the product key on a single machine, go to Windows 10 Settings. Another simple method is to run the slui.exe 3 command, which displays a window in which you can enter the product key.

If you only have a few computers, the solutions listed above are adequate. If you want to change or upgrade the Windows 10 edition for many computers, you can use SCCM.

In this post, we will use the latest Configuration Manager version to upgrade the edition of Windows 10 devices to a new edition. By using a valid key, I will be upgrading Windows 10 Pro to Windows 10 Enterprise.

Prerequisites for Windows 10 Edition Upgrade

Before you use SCCM to change Windows 10 editions, take a look at some prerequisites.

  • Ensure you have a valid product key for the new version of Windows. This product key can be either a multiple activation key (MAK), or a generic volume licensing key (GVLK).
  • You must have the Configuration Manager Full Administrator security role to upgrade Windows 10 editions using SCCM.
  • The devices must run the Configuration Manager client software.

Supported Windows 10 Edition Upgrade paths

To change a Windows 10 edition, you must know the supported upgrade paths.

  • Windows 10 Pro to Windows 10 Enterprise
  • From Windows 10 Home to Windows 10 Education
  • From Windows 10 Mobile to Windows 10 Mobile Enterprise

Create Windows 10 Edition Upgrade Policy in SCCM

You can create a policy for the Windows 10 edition upgrade in SCCM using the following steps:

  • Launch the SCCM console.
  • Go to Assets and Compliance > Compliance Settings.
  • Right-click the Windows 10 Edition Upgrade node.
  • Click Create Edition Upgrade Policy.

On the General page of the Create Edition Upgrade Policy Wizard, specify the following information:

  • Name – Specify a name for the edition upgrade policy
  • Description – Enter a description.
  • Specify the type of edition upgrade that you want to create – Select Edition Upgrade for devices managed with the Configuration Manager client.
  • SKU to upgrade device to – From the drop-down list, select the target edition of Windows 10 desktop. In my case it is Windows 10 Enterprise.
  • License information: If you have a product key with you select Product Key option else select License file. Enter a valid product key for the target Windows 10 desktop edition.

Note – Once you enter the key, you cannot change or modify the key later. Therefore, you must enter the correct product key here.

Click Next.

Create Windows 10 Edition Upgrade Policy in SCCM
Create Windows 10 Edition Upgrade Policy in SCCM

On the Summary page, click Next.

Create Windows 10 Edition Upgrade Policy in SCCM
Create Windows 10 Edition Upgrade Policy in SCCM

Finally, on the completion page, click Close.

Create Windows 10 Edition Upgrade Policy in SCCM
Create Windows 10 Edition Upgrade Policy in SCCM

Deploy Edition Upgrade policy for Windows 10

We will now deploy the edition upgrade policy that we just created in the above step.

  • In the SCCM console, go to Assets and Compliance > Compliance Settings > Windows 10 Edition Upgrade node.
  • Right-click the Windows 10 edition upgrade policy you want to deploy and click Deploy.
Perform Windows 10 Edition Upgrade Using SCCM
Perform Windows 10 Edition Upgrade Using SCCM

Click Browse and choose the device collection to which you want to deploy the policy.

Select the schedule by which the client evaluates the policy. Click OK.

Perform Windows 10 Edition Upgrade Using SCCM
Perform Windows 10 Edition Upgrade Using SCCM

Once the client evaluates the targeted policy, it applies the upgrade. If you want to speed up the things, here is a bonus tip.

On the Windows 10 client computer, open Configuration Manager properties. Click Configurations tab and select the Windows 10 edition upgrade baseline and click Evaluate.

Evaluate the Compliance Policy

Check the Last Evaluation time date and time. Click OK.

Evaluate the Compliance Policy

Monitor the Windows 10 Edition Upgrade Policy Deployment

After you deploy the policy, you can monitor this deployment from the Deployments node of the Monitoring workspace.

If you have entered a valid key, I don’t see any issues with this deployment. But if you see the below errors, it indicates an unsuccessful deployment.

  • Not applicable for this device
  • Data type conversion failed

In addition to that, on the client computer open DcmWmiProvider.log. If the upgrade is successful, you should find similar lines in your log file.

Initializing the OS Edition Upgrade Provider. OsEditionUpgradeProvider
>>>>>>Starting GetAllInstances in OsEditionUpgradeProvider<<<<<<
>>>>>>Starting GetSingletonInstance in OsEditionUpgradeProvider<<<<<<
>>>>>>Starting PopulateInstanceForEditionUpgradeClass in OsEditionUpgradeProvider<<<<<<
>>>>>>Finished PopulateInstanceForEditionUpgradeClass in OsEditionUpgradeProvider<<<<<< 
>>>>>>Finished GetSingletonInstance in OsEditionUpgradeProvider<<<<<<
>>>>>>Finished GetAllInstances in OsEditionUpgradeProvider<<<<<< 
>>>>>>Starting PutInstanceAsync in OsEditionUpgradeProvider<<<<<<
Already upgraded, existing edition = 4 and target edition = 4

18 Comments

  1. Hello,
    Firstly, let me say thank you for all the SCCM / MECM knowledge you impart daily 🙂
    Secondly, I’m not trying to change my edition but I am trying to change my Activation Key. I’ve deployed this hoping that the compliance would check the key matches the deployed key. I guess it doesn’t get that far. Seems to check the OS Edition and stop there. I guess I’ll have to create my own task / app / package or script.
    Thanks again,

    Initializing the OS Edition Upgrade Provider. 10/12/2021 16:49:26 4560 (0x11D0)
    CreateInstanceEnumAsync: MDM_WindowsLicensing 10/12/2021 16:49:26 4560 (0x11D0)
    >>>>>>Starting GetAllInstances in OsEditionUpgradeProvider<<<<<>>>>>Starting GetSingletonInstance in OsEditionUpgradeProvider<<<<<>>>>>Starting PopulateInstanceForEditionUpgradeClass in OsEditionUpgradeProvider<<<<<>>>>>Finished PopulateInstanceForEditionUpgradeClass in OsEditionUpgradeProvider<<<<<>>>>>Finished GetSingletonInstance in OsEditionUpgradeProvider<<<<<>>>>>Finished GetAllInstances in OsEditionUpgradeProvider<<<<<>>>>>Starting GetAllInstances in OsEditionUpgradeProvider<<<<<>>>>>Starting GetSingletonInstance in OsEditionUpgradeProvider<<<<<>>>>>Starting PopulateInstanceForEditionUpgradeClass in OsEditionUpgradeProvider<<<<<>>>>>Finished PopulateInstanceForEditionUpgradeClass in OsEditionUpgradeProvider<<<<<>>>>>Finished GetSingletonInstance in OsEditionUpgradeProvider<<<<<>>>>>Finished GetAllInstances in OsEditionUpgradeProvider<<<<<< 10/12/2021 16:58:07 26620 (0x67FC)

  2. Its a great post. We successfully applied this to a test collection and the configuration shows compliant. However MS info of end client shows pro and system properties shows enterprise

  3. As always a great post. We successfully applied this to a test collection and the configuration shows compliant .However MS info shows pro and system properties shows enterprise

    system properties sows enterprise

  4. Avatar photo David Cook says:

    Hi Prajwal – just about to deploy this to a test target collection but just wondered if its then possible to go back and change the targetted collection to all of my machines?

    Thanks for your help

  5. Avatar photo Mayank Pandey says:

    Hello, This is a great post. I deployed this in my infrastructure, the issue I am facing is that os sku is updating but os caption is not. What can be done regarding this. Thanks

    1. Avatar photo ridaa de villiers says:

      Hi Mayank,
      Were you ever able to fix this? I’m get the same issue. The caption still states pro, but the sku states enterprise. When I logon to the machine, it states its on enterprise edition. When you run a powershell cmd get-windowsedition – online the machine returns enterprise. For now my solution is to run this script against machines, to prove to auditors that machines are on enterprise. Next step is to look at how to change the caption locally on the machine. Where it’s scraping this info from.

  6. hi Prajwal

    we don’t have individual license key we have downloaded Windows iso image from our Microsoft login portal , how do we upgrade for 1000 machine

  7. Avatar photo Taher Dohadwala says:

    Thanks, Prajwal,
    this helped me to retain the patch update support for our machines that originally came with Pro and were not upgraded to Enterprise.

  8. Avatar photo Travis Garnatz says:

    Do you know if this works for moving from Windows 10 Enterprise N to Windows 10 Enterprise?

  9. Avatar photo Johann Kuhne says:

    Getting the following error

    Invalid parameters specified. – 0x80070057 20/11/2019 02:06:35 PM 7532 (0x1D6C)
    Failed to process COsEditionUpgradeProvider::PutInstanceAsync – failed (0x80070057). 20/11/2019 02:06:35 PM 7532 (0x1D6C)

    Trying to upgrade from education to enterprise, we had a bunch of guys who deployed the wrong edition of Windows 10 in our environment and trying to upgrade them without having to re-install.

    1. Johann – I am getting exactly the same issue. Did you find a solution.

      1. Avatar photo Philippe Fournier says:

        i’am getting the ssame error from pro education to education.. find a solution?

        1. Avatar photo michel leard says:

          Have a solution ? We have some Pro Education we need to downgrade to Education (for direct access)

    2. Same issue, what is the fix for this error?

  10. Nice article. Would this support KMS keys as well?
    We have many systems with MAK keys that we would like to shift to KMS and change the edition from Pro to Enterprise.

Leave a Reply

Your email address will not be published. Required fields are marked *