KBWhen using the Use Toolkit Package task in a Configuration Manager 2007 task sequence, the Microsoft Deployment Toolkit 2010 Update 1 files package specified in the Use Toolkit Package task may not download correctly when the Distribution Point is on a Windows Server 2008 or newer server. The behavior will be different depending on the download method chosen under the Distribution Points tab in the properties of the advertisement:

Download content locally when needed by running task sequence

When the Task Sequence reaches the Use Toolkit Package task, the files for the package specified in the Use Toolkit Package will start to download and the progress bar will reach about 27%. The download will then all of a sudden stop, restart from the beginning, only to reach 27% again, and then restart again. On the third attempt it will the progress bar will get past 27% and finish downloading successfully. Reviewing the SMSTS.log on the client PC will show the following error:

Downloaded file from http://<DP_Server>:80/SMS_DP_SMSPKG<Drive_Letter>%24/<Package_ID>/Tools/OSDResults/OSDResults.exe to D:\_SMSTaskSequence\Packages\<Package_ID>\Tools/OSDResults/OSDResults.exe InstallSoftware
dwStatusCode>=200 && dwStatusCode<=299, HRESULT=80004005 (e:\nts_sms_fre\sms\framework\tscore\downloadcontent.cpp,1090) InstallSoftware
WinHttpQueryHeaders() returns status code 404 (Not Found) InstallSoftware
Download() failed with 0x80004005 InstallSoftware
DownloadFile(sSourceFile, sDestinationFile, ulTotalSizeRequired, ulDownLoaded), HRESULT=80004005 (e:\nts_sms_fre\sms\framework\tscore\downloadcontent.cpp,1175) InstallSoftware
Error downloading file from http://<DP_Server>:80/SMS_DP_SMSPKG<Drive_Letter>%24/<Package_ID>/Tools/OSDResults/OSDResults.exe.config to D:\_SMSTaskSequence\Packages\<Package_ID>\Tools/OSDResults/OSDResults.exe.config InstallSoftware
DownloadFiles(sSource, setDirs, setFiles, sDestination), HRESULT=80004005 (e:\nts_sms_fre\sms\framework\tscore\resolvesource.cpp,2434) InstallSoftware
Retrying download... InstallSoftware

The above error will be displayed a second time, followed by the following line after the second failure:

Tried all the available http based locations. SMB based locations will be attempted now. InstallSoftware

After the second error and the above message, the download will be tried a third time and will then succeed.

Examining the IIS logs on the distribution point server will reveal the following error:

<GMT_Date> <GMT_Time> <DP_Server_IP> GET /SMS_DP_SMSPKG<Drive_Letter>$/<Package_ID_Of_Pacakage_In_Use_Toolkit_Package>/Tools/OSDResults/OSDResults.exe.config - 80 - <Client_IP> SMS+TS 404 7 64 15

Download all contents locally before starting task sequence

When the advertisement is initiated either manually via the Run Advertised Programs control panel or automatically via a mandatory assignment, the download for the packages of the Task Sequence begins but never completes. Because the download for the Task Sequence packages never completes, the Task Sequence never begins or launches and the SMSTS.log is never created on the client PC.

Reviewing client logs associated with downloading packages and executing the Task Sequence (execmgr.log, CAS.log, DataTransferService.log, ContentTransferManager.log) will not contain any errors. The client logs indicate that the downloads for the packages have begun, but the downloads never complete. Some of the client logs may have messages indicating that the downloads are in a pending or waiting state such as:

DataTransferService.log
Execute called for DTS job '{GUID}'. Current state: 'PendingDownload'.

execmgr.log
Execution Request for package <Task_Sequence_ID> program * state change from WaitingDependency to WaitingContent execmgr
Persisting task sequence request for program * package <Task_Sequence_ID> in state WaitingContent execmgr

If the advertisement for the Task Sequence was initiated manually via the Run Advertised Programs control panel, the Program Download Status window will show a progress bar that initially shows progress, but eventually stops and does not complete. The percentage complete will fail at a randomly different point each time the download is attempted.

Examining the IIS logs on the distribution point server will reveal the following error:

