OS Deployment using MDT fails in WinPE with ‘Network driver not found’
Hi, my name is Anirudh and today I will be talking about a scenario where the OS deployment using MDT fails with the error ‘Network driver not found’. This issue is not common for the reason that most of the NIC cards work fine with the in-box drivers in Windows PE but more often than not, there would be a situation where this error pops up.
Since we know that this error came after PXE and when we boot into WindowsPE, then we know for sure that the NIC card is working fine.
The first step to follow is to ensure that the NIC drivers are added to your WindowsPE. We should also ensure that for x86 and\or x64 boot image, we have the network drivers included which can be verified by checking the setting as below:
Please note that merely selecting this option is not enough. The WindowsPE WIMs should have these drivers. If someone is not sure whether the drivers are there in WindowsPE, then there is no harm in refreshing the deployment share to create new LiteTouchPE WIMs.
The next step is to look at the setupapi.dev logs which track driver installation failures. The setupapi.dev.log for WindowsPE is located in the folder X:\Windows\inf.
If you track the last entry in setupapi.dev.log, you might see something similar to the following
dvi: Class GUID of device changed to: {4d36e972-e325-11ce-bfc1-08002be10318}.
ndv: {Core Device Install} 3:41:20.204
dvi: {DIF_ALLOW_INSTALL} 3:41:20.329
dvi: Using exported function 'NetClassInstaller' in module 'X:\WINDOWS\system32\NetCfgx.dll'.
dvi: Class installer == NetCfgx.dll,NetClassInstaller
!!! dvi: Loading module 'X:\WINDOWS\system32\wlaninst.dll' failed.
!!! dvi: Error 126: The specified module could not be found.
!!! dvi: Error 126 loading CoInstaller(wlaninst.dll,WlanDeviceClassCoInstaller)
!!! dvi: Error 126: The specified module could not be found.
!!! dvi: Loading module 'X:\WINDOWS\system32\wwaninst.dll' failed.
!!! dvi: Error 126: The specified module could not be found.
!!! dvi: Error 126 loading CoInstaller(wwaninst.dll,WwanDeviceClassCoInstaller)
!!! dvi: Error 126: The specified module could not be found.
dvi: No CoInstallers found
If you go into a normal Windows installation and into C:\windows\system32, you will notice that the file wlaninst.dll is there so the above error might puzzle you for it says that it could not find the module but if you go to the same location in WindowsPE(X:\windows\system32), you will notice that the file wlaninst.dll is not present. This module is specific to a FULL OS and is not a part of WindowsPE.
The conclusion to derive from this is that the driver that you are installing is for a Full Fledged Operating System and not for Windows PE. To get this to work, you need to download the driver for WindowsPE and refresh deployment share to get the new WIM images with the drivers. Different vendors have different versions of PE driver packs and a few of them can be downloaded from the links below:
(NOTE: The links below are subject to change. There are also several other vendors which are not covered by the list below)
HP: https://ftp.hp.com/pub/caps-softpaq/cmit/HP_WinPE_DriverPack.html
LENOVO: https://support.lenovo.com/in/hi/documents/sccm-index
After you download these driver packs, you need to refresh the deployment share and import the BOOT.WIMs again. If you have the correct driver pack, you should not receive this problem again.
TIP: For Advanced users: If you are an Advanced user of MDT, you probably have your own style of maintaining the deployment share. What I find easier to manage is to keep the deployment share as clean as I can. I prefer creating a different folder within the drivers folder for BootDrivers as below
I then create a Selection Profile by the same name. A selection profile can be created under DeploymentWorkbench>Advanced Configuration>New Selection Profile and select the drivers folder BootDrivers
And then select the BootDrivers Selection profile in the Deployment Share Properties for the x86 and x64 LiteTouchPE
At this point I select the checkbox to completely regenerate the boot images for the simple purpose that I want it to spend less time to remove the old drivers from LiteTouchPE. I then import the new Boot Images to my WDS.
Hope this Helps
Anirudh Gandhi
Support Escalation Engineer |Microsoft Windows Core
Disclaimer : This information is provided ‘as-is’ with no warranties