Microsoft really, really, really doesn’t want you to upgrade your old Windows 10 PC to Windows 11.
That’s the logic behind the strict hardware compatibility requirements the company imposed when it launched the new operating system in 2021. If you try to install Windows 11 on a computer with a CPU from 2018 or earlier, you get an error message, along with a suggestion that maybe you should buy a new PC.
Also: 8 reasons to avoid the latest Windows 11 update (hint: they’re all bugs)
The result is a thoroughly predictable chess game between Redmond and the Windows enthusiast community, with each new move raising the stakes. The owners of those “incompatible” PCs find ways to work around those restrictions, and Redmond finds a way to make those workarounds more difficult.
With the public release of the most recent feature update to Windows 11, version 24H2, Microsoft tightened the compatibility checks that Windows Setup runs when performing an upgrade. Those new restrictions blocked one widely used workaround, which used the open-source Rufus utility to create installation media that allows Windows 11 upgrades on incompatible hardware.
The new restrictions lasted for less than one week, as the community discovered that you could work around Microsoft’s compatibility blocks by manually entering a series of commands to tweak the registry. And now the developer of Rufus, Pete Batard, has released a new beta version of the utility that automates that process. But the way it’s implemented might make some people nervous.
On the surface, the Rufus 4.6 beta doesn’t look any different from its predecessor. When you select the option to bypass the Windows 11 hardware compatibility checks, it replaces the official Windows 11 compatibility appraiser, Appraiserres.dll, with a 0-byte file, just as the earlier version did; and it offers the same handful of additional customization options. To work around the 24H2 restrictions, though, it performs a few new tricks of its own.
Also: You can still upgrade old PCs to Windows 11, even if Microsoft says no: Readers prove it
The most noteworthy change is that creating installation media renames the official Windows Setup program, Setup.exe, to Setup.dll and adds a new custom program called Setup.exe. It also adds an $OEM$ subfolder in the Sources folder, containing additional subfolders and one file.
Double-clicking the newly created Setup.exe file produces this permission dialog, which shows that the file is a Windows Setup Wrapper, signed by Akeo Consulting, which is the corporate parent of Rufus.
So, what does that file do? You can see for yourself by inspecting the code on GitHub. Running that wrapper makes the necessary registry edits to bypass compatibility checks, then calls the original Windows Setup program.
As Batard notes in the comments on this code, this approach might arouse some suspicions.
Obviously, the fact that we “inject” a setup executable may leave people uncomfortable about the possibility that we might use this as a malware vector, which is also why we make sure that the one we sign and embed in Rufus does get built using GitHub Actions and can be validated to not have been tampered through SHA-256 validation …
In a separate discussion, Batard emphasizes that “Rufus only goes with the official bypasses that Microsoft themselves included, and not with an overreaching approach of disabling all hardware checks.”
That approach should provide a level of security that installations using these bypasses won’t be disabled in the future, he adds:
Rufus is working within Microsoft’s framework, with bypasses that Microsoft included for the installer, and, therefore, as has been the case ever since the release of Windows 11, I expect that the bypasses that Microsoft allows [will] not render a machine inoperative…
The new workaround should succeed with almost any PC capable of running Windows 10. And I have already received reports from readers of successful upgrades. One correspondent wrote: “I waited for your subsequent article, and then the 4.6 Beta version of Rufus. Everything ran flawlessly and the machine is now running 24H2 with an old processor and no TPM. It certainly makes me wonder why Microsoft insists on the hardware parameters.”
Also: The best Windows laptops: Expert tested and reviewed
Some oddball configurations, including very old Intel CPUs from the Windows Vista era and AMD processors that are at least a dozen years old, might be blocked because of restrictions tied to how Windows 11 operates and are independent of the compatibility requirements. In particular, CPUs that don’t support the SSE4.2 streaming extensions or the POPCNT instruction will fail with an error message specifically referring to those issues. There is no workaround.
I’ve heard from the owners of PCs powered by the 2008-vintage Intel Core2 Duo E8500 and several AMD A6 processors from 2011-2013 that failed on this score. (Use the CPU-Z utility if you’re not sure of your CPU’s specs.)
With those exceptions noted, you can once again use the Rufus installer to perform a Windows 11 upgrade on unsupported hardware, at least for now.
Your move, Microsoft.