Dealing with issues when using the Apply or Auto Apply Driver Package Task in SCCM Task Sequence

Working with some Windows Vista deployments with ZTI (using SCCM 2007 and PXE), I have experienced some issued when I wanted to add drivers to the computers I wanted to install with Windows Vista.

 

Problem:

I had an issue while deploying Vista SP1 image using SCCM OSD when I added the drivers using the Apply Drivers Package task. It was failing with the error “Failed to resolve selected task sequence”. If I didn't add the Apply Driver Package task in Task sequence the installation was successful.

Also, I found the following errors in the SMSTS.log file:

Getting policy for CCM_SoftwareDistribution[AdvertID="LAB20007", PackageID="LAB00012", ProgramID="*"] TSPxe 5/13/2008 1:55:07 PM 1308 (0x051C)
FALSE, HRESULT=80040104 (e:\nts_sms_fre\sms\framework\tscore\tspolicy.cpp,1790) TSPxe 5/13/2008 1:55:07 PM 1308 (0x051C)
Failed to find CCM_SoftwareDistribution object for AdvertID="LAB20007", PackageID="LAB00012", ProgramID="*" TSPxe 5/13/2008 1:55:07 PM 1308 (0x051C)
(*iTSReference)->Resolve( pTSPolicyManager, dwResolveFlags ), HRESULT=80040104 (e:\nts_sms_fre\sms\framework\tscore\tspolicy.cpp,2287) TSPxe 5/13/2008 1:55:07 PM 1308 (0x051C)
m_pSelectedTaskSequence->Resolve( m_pPolicyManager, TS::Policy::TaskSequence::ResolvePolicy | TS::Policy::TaskSequence::ResolveSource, fpCallbackProc, pv, hCancelEvent), HRESULT=80040104 (e:\nts_sms_fre\sms\client\tasksequence\tsmbootstrap\tsmediawizardcontrol.cpp,1186) TSPxe 5/13/2008 1:55:07 PM 1308 (0x051C)
Failed to resolve selected task sequence dependencies. Code(0x80040104) TSPxe 5/13/2008 1:55:07 PM 1308 (0x051C)

Resolution:

After doing some research, I deleted the problematic driver package and I created a new driver package and added the same set of drivers (only video, audio and smartcard drivers). Also, I edited the task sequence, and I left the default Auto Apply Drivers Package task, and deleted the Apply Drivers Package task.

SCCM Provides two types of tasks when applying drivers:

  1. “Auto Apply Driver Action” will do a PnP scan on the Driver Catalog and insert the best matching drivers (according to Windows)
  2. “Apply Driver Package” will make a pre-selected group of drivers available for windows setup

After doing that, I found no more errors on the tasks sequence or in the logs, but now some drivers were not installing properly (for example, even when I had imported and deployed the audio driver in SCCM, Windows Vista was installing the default audio driver, and not the one I imported into SCCM).

Then, I had to confirm the following points in order to apply the right drivers to the new machines:

  • Drivers were in the Driver Catalog and added to driver packages which were updated on the Distribution Points.
  • Confirmed that I had the right drivers, and that I had imported ALL drivers (and not only the audio or video drivers) into SCCM. For example, make sure to import the chipset driver.
  • Confirmed that the drivers were for Windows Vista.
  • Confirmed that I was not filtering drivers based on categories.

Then, after validating the previous points, and after deploying a Vista image with Config Manager and PXE, all device drivers were applied successfully to the new machines :)