SCCM2012R2 OSD Error Download () failed 80072ee2

Lately I was struggling with a DP that got its Packages invalid several times, see here

After solving this, I had the problem that some clients failed to install.

They brought up an error “Download failed 80071ee2”. After redistributing several packages I saw that always different files in the same package were “Not able to download”. A Network error? Found nothing strange there. All the Tasksequences were working before upgrading to R2!

Finally I found this TechNet Thread where someone had the same issue. Especially take a look at Christian Langelands answer:



And this is it!


1. Create two Tasksequence Variables right at the top of your Tasksequence:

SMSTSDownloadRetryCount with Value 5


SMSTSDownloadRetryDelay with Value 15


I also set the variable “SMSTSMPListRequestTimeout” with value 300 as mentioned in the next answer – just to be sure! Winking smile



So somehow the R2-client version is not as robust or the settings are just wrong.

As you see in the above mentioned post, Microsoft is aware of this, so maybe there is a fix/update some when.


Hope it helps!


After upgrading from SCCM2012SP1 to SCCM2012R2 some random packages are invalid #SysCtr #ConfigMgr #SCCM

Update below!


after finally upgrading from SCCM2012SP1 to SCCM2012R2 we had the issue, that the OSD tasksequences stopped working with errors all circling around content.

After being able to solve some of the problems by redistributing the affected content I asked on twitter if anyone else was having a similar problem after upgrading to R2, and nearly immediately a reply from @znackattack helped me further:


So what should you do?

Download Content Library Explorer from the System Center 2012 R2 Configuration Manager Toolkit and redistribute only the content that is marked as invalid.

A good example of how to do this can be found here:

Thanks to Nicke!


The tip from Kenny in the comments helped me t get OSD back running:

Reregister / Recompile smsdpprov.mof

If you are lucky you´ll find an error saying that compiling “smsdpprov.mof” in your Distmgr.log was not successfull.

To recompile the mof locate your “smsdpprov.mof” – most times %installpath%\bin\x64 – and use the following command:

“mofcomp.exe smsdpprov.mof”

You should then get a message that the file was compiled successfully.

I then restarted the DP (not sure if t is needed) and our delpoyment worked again.

Thanks again Kenny!

#ConfigMgr #SysCtr Error loading Software Center #SCCM


After successfully installing the Configuration Manager Client on a Windows Server 2003 I encountered an error when opening the Software Center:



After uninstalling and reinstalling the Configuration Manager Client the same error appeared.

Binging (yes, brought the solution!) the error, I found something similar here.

In this article is written, that .NET Framework 4.0 gets installed with SCCM2012 Client automatically. So I searched for it, and only found .NET Framework 3.5.

I downloaded the .NET Framework 4.0 , installed it and viola: Software Center got up without any errors 🙂

#Sysctr #SCCM create IP-ranges per AD-site the easy way

Yesterday there was a chat on Twitter about the usage of IP-Range vs. AD-Site based boundaries for System Center Configuration Manager 2012 SP1.

There is an easy way to get the best of both worlds. It relies on the proper configuration of IP-Subnets in the Active Directory Site Configuration (well, that should be configured properly anyway!)




If you have your subnets configured, then switch to the SCCM Console to Administration, Hierarchy Configuration, Discovery Methods and open the Properties of the “Active Directory Forest Discovery”

Here you can enable “Automatically create IP address range boundaries for IP subnets when they are discovered




To keep the boundaries up to date, you can even run this discovery on a schedule.

When the discovery is run, you will find the IP-Ranges in your boundaries


You can then select all IP-Ranges of one site and put them into a boundary group by right clicking the selected IP-Ranges.


Hope it helps someone.




#SCCM #SCEP Suspend SCCM2012 SP1 Endpoint Protection #SysCtr

If you ever come into a situation where you need to stop the running System Center Endpoint Protection 2012 SP1,  you will find out that there is no way to stop the service. Neither in the GUI nor the service Microsoft Antimalware Service (MsMpEng.exe) itself.

After searching a while I found the solution in this thread:

You need two tools, which will help you (not only in this case!): psexec and Process Explorer.

