Windows 10 Edition Upgrade Using SCCM

In SCCM, you can perform Windows 10 edition upgrade using the Edition Upgrade Policy. For example if want to upgrade Windows 10 Pro version to Windows 10 Enterprise, you can do that very easily.

There are several ways to change product key on Windows 10 PC. If you want to change product key on a single machine, you can do that from Windows 10 Settings. Another easy way is to run slui.exe 3 command and that shows a window and you can enter the product key.

The above solutions are fine if you have got small set of computers. However if you want to change or upgrade Windows 10 edition for large number of computers, you can use SCCM to do that.

In this post I will be using SCCM 1906 to upgrade Windows 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).
  • To perform Windows 10 edition upgrade using SCCM, you must be in the Configuration Manager Full Administrator security role.
  • 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

The steps to create or configure Windows 10 edition upgrade policy in SCCM :-

  • Launch the SCCM console.
  • Go to the 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 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.

Windows 10 Edition Upgrade Using SCCM

On the Summary page, click Next.

Windows 10 Edition Upgrade Using SCCM

Finally on the Completion page, click Close.

Windows 10 Edition Upgrade Using SCCM

Deploy Edition Upgrade policy

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.

Deploy Upgrade Policy

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.

Deploy Upgrade PolicyOnce 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 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 *