In addition to one of my previous questions how to make an Unattended Windows 8.1 installation ISO, I had the following thought; lets say, your wanting to make a custom Windows installation for a company.

The problem is, in that company they have 5 different models of computers, wich all require different drivers. Can you make some kind of condition to check for the PC model and then install that driver for this specific PC? Or do I then need 5 different images?

You also dont wan't to have any user account on this computer, that's for the user to make one. Is this possible to delete all user's before you sysprep your computer and run WinPE on it?

  • What you SHOULD do is have a location on your image (or on a network storage, for example, to save space) with the drivers for all machines (extracted so you have the .inf and supporting files) and you write your unattend.xml file to give the location of the drivers so Windows knows where to look during the setup phases. – Kinnectus Jul 13 '15 at 11:52
  • @BigChris And Windows then automaticly knows which drivers to install? – Bas Jul 13 '15 at 11:53
  • It should do, yes. When installing devices Windows looks at the driver files and tries to find the hardware ID of the device in the driver file. If the ID is found then that driver can be used for that device. It's not as simple as that, but it's one way that a manufacturer can write one driver for many devices that have (roughly) the same functionality. Imaging and drivers is not an easy task and it involves a lot of learning...! – Kinnectus Jul 13 '15 at 11:56
  • @BigChris Alright, and what do you mean by extracting the installation? – Bas Jul 13 '15 at 11:58
  • 2
    Many drivers are obtained in .zip or .cab or .exe format. Sysprep and unattended installations do not know how to extract these, hence you need to extract the files into a folder. Some driver manufacturers package the drivers inside an exe and they can be almost impossible to extract - in these cases you may not get a particular device to work without running the exe to install the drivers on each machine separately... – Kinnectus Jul 13 '15 at 12:01

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.



The idea with imaging multiple pcs with different model numbers and hardware is to using imaging software like SCCM. With that, you can create a single image that then, through task sequences, grabs additional drivers as it detects what's needed during install. It also installs applications, updates, and a bunch of other stuff like joining to a domain during install. It's a fantastic tool.

Does your company have access to SCCM? If not, you can use WDS (Windows Deployment Services and MDT (Microsoft Deployment Toolkit) to create a similar setup. For free (assuming you already have a Windows 2008 server or higher)

** EDIT **

I don't understand all the down voting. SCCM and WDS/MDT are both legimate and arguably the most Microsoft approved methods for achieving this.

  • Alright, but can I do this manually aswell? If so, what's the process? – Bas Jul 13 '15 at 11:59
  • As others have suggested, this method would suffice. technet.microsoft.com/en-us/library/cc766485(v=ws.10).aspx – Geruta Jul 13 '15 at 12:05
  • As, don't forget to create the network share, assign it read access by everyone, and place the raw .ini and .sys files from the driver in there. – Geruta Jul 13 '15 at 12:07

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.