Copy both tools to a folder on the system and start an elevated command promt.

1. Run the command:

%yourpath%\psexec.exe –s –i %yourpath%\procexp.exe  *


*where %yourpath% is the path you saved the tools in

2. After accepting two EULAs (only for the first time) Process Explorer will show up. Search for a process called “MsMpEng.exe” and double click it. Switch to the “services” tab.


3. Click on “Permissions” and give Full Control rights to the Administrators group.


After OKing every window you can open or refresh your services.mmc and you will be able to stop the Microsoft Antimalware Service.



As soon as you start the service again, the permissions will be set back to the original settings.


#ConfigMgr Speed up AD-Group discovered Client Push Installation #SCCM

Imagine the following situation:

You have to deploy SCCM a well controlled and step by step. You want to use (automatic) push installation.

This can be done by putting the PCs you want into AD-groups and throw some GPOs at them, to add an ConfigMgrPush Account to local admins for example.

Then Active Directory Group Discovery has to be set up to discover items in the selected AD-Group.

Now, when you put in a PC to this AD-Group, it will be discovered in a short time (5 Minutes in standard delta discovery settings).

After discovery, SCCM will try to push the client to the new PCs but it fails, because the ConfigMgr push account is not a local admin. This happens, because a reboot is needed for the PC to be aware of new group memberships and applying the GPO.

You now can wait until every PC is rebooted, or do the following:


Create a collection for PCs without an installed client:


Add a new query rule


Click “Show query language” and paste the query (delete linebreaks after inserting)

select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,
SMS_R_SYSTEM.Client from SMS_R_System where SMS_R_System.ResourceId not in (select SMS_R_System.ResourceId from  SMS_R_System where SMS_R_System.Client = 1) and (SMS_R_System.OperatingSystemNameandVersion = "Microsoft Windows NT Workstation 6.1")     





Now that you have created the collection, it´s time for some Powershell and psexec.

Download psexec and place it somewhere on your SCCM Server, e.g. c:\psexec

Create a powershell script that gets all members of the “no client” Collection, refreshes PC AD-Group Membership and forces a gpupdate:

$SiteServer = ‘localhost’

# Replace  YSC with your SiteCode

$SiteCode = ‘YSC’
$CollectionName = ‘All Windows 7 PCs without installed Clients’
#Retrieve SCCM collection by name
$Collection = get-wmiobject -NameSpace "ROOT\SMS\site_$SiteCode" -Class SMS_Collection | where {$_.Name -eq "$CollectionName"}
#Retrieve members of collection
$SMSClients = Get-WmiObject -ComputerName $SiteServer -Namespace "ROOT\SMS\site_$SiteCode" -Query "SELECT * FROM SMS_FullCollectionMembership WHERE CollectionID=’$($Collection.CollectionID)’ order by name" | select Name
#Try to Refresh AD-Goup Membership and force gpupdate for every collectionmember
ForEach ($SMSClient in $SMSClients){
write-host "Next Client:" $SMSClient.Name
$hostname = $

c:\psexec\psexec.exe \\$hostname -s cmd /c "klist -li 0x3e7 purge"
c:\psexec\psexec.exe \\$hostname -s cmd /c "gpupdate /force"

If the script runs successfully, you will get an output like


To get this working, the account running the script needs to have the right to access the client PC!

Now that the group policy is applied, the ConfigMgr Push Account can install the client.

To go even further you could schedule this task, or even better, let Orchestrator do the job.



#ConfigMgr Client install BITS Error on Windows 7 #SCCM


Today I struggled with one of 160 Windows 7 Clients I installed the SCCM-Client through push installation.

On this one machine ccmsetup.log was showing

“ BITS job creation failed with 80200014. Unable to check BITS version    ccmsetup    07.08.2013 16:45:25    4420 (0x1144) “


After searching a while and trying to repair BITS, setting registry keys etc. the finally working tipp came from this Technet thread:

Try installing ccmsetup manually with the parameter /BITSpriority:low:

ccmsetup.exe /BITSpriority:low

This finally did the trick in my case.