January, 2017

Creating Alerts for High-Risk Deployments

When you want to deploy Operating Systems zero-touch it can be scary the thought of all systems being added to the collection, so you can it's best to provide as many safe-guards. We currently have a runbook that adds a variable to let the computer go zero-touch however we want to know if there is an influx of computers being added to the collection.

To create an alert -

Right click on the collection and go to properties, then click the Alert Tab

Click Add and tick Member count exceeds threshold

Then customize the Alert requirements based on when you want to be alerted

To get e-mails when an Alert is triggered go to the Monitoring Tab \ Alerts \ Subscriptions and click create new subscription.

Then find your alert based on the collection name.

You may need to also run Configure Email Notification



Stopping the 'Download language typing features' Action Centre Alert

We have deployed quite a few keyboards / Language Features however if you are missing any related features for a language this action centre prompt will keep coming up until they are installed, what's worse is that they require admin rights to install. To deploy a fix you need to work out what's missing.

The simplest way is to click the notice and let it download the features. Then monitor the log file C:\Windows\Logs\CBS\CBS.log

and filter the entry text:

DWLD: Windows update server URL:

This will filter all the download links for the missing features.

Once you have this list, download each one and create an MissingLanguageFeatures.bat

Follow this pattern and create a package in SCCM -

Dism /online /LogPath:C:\Windows\temp\MissingLangFeaturesFix.log /Add-Package /PackagePath:microsoft-windows-languagefeatures-ocr-ar-sa-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-de-de-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-el-gr-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-es-es-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-es-mx-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-fr-fr-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-hr-hr-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-it-it-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-ja-jp-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-ko-kr-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-pt-pt-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-ru-ru-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-tr-tr-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-zh-cn-package.cab /PackagePath:microsoft-windows-languagefeatures-ocr-zh-tw-package.cab


Command Line: c:\windows\sysnative\cmd.exe /c MissingLanguageFeatures.bat

Error message when no Asset Tag Detected

Set the computer name using the BIOS Asset Tag

If you are setting the Asset Tag the same name that the computer is, it makes sense to only have to input it once. I created a powershell script that will do the following:

If VM or Mac: Exit 0

If  computer exists in SCCM: Exit 0

If AssetTag Exists/Not empty: Set OSDComputerName to AssetTag, Exit 0

If AssetTag doesn't exist: Bring up an error message, Exit 1


Tested with HP and Dell machines.

Download Script https://github.com/happysccm/Files/tree/master/Check%20for%20Asset%20Tag%20-%20OSD%20AssetTag%20Check%20-%20Most%20code%20by%20Nickolaj%20and%20Dave%20Green

Update: Added optional script that uses the HP Ownership Tag

How to use:
Create a package for the script

Copy serviceUI.exe (From MDT Toolkit) to the same folder.

In the Task Sequence after initial format of the drive create a Run Command Line step using the package that you created

with the command: ServiceUI.exe -process:TSProgressUI.exe %SYSTEMROOT%\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -WindowStyle Hidden -ExecutionPolicy Bypass -File AssetTag.ps1


Thanks Nickolaj and Dave Green for the initial form