<GMT_Date> <GMT_Time> <DP_Server_IP> HEAD /SMS_DP_SMSPKG<Drive_Letter>$/<Package_ID_Of_Pacakage_In_Use_Toolkit_Package>/Tools/OSDResults/OSDResults.exe.config - 80 - <Client_IP> Microsoft+BITS/7.5 404 7 0 218

Running Bitsadmin.exe on the client PC with the following command line:

bitsadmin.exe /list /allusers /verbose

while the download is in the hung state will reveal the following error:

ERROR FILE: http://<DP_Server>:80/SMS_DP_SMSPKG<Drive_Letter>$/<Pacakge_ID>/Tools/OSDResults/OSDResults.exe.config -> C:\Windows\system32\CCM\Cache\<Pacakage_ID>.<Source_Version>.<GUID>\Tools/OSDResults/OSDResults.exe.config
ERROR CODE: 0x80190194 - HTTP status 404: The requested URL does not exist on the server.ERROR CONTEXT: 0x00000005 - The error occurred while the remote file was being processed.

Access content directly from a distribution point when needed by the running task sequence

No download issues are experienced when the advertisement for the Task Sequence is set to run from the distribution point (DP).

Cause

This issue is caused by the default configuration of IIS in Windows Server 2008 blocking the ability to download files that end in the extension .config. The Microsoft Deployment Toolkit 2010 Update 1 files package created by the Create Microsoft Deployment Task Sequence wizard and used in the Use Toolkit Package contains a file that ends in .config. The file is called OSDResults.exe.config and is located in the Tools\OSDResults directory of the package source files.

When the option "Download content locally when needed by running task sequence" or "Download all contents locally before starting task sequence" is set on the advertisement for the Task Sequence, this will cause the file OSDResults.exe.config to be attempted to be downloaded via HTTP/HTTPS/BITS. However IIS will block this attempt since files ending in .config are blocked.

When using the option "Download content locally when needed by running task sequence", it will attempt the download two times using HTTP/HTTPS/BITS before failing over to SMB. Since SMB does not use IIS, the third download attempt will then succeed.

When using the option "Download all contents locally before starting task sequence", the BITS job gets hung on the error of not being able to download OSDResults.exe.config and does not fail over to SMB. This causes the whole download job to get in a hung state. Since the download for the packages of the Task Sequence never complete due to the hung state, the Task Sequence never launches.

When the option "Access content directly from a distribution point when needed by the running task sequence" is used, HTTP/HTTPS/BITS is not used and all data transfers use SMB instead. Because SMB does not utilize IIS, the data transfers will succeed.

Resolution

To resolve the problem, follow the section "Configure the requestFiltering section on distribution points" in the following article:

How to Configure Windows Server 2008 for Site Systems
http://technet.microsoft.com/en-us/library/cc431377.aspx

Specifically, on the Distribution Point server, configure IIS to allow files that contain the .config extension to be downloaded. This is done by changing the following line in the <requestFiltering> section of the applicationHost.config file from:

<add fileExtension=".config" allowed="false" />

to

<add fileExtension=".config" allowed="true" />

=====

The information above was published today in the following Microsoft Knowledge Base article written by Frank Rojas:

KB2508665 - A package specified in the Use Toolkit Package MDT task does not download correctly in a Configuration Manager 2007 Task Sequence

J.C. Hornbeck | System Center Knowledge Engineer

The App-V Team blog: http://blogs.technet.com/appv/
The WSUS Support Team blog: http://blogs.technet.com/sus/
The SCMDM Support Team blog: http://blogs.technet.com/mdm/
The ConfigMgr Support Team blog: http://blogs.technet.com/configurationmgr/
The SCOM 2007 Support Team blog: http://blogs.technet.com/operationsmgr/
The SCVMM Team blog: http://blogs.technet.com/scvmm/
The MED-V Team blog: http://blogs.technet.com/medv/
The DPM Team blog: http://blogs.technet.com/dpm/
The OOB Support Team blog: http://blogs.technet.com/oob/
The Opalis Team blog: http://blogs.technet.com/opalis
The Service Manager Team blog: http: http://blogs.technet.com/b/servicemanager
The AVIcode Team blog: http: http://blogs.technet.com/b/avicode
The System Center Essentials Team blog: http: http://blogs.technet.com/b/systemcenteressentials

clip_image001 clip_image002