Jeremy Davis
Jeremy Davis
Sitecore, C# and web development
Jeremy Davis
Jeremy Davis
Sitecore, C# and web development

Thanks Windows Installer - you could have just asked...

Sometimes UI 'improvements' don't actually help

Published 27 December 2021

One of the things I've been doing over the festive period is reinstalling some laptops. While it's usually a slightly tedious job, something Microsoft have done to the Windows Installer of late has made picking the Windows version you want harder than it should be. So I'm leaving myself a note for next time I crash into this problem...

The problem

I needed to install Windows on a shiny new laptop. It had been bought with Windows Home, because there was no "I don't need to buy a new O/S" option in the shop and I already own a Windows 10 Pro license that I wanted to use on it. So it arrived with the usual bloatware installed on Home and needed wiping.

So I grabbed a USB Stick, downloaded the Windows Media Creation tool and made myself a bootable Windows 10 install stick. (Yes, I am still actively avoiding Windows 11 for the moment) And then I went through the usualy dance of rebooting, failing to boot from USB, realising the machine ships with only "boot from SSD" enabled and fiddling with the BIOS... But after a bit of tedium I got it to boot the installer, and went through the "delete existing disk partitions" dance to clean out all the stuff that had been shipped on the laptop.

Microsoft have done a bit of UX optimisation - the installer no longer asks about your license key. In fact it asks more questions about "are you ok with uploading <some bit of data> to Microsoft" than it does about your installation requirements these day.

After a few minutes (and some annoying shouting from Cortana because the laptop's default volume was "high") it went through the install fine. But when it booted up, I noticed that it was running Windows Home. Which was not what I wanted...

What's going on?

I turns out that if you're installing with UEFI enabled, the installer now looks into some flash memory in your computer to see if you have a built-in windows key shipped by your OEM. Since I'd bought the laptop with Windows Home installed, that's what was in this memory.

So the installer was happily assuming that was the key I wanted to use for my install, and not giving me an option to change the choice.

You can see what (if any) key you have stored using this viewer tool but be aware that as I'm witing this, Windows' built-in virus protection really doesn't seem to like it. Perhaps unsurprisingly, as Microsoft might see poking about in this data as dodgy:

So you may choose not to go down that road...

Possible solutions

Having spent an hour or so trawling through google for research, there seem to be two main ways to address this issue:

  • You can let it install as above, and then use the "change my product key" option in Windows.
    This will work, but it can be a bit of a hassle. Windows installs some different things for Pro compared to Home, and changing the version afterwards does not fix all of this. So if you want the full Pro experience you will need to go through the process of reset Windows back to the fresh-install state in order to get those extra bits.

  • Or you can make use of the installer's ability to pick up extra "unattended install" data from your install media.
    It is possible to put config on your install device that says "ignore what else you may see, please install Windows Pro". That will make sure all the right files are installed, and you only need to activate the right license key afterwards to get the full Pro experience.

To my mind, the second option here was the better one.

You need to create a text file named EI.cfg and put it into the sources folder on the USB disk that the media creator set up for you. There are lots of options you can set here, using an "ini file" style format. But the key ones to get Pro vs Home are:

[EditionID]
ProfessionalN
[Channel]
Retail
[VL]
0

					

You can also choose other versions of Windows (If you wanted the "N" version of Pro perhaps) using the advice in this Stack Exchange answer.

Once that file is saved, and you run through the install processs again, you'll get your chosen version. Though it still won't say anything on the screen about which version you're installing.

But note that once Windows boots up, the "Activation" page in Settings may be a bit unhappy - it will know that the Home key in your BIOS memory isn't valid for the version you have installed, so you'll need to provide your valid Pro product key to allow Windows to activate. If you log in with a Microsoft Account, and you have a Pro key attached to that it may get picked up automatically. But you might need to manually enter the right key on the Activation settings page.

And with that done, I was able to get back to the fun process of installing useful stuff onto these laptops, and testing out the new hardware with a bit of festive relaxation.