How to install Windows 7 on a PCI Express (NVMe) SSD

If you try to install Windows 7 on an SSD disk which is connected via the PCI Express bus (NVMe), you might face the issue that the drive is not presented in the Setup program. Due to this behavior, it is not possible to install the Windows 7 operating system on such hardware. Here is the solution.
nvme windows 7

Most modern PCs come with SSDs which are use either SATA (AHCI) or NVM Express. They use a SATA connector if using SATA, otherwise the connector may be different depending on the form factor - in a desktop PC, they go into the PCIe slot, in an ultrabook, they use the M.2 connector. But Windows 7 was only designed to work with SATA disks. It was Windows 8.1 which first got support for NVMe. Thankfully, Microsoft has released an update with native drivers for Windows 7 which add NVM Express support.

To fix the problem of not being able to install Windows 7 on an NVMe SSD, the first step you should take is download KB2990941 and KB3087873 patches. After that, you can rebuild the installation media and integrate the updates into it. These updates also enable TRIM support for your NVMe SSD!

Do the following.

  1. Download patches using the following links:
  2. Suppose you download the packages (MSU files) to C:\packages
  3. Copy all the files from Windows 7 SP1 setup media (ISO/DVD/USB) to a folder, let's say it will be C:\ISO\Win7SP1.
  4. Open an elevated command prompt.
  5. At the elevated command prompt, type the following command:
    Dism /Get-WIMInfo /WimFile:C:\ISO\Win7SP1\sources\install.wim

    It will show you the indexes of the images contained in the WIM file. Note the edition of Windows 7 for which you have the product key and its appropriate index. Suppose for example, you are using Windows 7 Ultimate.

  6. Type the following command to mount the offline Windows image.
    Dism /Mount-WIM /WimFile:C:\ISO\Win7SP1\sources\install.wim /Name:"Windows 7 Ultimate" /MountDir:C:\ISO\unpacked

    This command will mount the Windows 7 SP1 Ultimate edition files to the folder C:\ISO\unpacked. The folder must exist on your system, otherwise correct the path.

  7. Type the following command to integrate KB2990941 for Windows 7 64-bit
    Dism /Image:C:\ISO\unpacked /Add-Package /PackagePath:C:\packages\Windows6.1-KB2990941-x64.msu

    For 32-bit Windows 7, type the following command

    Dism /Image:C:\ISO\unpacked /Add-Package /PackagePath:C:\packages\Windows6.1-KB2990941-x86.msu

    Correct the file paths and file names as necessary. I used the actual paths and file names on my computer as an example.

  8. Now, type the following command to add the KB3087873 package to the image. Do it as follows.
    For 32-bit Windows 7 SP1, execute this command:
    Dism /Image:C:\ISO\unpacked /Add-Package /PackagePath:C:\packages\windows6.1-KB3087873.msu

    For 64-bit Windows 7 SP1, execute this command:

    Dism /Image:C:\ISO\unpacked /Add-Package /PackagePath:C:\packages\windows6.1-KB3087873.msu

    Again, correct the file paths and file names as necessary. I used the actual paths and file names on my computer as an example.

  9. Once this is done, type the following command to commit the changes and unmount the image.
    Dism /Unmount-WIM /MountDir:C:\ISO\unpacked /Commit

You are done. Now you can use the updated WIM file to install Windows 7. Now it will be possible to install it on PCI Express (NVMe) SSDs.

Support us

Winaero greatly relies on your support. You can help the site keep bringing you interesting and useful content and software by using these options:

If you like this article, please share it using the buttons below. It won't take a lot from you, but it will help us grow. Thanks for your support!

Author: Sergey Tkachenko

Sergey Tkachenko is a software developer who started Winaero back in 2011. On this blog, Sergey is writing about everything connected to Microsoft, Windows and popular software. Follow him on Telegram, Twitter, and YouTube.

