Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.

When deploying Windows Vista, Windows 2008, Windows 7, Windows 2008 R2, or newer Windows OS using an Configuration Manager 2007 OSD Task Sequence, the Task Sequence fails during the "Setup windows and ConfigMgr" task. Examining the SMSTS.log file shows the following errors:

SMSTS.log
Set command line: "<PACKAGE_SOURCE>\<WINDOWS_INSTALLATION_PACKAGE_ID>\SOURCES\SETUP.EXE" "/unattend:C:\_SMSTaskSequence\unattend.xml" /noreboot OSDSetupWindows
Executing command line: "<PACKAGE_SOURCE>\<WINDOWS_INSTALLATION_PACKAGE_ID>\SOURCES\SETUP.EXE" "/unattend:C:\_SMSTaskSequence\unattend.xml" /noreboot OSDSetupWindows
Process completed with exit code 31 OSDSetupWindows
Windows Setup completed with exit code 31 OSDSetupWindows
Entering ReleaseSource() for <PACKAGE_SOURCE>\<WINDOWS_INSTALLATION_PACKAGE_ID>\ OSDSetupWindows
reference count 1 for the source <PACKAGE_SOURCE>\<WINDOWS_INSTALLATION_PACKAGE_ID>\ before releasing OSDSetupWindows
Released the resolved source <PACKAGE_SOURCE>\<WINDOWS_INSTALLATION_PACKAGE_ID>\ OSDSetupWindows
exitCode == 0, HRESULT=80004005 (e:\nts_sms_fre\sms\client\osdeployment\setupwindows\setupwindows.cpp,440) OSDSetupWindows
Windows setup failed, code 31 OSDSetupWindows
setup.run(), HRESULT=80004005 (e:\nts_sms_fre\sms\client\osdeployment\setupwindows\setupwindows.cpp,1707) OSDSetupWindows
Exiting with code 0x80004005 OSDSetupWindows
Process completed with exit code 2147500037 TSManager
!--------------------------------------------------------------------------------------------! TSManager
Failed to run the action: Setup windows and ConfigMgr.
Unspecified error (Error: 80004005; Source: Windows) TSManager

The execution of the group (Setup Operating System) has failed and the execution has been aborted. An action failed.
Operation aborted (Error: 80004004; Source: Windows) TSManager
Failed to run the last action: Setup windows and ConfigMgr. Execution of task sequence failed.
Unspecified error (Error: 80004005; Source: Windows) TSManager


Examining the Setupact.log reveals the following errors:

Setupact.log
<Date> <Time>,  Info                         PnPIBS: Installing driver C:\_SMSTaskSequence\drivers\<#>\<driver>.inf ...

<Date> <Time>, Info       [0x0640ae] IBSLIB PublishMessage: Publishing message [Windows Setup could not install one or more boot-critical drivers. To install Windows, make sure that the drivers are valid, and restart the installation.]
<Date> <Time>, Info                         [SETUP.EXE] Called script [X:\windows\Setup\Scripts\ErrorHandler.cmd] to handle fatal error
<Date> <Time>, Info       [0x070042] DIAG   CallBack_DiagnosticDataSend: Called with notification for Error published by ErrorHandler

<Date> <Time>, Info       [0x0601d7] IBS    InstallWindows:Error Type = 3211266

Symptoms

This issue may be caused be a driver not being signed. In certain cases, when installing Windows Vista, Windows 2008, or newer Windows OSes, the drivers must be signed in order for them to install, such as in the case of Boot Critical drivers. If Windows Setup cannot install certain type of drivers, such as Boot Critical drivers, Windows Setup will fail, causing the Task Sequence to fail.

Cause

There are two solutions to the problem:

1. Ensure that the driver which is causing Windows Setup to fail at is properly signed.

Note If the driver is an OEM driver and not showing as being properly signed, try downloading the latest driver from the OEM manufacturer and/or contacting the OEM manufacturer.

2. Remove the affected driver from the driver package that is being applied either via the "Apply Driver Package" or "Auto Apply Drivers" task. The driver can then be installed when the Task Sequence is in the full Windows OS via an "Install Software" task.

To determine if the driver is properly signed or not, examine the setupact.log and determine what driver Windows Setup is failing at. The driver that is failing to install will be indicated by the INF file specified in the line

PnPIBS: Installing driver C:\_SMSTaskSequence\drivers\<#>\<driver>.inf ...

which is right before the line:

"Windows Setup could not install one or more boot-critical drivers. To install Windows, make sure that the drivers are valid, and restart the installation.]".

To determine what driver the INF file belongs to and if the driver is signed:

  1. In the Configuration Manager 2007 Admin Console, navigate to the "Operating System Deployment" --> "Drivers" node.

  2. Make sure that the "Drivers" node is highlighted and then go to the "View" menu and select "Add/Remove columns...".

  3. In the left hand column, select "INF File" and then click on the "Add ->" button, then select "Signed" and click on the "Add ->" button again. Both "INF File" and "Signed" should now be in the right hand column. Click the "OK" button.

  4. On the right hand pane showing the drivers, there should now be two additional columns labeled "INF File" and "Signed". Use these columns to first locate which driver corresponds to the INF file being shown as failing in the setupact.log, and then to determine if the driver is signed. If the driver is signed, the value under the "Signed" column should be True. If necessary, sort by the "INF File" column to more easily locate the proper INF file. If the drivers are sorted in subfolders under the "Drivers" node, it may be necessary to also add the "INF File" and "Signed" columns to the subfolders to locate the corresponding INF file.

It can also be determined if the driver is signed or not by navigating to the "Operating System Deployment" --> "Drivers" node, locating the driver using the steps above, and then clicking on the driver in the right hand pane. When clicking on the driver, an information pane should appear after a second or two. Under the "General" tab, there should be a field labeled "Digital Signer". If the value of this field is "Unsigned", then the driver is NOT signed. If the value of the field has a name of a digital publisher next to it (usually "Microsoft Windows Hardware Compatibility Publisher"), then the driver is signed.

For the driver to be properly signed there should be a corresponding .CAT file for the .INF file in the driver source files. If there is a corresponding .CAT file, this is an indication that the driver MAY be signed, but not a guarantee that the driver IS properly signed. If there is no corresponding .CAT file, the driver is definitely NOT signed.

To determine where the driver source files are located:

  1. In the Configuration Manager 2007 Admin Console, navigate to the "Operating System Deployment" --> "Drivers" node.

  2. Locate the applicable driver, and then right click on it and choose "Properties".

  3. Under the "General" tab, the path where the drivers files are located is next to the field "Driver Source:".

If there is a corresponding .CAT file for the .INF file and the driver is showing as not being signed in the Configuration Manager 2007 Admin Console, try deleting the driver from the console and reimporting it back into the console. If the driver is still not showing as being properly signed, try downloading the latest driver from the OEM manufacturer and/or contacting the OEM manufacturer.

Resolution

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.

Was this information helpful?

What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×