Problem
Some Packages when started, or when there is Mandatory Deployment, start and get stuck in state - "Installing". Due to this other Deployments also have to wait.
They never complete. Even if SCCM client is repaired/reinstalled, the state remains.
Only solution is - Remove the Deployment for that computer.
Reason
It is caused because when the Deployment is running (usually TS Deployment), the machine rebooted before the SCCM agent can finish updating all the WMI classes, but after the actual advertisement is completed. Root/ccm/clientsdk:ccm_program class isn't updated
Resolution
You can delete the instance of the policy for the deployment with powershell:
foreach($i in gwmi -Namespace root/ccm/policy/machine/actualconfig -Class ccm_softwaredistribution -Filter "ADV_AdvertisementID='<advertID>'"){$i.delete()}
Another script does same thing, and sets smstsmgr dependency to ccmexec/wmi
Some Packages when started, or when there is Mandatory Deployment, start and get stuck in state - "Installing". Due to this other Deployments also have to wait.
They never complete. Even if SCCM client is repaired/reinstalled, the state remains.
Only solution is - Remove the Deployment for that computer.
Reason
It is caused because when the Deployment is running (usually TS Deployment), the machine rebooted before the SCCM agent can finish updating all the WMI classes, but after the actual advertisement is completed. Root/ccm/clientsdk:ccm_program class isn't updated
Resolution
You can delete the instance of the policy for the deployment with powershell:
foreach($i in gwmi -Namespace root/ccm/policy/machine/actualconfig -Class ccm_softwaredistribution -Filter "ADV_AdvertisementID='<advertID>'"){$i.delete()}
Another script does same thing, and sets smstsmgr dependency to ccmexec/wmi
$ccmProgram = Get-WmiObject -Namespace ROOT\CCM\ClientSDK -Class CCM_Program | Where-Object {$_.EvaluationState –eq 14} If ($ccmProgram -ne $null) { $ccmExecutionRequestEx = Get-WmiObject -Namespace ROOT\CCM\SoftMgmtAgent –Class CCM_ExecutionRequestEx | Where-Object {$_.RunningState -eq "NotifyExecution" -and $_.AdvertID -gt "" -and $_.ContentID -eq $ccmProgram.PackageID} If ($ccmExecutionRequestEx -ne $null) { $ccmExecutionRequestEx | Remove-WmiObject Start-Process sc.exe -ArgumentList "config smstsmgr depend= winmgmt/ccmexec" -Wait Restart-Service -Name CcmExec -Force } }