29 thoughts on “How to install Windows 7 on a PCI Express (NVMe) SSD”

    1. i’ve tried this method. i’ve unzipped the original iso in the c:\iso\win7 folder, i’ve unzipped the packages in c:\packages
      i read the WIM file, i mont the .wim image. then i add the packages (i don’t understand why the program write in the unpack folder), when i finish the work. i don’t know how to create the iso file. i’ve the putt all the content of the win7 folder in a new iso file ?

      can someone explain it to me ?

  1. Worth noting that you also need a motherboard with a BIOS that can see NVMe PCI drives at boot time – and offer them as a boot option. Not all motherboards do. Many manufacturers are only including this functionality on new mobos rather than offering updated BIOS firmware for older mobos.

  2. This will let Windows see the drive, but you would still have to F6 the drivers for your brand of NVMe

  3. If the article specified that those DISM commands should ALSO be used to inject these hotfixes into the boot.wim file (Index #2), then the Windows Setup application would be able to see NVMe SSDs without the need for manually supplying drivers during Setup.

  4. this will NOT work.
    You have to do this for the BOOT.WIM also
    for BOTH of the included images 1 and 2 !

  5. For me, installing Windows 7 Professional x64, it had to be;

    Dism /Mount-WIM /WimFile:C:\ISO\Win7SP1\sources\install.wim /Name:”Windows 7 PROFESSIONAL” /MountDir:C:\ISO\unpacked

    Dism /Image:C:\ISO\unpacked /Add-Package /PackagePath:C:\packages\Windows6.1-KB2990941-v3-x64.msu

    Dism /Image:C:\ISO\unpacked /Add-Package /PackagePath:C:\packages\windows6.1-KB3087873-v2-x64.msu

  6. I tried all of this after adding USB 3 support to the install media. I injected both items into both sections of boot.wim & the ultimate section of install.wim. What I then found is the usb 3 driver problem rose it head again! Reinstalling the usb 3 drivers did not solve the problem, I had to start over!
    So to recap, I can get past the usb 3 driver problem, but as soon as I use this advice to install SSD support I cannot get past the screen asking for CD/DVD drivers, to get to see if Install programme can recognise the SSD!

  7. Can you tell me how do I do this in Ubuntu? It doesn’t have CMD, so I can’t type “Dism /Get-WIMInfo /WimFile:C:\ISO\Win7SP1\sources\install.wim”

  8. OK, after trying MILLIONS of ways to get W7 installed on my Samsung NVMe drive, I found that MSI has the only working solution for me, and it is mega simple !
    You will need:
    – MSI W7 Smart tool
    – W7 iso file
    Fucking simple.
    Simply run the MSI W7 Smart tool, select the W7 iso file, select to add USB, NVMe and iRST drivers.
    Then select your USB target flash drive.
    MSI then makes a bootable USB disk with NVMe drivers.

    All the [censored]ing bullshit I had to do for [censored]ing 2 days trying to install W7 on this Samsung 950 drive.
    Nobody except for MSI decided to make this simple tool, Not Intel, with their incomprehensible technical note, not Microsoft who should have included the NVMe drivers standard in the downloadable W7 iso.

    I guess that MS tries to make this stuff as difficult as possible, so ppl will not try to install W7 anymore. So, I think MS is telling everybody that they are not allowed to use the NVMe drivers or whatever. In fact, the Reddit poast about this subject has a not working link to the Samsung drivers.
    Anyway, I might have gotten a bit crazy, because how on earth is it possible that such a small missing driver can cause such problems, and so many post on internet with EXTENSIVE DIFFICULT explanations, all not working. (except for the solution of MSI, which is childish simple)
    My next mobo will be MSI, not Asus.

    1. I want to thank Robert for pointing me in the right direction. It truly was the most simplest streamlined solution. Especially since Samsung has forsaken Windows 7 install (the only drivers I could find were executable and could not be extracted. Not ideal for Preinstall environments! for shame Samsung!)

    2. I wanna thank you, i really do, i was strugling with this for over a month now, i have a WD Black NVME and i downloaded 10 iso of windows 7 i think, looking for one with nvme drivers and usb 3.0.
      Its f… simple as using that tool!! OMG Thanks Man!

      Grettings from Bolivia, im sorry for my english.

    3. Thank you Robert. I was trying the dism commands above and they did not work for me. The MSI Smart Tool is f[censored] awesome. I primarily needed the nvme driver so I could install Windows 7 on my Samsung 960 EVO. Thanks again for your help!

  9. As pointed out by some commenters, this has to be done for boot.wim also besides install.wim. The USB 3 and NVMe KB updates especially integrated into boot.wim.

  10. This method is tested and working for Samsung 970 Evo PLUS. Tested on Asrock AB350M + Ryzen 5 1500X. The Install menu is listed my NVME, installed on the board. SO everyone with 970 evo PLUS can try it.

Leave a Reply

Your email address will not be published.

Exit mobile version
Using Telegram? Subscribe to the blog channel!
Hello. Add your message here.