I used to do this all the time. You don't need 5 different images although if you have the storage space, it would be simpler and time effective to just make the image and have that be that.
Assuming that you go with the former option I recommend a variation of what was mentioned before. Setup a local server/storage medium that your WinPE can access. This way each computer (WinPE) can have it's own folder for it's specific drivers.
From here it's quite simple if you are familiar with various parts of WinPE and it sounds like you are. Add drivers to an image using the following commands.
Use DoubleDriver to backup any Microsoft or Non-Microsoft drivers. This is super simple and allows you to extract all drivers in the required .inf
format.
Mount the install.wim
you want to alter:
Dism /Mount-Image /ImageFile:"C:\path\to\install.wim" /index:1 /MountDir:"C:\path\to\MountFolder"
Inject the specific drivers folder:
Dism /Add-Driver /Image:"C:\path\to\MountFolder" /Driver:"C:\path\to\DriverFolder /Recurse"
(If you want to add just one, then point directly to the .inf
file and remove /Recurse
flag)
Unmount and save your work:
Dism /Unmount-Image /MountDir:"C:\path\to\MountFolder" /commit
This can easily be added to the unattended.xml process, via bootable command line or the startnet.cmd
which is one of the first scripts to be executed during the installation.
Alternatively, you can install a new image to a computer. Press CTRLSHIFTF3 when you're brought to the Windows Setup prompts (Computer name, user name, etc...) and you will be booted into sysprep. From here you can just Restore the drivers file using the first initial DoubleDriver prog. This method may be easier but is has significantly less potential to be automated.
Full documentation on the above suggestion, adding custom commands to startnet.cmd
and other WAIK goodies.