ToolsI have had a couple of cases recently that involve running a task sequence from the Run Advertised Program (RAP) Control Panel applet which has a large number of software package installation steps (usually over 200).  What happens in these cases is that you will see timeout errors in the cas.log and execmgr.log on the machines in question. These errors resemble an issue where the content is not available on the Distribution Point (DP) but in each case it was reported that the task sequences could be successfully run within WinPE which indicates that this content is actually present on the DPs in question.

If you run into this specific scenario then you can change the UIContentLocationTimeoutInterval variable in the site control file from the default of 120 seconds to a value much greater such as 15-30 minutes.  The UIContentLocationTimeoutInterval variable is a property in the root\ccm\Policy\Machine namespace that has a default value of 120 seconds (2 minutes) but this may not long enough for a task sequence with a large number of software installation steps.  In these cases I have found that if I increase this to a higher value (e.g. 900 seconds or 15 minutes) then the problem no longer occurs when running this from within the RAP. 

To do this complete the following steps to edit the site control file:

1. Stop the smsexec service on the site server
2. Edit the site control file and change the following to a higher value:

PROPERTY <UI Content Location Timeout Interval><REG_DWORD><><120>

3. Restart the smsexec service and make sure you update policy on the client.
4. You can check the value on the local client using wbemtest and connecting to root\sms\policy\machine.

Once complete, the Task Sequence should now complete successfully.

For testing purposes, you can compile the following MOF file on a client to update the actual policy on a single machine. This is optional and serves only to verify that this is in fact the issue you’re encountering:

1. Open wbemtest on the machine you want to test.
2. Open the root\ccm\Policy\Machine namespace.
3. Navigate to ccm_softwareDistributionClientConfig.
4. Select UIcontentLocationTimeoutInterval
5. Select instances.
6. Double click the instances of UIcontentLocationTimeoutInterval.
7. Click Show MOF. 

This should look something like the mof.txt file attached.

8. Edit this file and change the line below to a value such as 900

UIContentLocationTimeoutInterval = 120;

9. Add the following line to the top of the mof file (see the attached file as an example)

#pragma namespace("\\\\.\\root\\ccm\\policy\\machine\\actualconfig")

10. Save this file as a .mof file and move this to the machine that you want to test.
11. Open a CMD prompt and run the following:

Mofcomp.exe mof.mof

12. Check to make sure this value has been changed in WMI using the steps outlined above.

Sample file:

Hope this helps,

Luke Ramsdale | Support Escalation Engineer

The App-V Team blog:
The WSUS Support Team blog:
The SCMDM Support Team blog:
The ConfigMgr Support Team blog:
The SCOM 2007 Support Team blog:
The SCVMM Team blog:
The MED-V Team blog:
The DPM Team blog:
The OOB Support Team blog:
The Opalis Team blog:
The Service Manager Team blog: http:
The AVIcode Team blog: http:
The System Center Essentials Team blog: http:
The Server App-V Team blog: http:

clip_image001 clip_image002