Driver load error when using boot.wim image to install Windows Server 2016

Applies to: Windows Server 2016

Symptoms


You inject the latest Windows Server 2016 cumulative update (CU) into a boot.wim image. When you use the image for deployment, the operating system installation hangs at the loading-drivers stage.

installation wizard

Additionally, the setupact log contains the following error messages:

Cause


This issue occurs because the setup.exe file that's in the updated boot.wim image doesn't not match the setup.exe file that's in the original source media.

Resolution


To correctly update the boot.wim image, follow these steps.

Directories for setup

D:\InstallMedia

This is where all the Windows Server 2016 media is copied for image processing.

D:\mount

This is the folder that is used to mount boot.wim and install.wim to inject updates.

Steps for injection

  1. Mount install.wim from d:\installmedia\sources to d:\mount.
  2. Use the dism command to inject the latest Windows Server 2016 servicing stack update. For example, March 14, 2017, servicing stack update.
  3. Use the dism command to inject the latest Windows Server 2016 cumulative update package. For example, August 16, 2017, cumulative update.
  4. Commit the changes and unmount install.wim.
  5. Repeat steps 1 to 4 for Index 1 and 2 of boot.wim.
  6. Mount boot.wim Index 2. Use Windows Explorer to sort files by date modified, and then look for setupe.exe and other files on the mounted image. For example, in the d:\mount\sources folder.(setup.exe, locale.nls, setupplatform.dll, setupplatform.exe, reagent.dll, and anything else that looks recently modified).
  7. Copy the modified files to d:\installmedia\sources. This will be used to create ISO image.
  8. Start the computer by using the updated image.

Commands example

Dism /mount-wim /wimfile:D:\InstallMedia\sources\Boot.wim /Index:1 /MountDir:D:\mount /checkintegrityDism /Add-package /Image:D:\mount /Packagepath:D:\updates\windows10.0-kb4013418-x64_b7165b95be791aeb025135efe60e00db2800c5c6.msuDism /Add-package /Image:D:\mount /Packagepath:D:\updates\windows10.0-kb4025339-x64.msuDism /Unmount-Image /MountDir:D:\mount /CommitDism /mount-wim /wimfile:D:\InstallMedia\sources\Boot.wim /Index:2 /MountDir:D:\mount /checkintegrityDism /Add-package /Image:D:\mount /Packagepath:D:\updates\windows10.0-kb4013418-x64_b7165b95be791aeb025135efe60e00db2800c5c6.msuDism /Add-package /Image:D:\mount /Packagepath:D:\updates\windows10.0-kb4025339-x64.msu

Using Windows Explorer, do a sort by date modified and look for setupe.exe and other files in the mounted image. For example, d:\mount\sources (setup.exe, locale.nls, setupplatform.dll, setupplatform.exe, reagent.dll, and anything else that looks recently modified. There should be 22 files that have a modified timestamp in this sources folder. Copy these modified files to d:\installmedia\sources.

Dism /Unmount-Image /MountDir:D:\mount /CommitDism /mount-wim /wimfile:D:\InstallMedia\sources\Install.wim /Index:4 /MountDir:D:\mount /checkintegrityDism /Add-package /Image:D:\mount /Packagepath:D:\updates\windows10.0-kb4013418-x64_b7165b95be791aeb025135efe60e00db2800c5c6.msuDism /Add-package /Image:D:\mount /Packagepath:D:\updates\windows10.0-kb4025339-x64.msuDism /Unmount-Image /MountDir:D:\mount /Commit