This time, a small blog about the PID.txt. This blog will show you that reinstalling an existing device and enrolling it into autopilot white-glove could sometimes get you in trouble.
1. Introduction
No red screen like you would expect like I was talking about in this previous blog.
This week we were asked to reinstall some existing Azure Ad / Intune enrolled devices before they were handed to some new employees, so we did.
Before we reinstalled the device, we made sure it was prepared to be enrolled with Autopilot White Glove. As shown in the blog above, we made sure the TPM wasn’t going to haunt us this time. We also made sure the device hash was still available in Intune, and an Autopilot profile was attached.
So we reinstalled the devices and started the Autopilot White glove (Autopilot for pre-provisioned deployment).
But just within a few seconds after checking if a deployment profile was targetted, this error popped up: 0x80180022
I guess we need to do some troubleshooting. Pressing shift + f10 to get a cmd in the system context and opening Google would be the first things to start with.
Troubleshooting the 0x801800022 error
I can show you all kinds of troubleshooting stuff, but honestly, when googling this error (HRESULT = 0x8018022), within a few seconds, I knew the problem: The device being provisioned is running Windows Home Edition.
Troubleshooting Windows device enrollment problems in Microsoft Intune – Intune | Microsoft Docs
Huh? That’s strange, we just reinstalled the device with Windows 10 Pro. At least, that’s what we thought. To be sure we opened WinVer
As shown above, it’s indeed Windows 10 Home, and of course, Windows 10 Home is of course not supported!
But what happened? The device had a valid purchased Windows 10 Pro license. Apparently, the device itself had an embedded Windows 10 Home License. Let’s take a closer look at what happens when you are installing Windows 10 and what we choose.
PID.TXT / EI.CFG
Let’s start with the first option; if a PID.txt (Product ID txt) is found in the source installation media, it will ignore all the next options and will use the version that corresponds to the product key you configured.
So, how do you configure the Product ID / PID.txt?
The value has to contain the generic product for Windows 10 Pro: VK7JG-XXXXX-XXXXX-XXXXX-XXXXX. This PID.txt file needs to be placed inside the .\sources folder on your installation medium
If you don’t want to use the PID.TXT, feel free to use the Edition ID (EI.CFG) option. Just like we did with the PID.txt, we need to place this config file inside your .sources folder. The config file should look like the one below.
You must specify the Edition/Channel and the Volume licensing settings.
2. UEFI
If no PID.txt was found, it will try to detect the OEM product key, which could be embedded in the UEFI.
The Locked Preinstallation (SLP) Product Key resides with a Microsoft Digital Marker (MSDM) Advanced Configuration and Power Interface (ACPI) table embedded in the Unified Extensive Firmware Interface (UEFI) BIOS
Some fancy words I guess… let’s open RWEverything and take a look
Download RWEverything 1.7 (majorgeeks.com)
When installed, first you need to click on Access ACPI Tables. When everything loads, you can click on MSDM I mentioned in the fancy words.
You will notice the product key will be shown in 2 places.
When you don’t want to download RWeverything, just run this simple CMD command:
wmic path softwarelicensingservice get OA3xOriginalProductKey
3. Manually enter the product key
I guess this one, needs no further explanation, you could enter the product key when you will be prompted to enter it or just press skip.
4. Home/Pro/Enterprise question
When all other options fail, you will be prompted to select the version you want to install. If one of the earlier options was successful, this one will be skipped.
5. What’s our Choice?
We chose the pid.txt option for now because we had already reinstalled the device, and it had a valid Windows 10 Pro license even though the device itself had a Windows 10 Home license embedded.
Of course, the customer is using Microsoft 365 Business Premium licenses. When you join your device to Azure Ad, your Windows 10 device is automatically changed to Windows 10 business as part of the license.
But why reinstall an existing device with a USB stick when you have way better options? One of them would be to use the Autopilot reset option or a fresh start (when data exist outside the user profile)
I showed you all the options you have to reset or wipe a device in this blog.
6. Checking the device before Autopilot
Before enrolling your device with Autopilot, you could add a check for yourself to test if the build-in Windows 10 Product Type is Windows 10 Professional. This is an example you can use before you launch Autopilot
Conclusion
When you don’t want to get angry when you end up with a Windows 10 home installation, make sure your device is always installed with valid activated Windows 10 Pro. When your device has an embedded Home license you could use the PID.txt option.
But beware; make sure you check with your licensing partner to see if you are licensing your devices the right way! I guess they will shoot you for it when not using the right licenses
Please note: As I showed you in the blog I mentioned earlier, when you want to reset an existing Azure Ad enrolled device, just use the fresh start or autopilot reset option!
Very interesting thank you !
I prefer to use wipe to reset an existing device, I’ve had various not consistent behaviour with fresh start or autopilot reset, but that was “before” .
Just need to take the time to test all reset/reinstall methods or… would be a nice blog to write ? 🙂
Thanx I guess so :P.
I am also mentioning all of the possible options you have when resetting/fresh start a intune device
https://call4cloud.nl/2021/04/to-retire-or-not-to-wipe/