Deployment of Windows Vista fails with the error message, "The computer restarted unexpectedly or encountered an unexpected error. Windows installation cannot proceed. To install Windows, click "OK" to restart the computer, and then restart the installation.".
The setuperr.log shows the following:
2010-06-17 09:12:14, Error CBS Startup: Failed to process advanced operation queue, startupPhase: 0. Primitives are still pending.
2010-06-17 09:12:14, Error CBS Startup: POQ has not been processed yet, aborting startup processing. Startup processing will be attempted again. hr: 0x80004004
The setupact.log shows:
dispci.dll: ============END DisplayClassInstaller==============
WdfCoInstaller:  DIF_INSTALLDEVICE: Pre-Processing
WdfCoInstaller:  ReadComponents: WdfSection for Driver Service SynTP using KMDF lib version Major 0x1, minor 0x9
WdfCoInstaller:  DIF_INSTALLDEVICE: Coinstaller version: 1.9.7600
WdfCoInstaller:  DIF_INSTALLDEVICE: KMDF in-memory version: 1.7.6001
WdfCoInstaller:  DIF_INSTALLDEVICE: KMDF on-disk version: 1.7.6001
WdfCoInstaller:  Service Wdf01000 is running
WdfCoInstaller:  DIF_INSTALLDEVICE: Reboot is required, because the in-memory KMDF version is older than the coinstaller's version.
WdfCoInstaller:  DIF_INSTALLDEVICE: Update is required, because the on-disk KMDF version is older than the coinstaller
WdfCoInstaller:  VerifyMSRoot: exit: error(0) The operation completed successfully.
WdfCoInstaller:  Invoking "C:\Windows\system32\wusa.exe "C:\Windows\Temp\WdfTemp\Microsoft Kernel-Mode Driver Framework Install-v1.9-Vista.msu" /quiet /norestart".
Error 0x80004004 translates to:
# An advanced installer failed during setup
How to pre-install an updated version of KMDF:
1. Extract the install package out of the WDF co-installer
The KMDF 1.9 co-installer is in %WinDDK%\redist\wdf\<arch>\wdfcoinstaller01009.dll
Drag-and-drop the co-installer into Visual Studio or use File/Open to load the binary. You can also use any other resource extractor.
By default, you'll see the co-installers' resources. Look at the RCDATA resources. The KMDF co-installer has a resource called WDFCAB_RESOURCE
Right click on the resource name, select export and find a directory to extract the resources.
The filename needs to have a .cab extension (e.g. wdf.cab).
If you uncompress the .cab KMDF file, you'll see a file called Microsoft Kernel-Mode Driver Framework Install-v1.9-Vista.msu
expand –f:* wdf.cab tmp
2. Integrate the MSU into the OS image
Copy Vista setup files to C:\temp\vista
Use any zip utility (e.g. WinZip) to open the KMDF 1.9 MSU file, and extract Windows6.0-KB970158-x64.cab to C:\Temp\wdf
Integrate the CAB file to Vista setup files:
Dism /Get-WIMInfo /WimFile:c:\Temp\vista\sources\install.wim
Dism /Mount-WIM /WimFile:c:\Temp\vista\sources\install.wim /name:"Windows Vista ULTIMATE" /MountDir:c:\Temp\offline
Dism /image:C:\Temp\offline /Add-Package /PackagePath:C:\Temp\wdf\Windows6.0-KB970158-x64.cab
Dism /Unmount-WIM /MountDir:C:\Temp\offline /Commit
3. The updated WIM may be deployed using any of the documented methods in the WAIK and/or OPK toolset.
For example, the WIM may be deployed via WDS, via creating a bootable ISO image, or from USB flash device (UFD) as documented in the WAIK and OPK.
Please reference the WAIK and/or OPK documentation for further information on deployment scenarios.
The procedure for User Mode Drver Framework (UMDF) is similar, but begins with the co-installer %WinDDK%\redist\wdf\<arch>\wudfcoinstaller01009.dll
Article ID: 2494168 - Last Review: Feb 23, 2011 - Revision: 1