With the next Windows 10 release planned for October 17th, I’m actually working on migrating a bunch of Windows 10 devices. Some are Windows 10 v1511, some v1607. Some have been installed using a fresh image and some have been migrated from a previous version. I thought it would be a good idea to inventory those devices to know their installation source (fresh or upgraded).
To achieve this, we’ll need to extend our SCCM inventory to grab a custom registry key and then build a query or report to show this information. For this post, I’m using SCCM 1706 but the procedure is the same for SCCM 2012 or later.
The Windows 10 Upgrade information is located in the device registry in the HKLM\System\Setup\upgrade\downlevelbuildnumber. We need to modify our hardware inventory to gather this value on our Windows 10 devices. I’ll guide you through this process if you’re not familiar with it.


To extend SCCM Inventory, the high-level steps are :
To generate the MOF file, we are using the popular tool RegKeytoMof created by MVP Mark Cochrane.

[pastacode lang=”css” manual=”%2F%2F%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%0A%2F%2F%20Added%20extensions%20start%0A%2F%2F%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%0A%0A%3CMOF%20EXTENTION%20GOES%20HERE%3E%0A%0A%2F%2F%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%0A%2F%2F%20Added%20extensions%20end%0A%2F%2F%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D” message=”” highlight=”” provider=”manual”/]
The code should look like this :
[pastacode lang=”css” manual=”%23pragma%20namespace%20(%22%5C%5C%5C%5C.%5C%5Croot%5C%5Ccimv2%22)%0A%23pragma%20deleteclass(%22Windows10Upgrade%22%2C%20NOFAIL)%0A%5BDYNPROPS%5D%0AClass%20Windows10Upgrade%0A%7B%0A%5Bkey%5D%20string%20KeyName%3B%0AString%20DownlevelBuildNumber%3B%0A%7D%3B%0A%0A%5BDYNPROPS%5D%0AInstance%20of%20Windows10Upgrade%0A%7B%0AKeyName%3D%22Win10UpgradeVersion%22%3B%0A%5BPropertyContext(%22Local%7CHKEY_LOCAL_MACHINE%5C%5CSYSTEM%5C%5CSetup%5C%5CUpgrade%7CDownlevelBuildNumber%22)%2CDynamic%2CProvider(%22RegPropProv%22)%5D%20DownlevelBuildNumber%3B%0A%7D%3B” message=”” highlight=”” provider=”manual”/]







[pastacode lang=”sql” manual=”select%20*%20from%20V_GS_Windows10Upgrade0″ message=”” highlight=”” provider=”manual”/]


Please fill out the form, and one of our representatives will contact you in Less Than 24 Hours. We are open from Monday to Friday.
Thank you for subscribing to our newsletter or requesting a quote. You will receive our next month's newsletter. If you have requested a quote, we will get in touch with you as soon as possible.
Something went wrong!
Thank for your reply!