Category Archives: SCCM

SCCM – Deploying .NET Framework 4.6.2 Fails With Error 16389

Hello everyone,

In preparation for some upcoming application deployments that rely on the latest .NET Framework I did a test deployment to a small (50-ish) collection of Windows 8.1 x64 laptops.

My .NET 4.6.2 setup is fairly simple: it’s in SCCM as an application using the full executable and my full install looks like this:

NDP462-KB3151800-x86-x64-AllOS-ENU.exe /q /norestart

Almost immediately I had a failure and they kept rolling in, all failing with a 16389.

Luckily, the fix was fairly simple…

After a quick look online I went into my application and in the ‘Program’ tab I had to click to enable the “Run installation and uninstall as 32-bit process on 64-bit clients.”.  D’oh!

There it is:


Once that was clicked and redistributed out to the distribution points (just to be safe) the angry red failures have all disappeared!


SCCM – Set Windows 10 Desktop Background To Solid Colour (For All Users) During OSD

Hey everyone,

I’d like to preface this blog post by saying that this was perhaps the one setting that took the longest to figure out as there wasn’t much of anything about it online at the time and what was found just didn’t seem to work right.  Thankfully, after a whole bunch of trial and error and many reimagings of my VM the answer was finally at hand.

This script, as with most I have, runs during my image creation and during my actual OSD task sequence.  It is definitely unnecessary but after trying so hard to figure it out you just want to know that it is applying.

Anyway, my first step was to create a 1920×1080 img0.jpg file of the solid colour I wanted.  The file is img0.jpg because that is what the default background in Windows 10 is called.  I chose one of the lighter-blues that Windows let you choose from when setting a background.  This has traditionally been our background as it isn’t hard on the eyes and we haven’t bothered to change it.  Combined with ‘our colour’ being an off-lime green this is the better choice.

Second step is to create my loadSolidColourBackground.cmd script that contains the followinging…

takeown /f c:\windows\WEB\wallpaper\Windows\img0.jpg
takeown /f C:\Windows\Web\4K\Wallpaper\Windows\*.*
icacls c:\windows\WEB\wallpaper\Windows\img0.jpg /Grant System:(F)
icacls C:\Windows\Web\4K\Wallpaper\Windows\*.* /Grant System:(F)

del /q C:\Windows\Web\4K\Wallpaper\Windows\*.*
xcopy img0.jpg C:\Windows\Web\Wallpaper\Windows\ /Q /Y

Wrap all of these in a package in SCCM and you’re ready!

Add a “Run Command Line” step in your task sequence(s) pointing to your new package and run “cmd.exe /c loadSolidColourBackground.cmd”.

SCCM – Remove Built-In OneDrive From Windows 10 During OSD

Hi everyone,

One of the “features” on Windows 10 is, whether you’re going to use it or not, OneDrive is installed without asking for it (even if the first application install of your Task Sequence is Office and OneDrive for Business (or you bake it in during image creation)).

Anyway, it is pretty easy to get rid of but it involves editing the default user registry.  I made a blog post before this describing my basic method to do this: SCCM – Edit The Default User Registry

What I have is a “Install Command Line” step in my Task Sequence that runs “cmd.exe /c removeOneDrive.cmd”.  This script in turn gets made in SCCM as a package.  This is what is in that script…

reg load "hku\Default" "C:\Users\Default\NTUSER.DAT" 
reg delete HKU\default\software\Microsoft\Windows\CurrentVersion\Run /v OneDriveSetup /f
reg unload "hku\Default"

The majority of my scripts I run in both the image creation task sequence and my deployment task sequence, mainly so I am sure that at some point it was killed.

SCCM – Edit The Default User Registry

Hey everyone,

Hoping to do a few posts today but none of them are possible without a little fun tinkering with the registry.  Not just any registry but the default user registry.  **Inset obligatory warning about tinkering with the registry**

I do the registry editing via command line in .bat/.cmd files.

The basic format:

reg load "hku\Default" "C:\Users\Default\NTUSER.DAT" 
<registry editing>
reg unload "hku\Default"

And that is about it!  Until next time…

SCCM – Remove “Contact Support” From Windows 10 1607 During OSD

EDIT 03/22/2017:  As blogged HERE by Michael Niehaus it is possible to remove this pesky program via powershell with the following:

Get-WindowsCapability -online | ? {$_.Name -like '*ContactSupport*'} | Remove-WindowsCapability –online


Hi everyone,

It has been quite a while since my last blog post and a lot has been going on.  I’m going to slowly start posting new items as I find the time to show some of the things I’ve created (or found) for SCCM as I have been working towards creating a master Windows 10 image.

In this post, I will be talking about removing the questionable “Contact Support” app that Microsoft for some reason saw fit to include in the Enterprise and Education editions of Windows 10.

I was able to remove it with a simple powershell script running in a normal task sequence in a “Run Command Line” step.  I am opting to simply rename the folder it lies in instead of outright removing it because hey, who knows, one day it might be needed.

The script:

powershell.exe -executionpolicy bypass Rename-Item C:\Windows\SystemApps\ContactSupport_cw5n1h2txyewy BLOCKED_ContactSupport_cw5n1h2txyewy

That’s it!  This is what it fully looks like in the task sequence and the result:


Until next time…

SCCM – Some Experiences with Error 0x8004005

Howdy folks and welcome back!

In addition to Service Manager, I also do a lot of work with Configuration Manager (or SCCM if you prefer).  Actually, about 90-99% of my System Center time is directed at SCCM, so I have had a fair amount of experience with it in our environment.

One of the more vexing errors you will find in SCCM during OSD is error 0x8004005 which if anything is a generic error that can be triggered by a number of things.  Instead of doing a Case 1, Case 2, etc way of going through the scenarios, these are the top things to look for when troubleshooting this issue when it pops up (again, during OSD (Operating system Deployment)).

  • Ensure the data/time of the system is correct
  • Ensure the BIOS is up to date
  • Check your network account and ensure if has security access in Software Library -> Operating Systems -> Operating System Images
    • For good measure, double-check to ensure the username/password is correct anyway
  • Ensure the hard drive is in good working order (chkdsk /r and drive diagnostics are your friends)

Lastly: IT COULD JUST BE THE TASK SEQUENCE!  We have literally solved a 0x8004005 issue in our environment by deleting the existing task sequence and recreating an exact duplicate in its place and redeploying it.  If all else fails, try it.  You might just want to bang your head on a desk if it works because that is all there is left to do.