[Guide] Integration of drivers into a Win7/8/10 image

@ all users, who want to install Win7, Win8.1 or Win10:

Introduction:
When you are going to do a fresh OS install, it is a good idea to customize the original OS image by integrating the things you need or like to use (special drivers, additional hotfixes, features etc). This way you will save time and may avoid some troubles (see below) while doing all this later, that means once the OS is already up and running.
The easiest and safest way to customize an OS image from Win7 up is to use a special tool. My favorite one is NTLite (>LINK<), which has been developed by our Forum member and nLite maker nuhi. The free version of NTLite is able to do all the needed operations for this guide, including the removal and addition of special mass storage drivers like the Intel RST ones.

Here is a guide about how to to do it:


Integration of Drivers
(incl. AHCI/RAID/NVMe/USB)

into a Windows Image
by using NTLite


Guide for Win7, Win8/8.1 and Win10 (32/64bit)


Last updated: 09/05/2017

Changelog:

  • Updated:
    • Parts of the Guide (due to NTLite v1.4)
    • All inserted pictures

General notes regarding this guide:
  • The current guide version and its inserted pictures are based on NTLite v1.4 Build 5537. Although I am trying to keep my guide up-to-date promptly after major NTLite updates, I cannot exclude, that there are some differences between the pictures of this guide and the GUI of your used NTLite version/Build.
  • To demonstrate the procedure how to remove an in-box driver from a Windows Image and how to insert another driver into it, I have chosen a practical example, which may be helpful for Intel RAID users with an older Intel RAID system (up to 7-Series Chipsets), who want to use the best performing “classical” Intel RST driver v11.2.0.1006 named iaStor.sys from scratch instead of the in-box Intel RST(e) driver 12.0.1.1019 named iaStorAV.sys (Win8) resp. v15.44.0.1015 named iaStorAVC.sys (latest Win10 Build).
  • If you are missing anything within the guide or should somewhere find a mistake or a lack of clarity, please send me a PM. Thanks in advance!



I. Preparations

This is what you need:
  1. the latest available Build of the newest stable NTLite version (you can get it >here<)
    It is recommended to choose the tool architecture (32/64bit) to be the one of your host Windows OS (which you are currently running).
  2. the OS image you want to customize (either as ISO file or as content of a bootable OS DVD/USB Flash drive, the “Sources” folder should contain a boot.wim and an install.wim file) and
  3. the desired AHCI/RAID/NVMe drivers and other device drivers you want to integrate into the OS image (usually available >here< or >here<).

Further preparations:
  • Create a new folder outside the OS partition and give it any name (e.g. D:\NTLite-Works).
  • Copy the content of the Windows installation DVD/USB or - if using an ISO file - extract it (by using a tool like 7-Zip or WinRAR) into the just created folder.
  • Install NTLite onto your computer.



II. Working with NTLite

This is what you should do:
  • A. Start NTLite
      
      
    1. First steps:
      • Run NTLite.
        Now you will see the NTLite GUI Interface similar to this picture (Note: you can enlarge all screenshots by clicking onto them):

        NTLite Guide Pic1.png

      
      
    2. If you want to change the language of the NTLite GUI (English is DEFAULT), you can do it this way:
      Click onto the NTLite Menu point "File", choose "Settings", click onto the drop-down menu, which is underneath the word "Language", choose your favorite one and click "OK".
    3. 
      
  • Choosing the target directory:
    • Click onto the "Add" field from the Toolbar, navigate to the folder, where you copied/extracted the original OS image files, and click "Select Folder".
    • After having expanded the "Boot/Setup" string (leads to the BOOT.WIM) on the right hand side, you will see a picture like this:

      NTLite Guide Pic2.png

  • B. Customization of the INSTALL.WIM and BOOT.WIM

    Important infos regarding INSTALL.WIM and BOOT.WIM:
    • The file named INSTALL.WIM (or INSTALL.ESD, if even more compressed and encrypted) is very voluminous, because it contains the complete OS data in compressed form. That is why this file has to be customized, if the user wants to use a special third party driver from scratch or want to avoid the usage of a special in-box driver. Since the INSTALL.WIM may contain more than 1 OS Image Edition (example: Win10 Home and Win10 Pro), you have to pay attention which of them you want to customize. If you want to customize more than 1 image, you have to repeat the procedure with the other one(s) later on (see below).
    
    
  • The file named BOOT.WIM contains just the data, which are required for the first part of the OS Setup. Most important are the so-called "textmode/F6 drivers", which are required for the detection of the connected storage/USB disk drives resp. the management of the on-board AHCI/RAID/NVMe/USB3 Controllers at this early stage of the OS Setup. That is why a driver customization of the BOOT.WIM file is absolutely required, if the user wants either to boot off otherwise unsupported hardware or to force the usage of a better storage/USB driver from scratch.
  • 
    
  • Since the storage/USB drivers are in both image files (INSTALL.WIM and BOOT.WIM), both of them have to be customized.