9sBlog

How to Fix a Driver That Will Not Install on Windows 11

A driver that refuses to install on Windows 11 is usually the wrong package, the wrong architecture, or a signing rule. Here is how to tell which one.

Title card reading Driver Will Not Install on a dark green background

When a driver refuses to install on Windows 11, the cause is nearly always one of three things: the package does not match your exact device, it does not match your PC’s architecture, or Windows is refusing to trust it. The wording on screen tells you which one, so read the message carefully before you download anything else. Work through the checks below in that order and most cases resolve without touching a single security setting.

Start with the exact message on screen

Device Manager states its problems precisely, and each code points somewhere different. Microsoft’s list of Device Manager error codes gives the exact strings. Code 28 is “The drivers for this device are not installed” — nothing matched your device at all. Code 52 is “Windows cannot verify the digital signature for the drivers required for this device” — a package is there, but Windows will not trust it. Code 39 (“The driver may be corrupted or missing”), Code 31 and Code 10 (“This device cannot start”) all describe a driver that is present but will not load.

What you seeWhat it usually meansWhat to do
“The folder you specified doesn’t contain a compatible software driver for your device”Nothing in that folder declares your device’s hardware ID, or the package is built for a different architectureRead the device’s Hardware Ids and match the download to one of them
Code 28, device sitting under Other devicesNothing matched at allUninstall the device, then Action > Scan for hardware changes, or point Update driver at the folder holding the .inf
Code 52, or “The third-party INF does not contain digital signature information”The signature is missing or not trustedGet a current signed package from the device maker, not a driver-download mirror
“A driver can’t load on this device”Memory integrity is refusing an incompatible driverLook for an updated driver first; the setting lives under Core isolation details
Installs fine, device still dead, Event 3077 in the CodeIntegrity logThe Windows Driver Policy blocked a legacy cross-signed driverAsk the vendor for a version signed through the hardware compatibility program
New driver installs, the old one comes backA higher-ranked package is still in the driver storeRemove the old package, then reinstall

If nothing useful appears on screen, Windows keeps a plain-text record of every device install at %SystemRoot%\inf\setupapi.dev.log. It is dense reading, but two documented codes are worth searching for: 0xe0000248 means the install was blocked by group policy, which is common on work laptops, and 0x000005B4 means the install took too long and was stopped.

Match the package to the hardware ID, not the model name

A hardware ID is the vendor-defined string Windows actually uses to pair a device with a driver package. Most devices report several, listed from most to least suitable. To read them, open Device Manager, right-click the device, choose Properties, open the Details tab, and set Property to Hardware Ids (Compatible Ids is worth a look too).

That string, not the name on the box, is what has to appear in the driver’s INF file. Two laptops sold under the same model number can ship different wireless cards, and a download picked by marketing name simply will not match. Search the manufacturer’s support site using the ID you read.

Architecture matters just as much. On Arm64 Windows PCs, the emulation that runs ordinary x86 and x64 apps does not extend to drivers. Microsoft’s Windows on Arm FAQ is blunt about it: kernel-mode drivers and user-mode print drivers must be built as native Arm64 binaries, and you cannot run an x86 or x64 setup program to install an Arm64 driver. If your PC is an Arm machine and the vendor only offers an x64 package, no amount of retrying will help.

Install it by hand, then check the driver store

With the right package in hand, the manual route is the reliable one. Right-click Start, open Device Manager, right-click the device, choose Update driver, then browse your computer for drivers and point it at the folder holding the .inf file rather than at a setup .exe. Run any vendor installer as an administrator. If the device already has a bad driver on it, uninstall the device first — and if the dialog offers to remove the driver package too, tick that box — then restart so Windows attempts a clean install.

For anything more stubborn, pnputil.exe in %windir%\system32 does the same work from an elevated command prompt, and tells you more along the way.

CommandWhat it does
pnputil /enum-devices /problem /deviceidsLists every device currently stuck on a problem code, with its hardware IDs
pnputil /add-driver mydriver.inf /installAdds the package to the driver store and installs it on matching devices
pnputil /enum-driversLists third-party packages already in the store, with their oem#.inf names
pnputil /delete-driver oem#.inf /uninstallRemoves an old package and takes the device off it
pnputil /scan-devicesRescans for hardware changes

One line in Microsoft’s PnPUtil documentation explains a lot of “it installed but nothing changed” reports: if the driver is not the highest ranked driver on the system, PnPUtil will not force it onto the device. An older copy still sitting in the store can outrank your new one. Delete the old package, then install again.

