Nanoqian
10-05-2025
Installing Windows Drivers During Setup The Right Way With $WinPEDriver$ directory
If you are installing Windows and it errors out because it can't find storage devices and you try to find a Windows driver for the storage device via the "browse for a driver" dialog box, you'll probably find that it doesn't work.
Since you probably have no idea what is wrong, here is a probable solution to this issue.
The Problem
Essentially even if you give Windows setup the .ini files via the "browse for drivers" option it will not load the drivers properly. Why? Who knows.
But you have to load the drivers BEFORE Windows PE (The OS Windows setup runs) loads, then it will work.
the specific problem I had...
HP Z640 was not seeing C612 controller during install, even when bios set it to SATA and AHCI mode.
Drives seen in BIOS but not windows setup... trying to install RSTe drivers led to error (With no explanation, yay).
The General Solution
Go into your Windows install media root directory (the one with setup.exe) and make a folder called $winpedriver$.
Put the .ini and cab files for the drivers in that directory. Then restart the install, and it should work because Setup auto injects them.
This is a not super well documented OEM deployement mechanism. They probably use it for including their drivers on the OEM images.
Example:
USB_DRIVE\
│ setup.exe
│ autorun.inf
│
├── sources\
│
├── boot\
│
└── $WinPEDriver$\ <--- the important part
├── iaAHCIC.inf
├── iaStorA.sys
├── iaStorAC.inf
└── iaStorAC.sys

<< BACK