OEM Branding

Problem:  I want my systems tattooed with my company name, because its cool.

Solution:  OEM System information branding is something we see all the time. My opinion is that this, combined with a corporate lock screen are two of the better ways to brand your onsite computers, visually. I recently converted my old batch file for doing this to a powershell script.

The first function creates the folder c:\windows\oem.  Personally I think this is a good place to store your oem picture, but you could create a folder anywhere, the choice is yours.  Next we copy our OEM Picture into that folder we just created (this must meet specific size, height and width requirements) and finally we set the registry options available to us. 
The options are outlined pretty well here: 

This script can be added to MDT as an application or in a task sequence as a powershell step. The choice is yours.

Finished product?


And clicking the “Online Support” link takes me to www.deploymentshare.com.

   1: <#
   2: Script to create your OEM folder and set Branding Tattoo Options
   4: Author:  Jonathan of www.deploymentshare.com
   5: Version: 1.0.0
   7: Notes:  
   8: 1. Change the middle function to point to your OEM Picture location
   9: 2. Your OEM Picture must meet the requirements of size
  11: #>
  12: Function Create-OEMFolder   
  13:     {   
  14:         $Destination = "C:\Windows\OEM"   
  15:         if (!(Test-Path -path $Destination )) { $null = New-Item -ItemType Container -Path $Destination -Force }   
  16:         Copy-Item .\OEM.bmp $Destination -Force   
  17:     }
  19: Function Copy-PicturetoLocation
  20:     {
  22:     $Destination = "C:\Windows\OEM\"
  23:     Robocopy $Source $Destination
  24:     }
  26: Function Set-OEMBranding  
  27:     {   
  28:         $OEMKey = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation"   
  29:         Set-ItemProperty -Path $OEMKey -Name "Model" -Value (Get-WmiObject -Class Win32_ComputerSystem).Model   
  30:         Set-ItemProperty -Path $OEMKey -Name "HelpCustomized" -Value 00000000   
  31:         Set-ItemProperty -Path $OEMKey -Name "SupportHours" -Value "Here at www.deploymentshare.com we are always open"   
  32:         Set-ItemProperty -Path $OEMKey -Name "Logo" -Value "C:\Windows\OEM\oem.bmp"   
  33:         Set-ItemProperty -Path $OEMKey -Name "Manufacturer" -Value "Deploymentshare.com"   
  34:         Set-ItemProperty -Path $OEMKey -Name "SupportPhone" -Value "0123 456 78910"  
  35:         Set-ItemProperty -Path $OEMKey -Name "SupportURL" -Value "http://www.deploymentshare.com"  
  36:     }
  38: Create-OEMFolder
  39: Copy-PicturetoLocation
  40: Set-OEMBranding



Comments (3) -

This is exactly what I was looking for. Works great. I deploy lots off models/manufacturers to lots off customers. With this script it is possible to adjust the info that is necessary.

Great script, thank you. I am having one problem. When I deploy it from SCCM 1602 to a Windows 7 x64 system with "%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -File .\CreateOEMTattoo-V1.0.0.ps1" as the command it always places the reg keys in the HKLM\SOFTWARE\Wow6432Node\Microsoft instead of the HKLM:\SOFTWARE\Microsoft.

I found it. The CM client doesn't execute powershell x64 you need to use "%windir%\Sysnative\windowsPowershell\V1.0\PowerShell.exe"

Add comment