Windows Update is worth a look too, because optional driver updates are never installed automatically. Under Settings > Windows Update > Advanced options, make sure updates for other Microsoft products are on, then open Optional updates and pick the drivers you want. It is one of the few times installing a Windows update right away genuinely solves a hardware problem.

When the driver installs but the device stays dead

On 64-bit Windows, a kernel-mode driver has to be signed before it can load at all, and that is where older drivers now run into trouble. Microsoft’s Windows Driver Policy is a policy in the Windows kernel that restricts which kernel-mode drivers can load: only drivers signed through the Windows Hardware Compatibility Program, plus an explicit allow list of legacy cross-signed drivers. As of the April 2026 security update, drivers signed under the now-expired cross-signed program are no longer trusted by default.

That change arrives gradually. The policy starts in evaluation mode, where affected drivers are audited but still allowed to load, and it moves to enforcement only after the device accumulates 250 hours of active uptime and at least three boot sessions with no policy violations (two on Windows Server); any violation resets the counters. So a driver can work today and stop weeks later. To see which state you are in, open Event Viewer and go to Applications and Services Logs > Microsoft > Windows > CodeIntegrity > Operational. Event ID 3076 means a driver was audited and allowed; 3077 means it was blocked. The answer to both is the same: a certified version from Windows Update or the manufacturer, or a question to the vendor about certification.

Two other blocks look similar from the outside. Memory integrity, which Microsoft says is on by default for most new Windows 11 devices, shows “A driver can’t load on this device.” The documented fix order is to find an updated, compatible driver through Windows Update or the manufacturer, and only then consider turning memory integrity off, under Settings > Privacy & security > Windows Security > Device security > Core isolation details. Microsoft warns that turning it off on a Secured-core PC takes the device out of its Secured-core state, with consequences ranging from minor to severe.

Separately, Windows carries a blocklist of drivers with known security vulnerabilities, on by default since the Windows 11 2022 update and always enforced when memory integrity, Smart App Control, or S mode is on. A concrete example: the April 2026 security updates added a block for a vulnerable third-party driver used by some backup software, and the symptom was disk images that would no longer mount, with Event 3077 in the log. The fix there is to update the affected software, not to remove the block. A driver already running is only blocked after a reboot, which is why some failures show up a day late. If one breaks the machine badly enough that you cannot get in to undo it, you can still start Windows 11 in safe mode and uninstall it from there.

Printers follow their own rules

Printer driver installs fail for reasons no other device shares. Windows protected print mode, where it is enabled, uninstalls printers that use third-party drivers, deletes the driver from the print driver store, and will not let non-compatible printers be reinstalled while it is active. It is not on by default yet, but it is worth checking under Settings > Bluetooth & devices > Printers & scanners > Printer preferences. If an administrator turned it on by policy, you will need them to turn it off.

The other change is ranking. Since July 1, 2026, Windows always prefers its own IPP inbox class driver over a third-party printer driver, and since January 15, 2026 no new printer drivers are published to Windows Update for Windows 11 and Windows Server 2025 and later. Vendor drivers can still be installed from the manufacturer’s own package, and existing ones still install. If the driver goes on but jobs go nowhere, the problem is more likely the queue or the connection, which is a different fix from a printer that keeps showing as offline.

What not to do

Do not reach for a third-party driver updater or a driver-download aggregator. Drivers belong to the device maker, the PC maker, and Windows Update, and an unsigned copy from a mirror is exactly what the signing rules exist to stop. Do not turn on test signing with bcdedit: it requires Secure Boot off, it puts a Test Mode watermark on the desktop, and Microsoft warns that changing boot entry options this way could render the computer inoperable. Removing the kernel driver policy outright is possible for an administrator, but Microsoft strongly discourages it.

The Startup Settings menu, reached from Settings > System > Recovery > Advanced startup > Restart now and then Troubleshoot > Advanced options > Startup Settings, does list option 7, “Disable Driver Signature Enforcement”, described as allowing drivers with improper signatures to be installed. It is a choice you make from that boot menu, so treat it as a way to test a theory rather than a repair.

If a driver install still fails after all of that, the Windows image itself may be damaged. From an elevated command prompt, run DISM.exe /Online /Cleanup-image /Restorehealth and then sfc /scannow, in that order. And if the device never appears in Device Manager at all, stop chasing the driver: that is a connection, port, or firmware problem, and the same thinking applies as when a second monitor is not detected — Windows cannot install a driver for hardware it cannot see.

Discussion

    Leave a comment