MDT 2012: 2 improvements that I love in MDT 2012
There are 2 improvements that I love in MDT 2012.
The first one is the new variable IsOnBattery. You can use this variable when you deploy laptops. The variable will be set to true if the machine is currently running using a battery with no AC power. VERY useful during deployment of laptops (exit the deployment if the machine is a laptop and it runs with no AC power).
The second is the Task Sequence variable HIDESHELL. Setting HIDESHELL=YES in your Customsettings.ini will hide the Windows shell during deployments, so now you do not need to lock the desktop during deployments or do other funny stuff to prevent an enduser breaking the deployment.
TIP: Getting Started with Windows 7 (8) Deployment
Windows 7 Deployment Learning Portal
http://technet.microsoft.com/en-us/windows/ff470986.aspx?ITPID=SPBLOG
Windows 7 Upgrade and Migration Guide
http://technet.microsoft.com/en-us/library/dd446674(WS.10).aspx?ITPID=win7dtp
DISM - Step By Step
http://technet.microsoft.com/en-us/edge/dism-step-by-step-from-dan-stolts.aspx
DISM - Command-Line Options
http://technet.microsoft.com/en-us/library/dd744382(WS.10).aspx?ITPID=win7dtp
ImageX - Command-Line Options
http://technet.microsoft.com/en-us/library/dd799302(WS.10).aspx?ITPID=win7dtp
OCSetup - Add or Remove System MSIs or Packages Online
http://technet.microsoft.com/en-us/library/dd744344(WS.10).aspx?ITPID=win7dtp
OCSetup - Command-Line Options
http://technet.microsoft.com/en-us/library/dd799247(WS.10).aspx?ITPID=win7dtp
Adding Driver Packages to a Boot Image
http://technet.microsoft.com/en-us/library/dd759162.aspx
TIP: Using RunOnceEx
You can use RunOnceEx to execute a command/a sequence of commands and while doing that it will show a progress window
Here is an example installing OpenVPN from C:\SwSetup\OpenVPN
;---
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx]
"TITLE"="Installing Applications"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\1]
@="OpenVPN 2.1.1"
"1"="C:\\SwSetup\\OpenVPN\\DriverSigning.exe -OFF"
"2"="C:\\SwSetup\\OpenVPN\\openvpn-2.1.1-install.exe /S"
"3"="C:\\SwSetup\\OpenVPN\\DriverSigning.exe -ON"
"4"="sc config openvpnservice start=auto"
;---
Test it by running this command from a command prompt:
rundll32.exe iernonce.dll,RunOnceExProcess
TIP: Using Active Setup
If I need to change a user setting (this can be replacing a file or a registry key) then I can use Active Setup.
Active Setup runs when a user logs in. Normally an entry will be executed once per user (a small window will pop up when the user logs in).
Add this to the registry:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\UniqueID]
"Version"=""
"Stubpath"=""
@=""
UniqueID is just that - it just has to be unique.
Version comes in handy if you want to update a script and run it again under the same UniqueID - typically you won't have to change this
Stubpath is the command = a MSI, a EXE or a VBScript
@ is what will be displayed when the command is being executed
TIP: Tools I use to deploy Windows
Microsoft Deployment Toolkit
http://technet.microsoft.com/en-us/solutionaccelerators/dd407791
Process Monitor
http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx
Process Explorer
http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx
PrimalScript
http://www.sapien.com/software/primalscript
Notepad++
http://notepad-plus-plus.org/
Autoit
http://www.autoitscript.com/
Orca
http://msdn.microsoft.com/en-us/library/aa370557.aspx
Beyond Compare
http://www.scootersoftware.com/
VMware Workstation
http://www.vmware.com/products/workstation/
Trace32 (Part of the SCCM 2007 Toolkit)
http://www.microsoft.com/download/en/details.aspx?id=9257
Microsoft Network Monitor
http://www.microsoft.com/download/en/details.aspx?id=4865
WinRAR
http://rarlab.com/
Universal Extractor
http://legroom.net/software/uniextract
Personal note 7: Adjust screen resolution on laptops
Set the screen resolution on laptops during deployment using this tip
Remember to change this line of code:
objWshShell.Run "VidChng.exe " & width & "X" & height & "X32X60"
change to objWshShell.Run "VidChng.exe " & width & "X" & height & X32@60"
TIP: SCCM GURU Webcast Series with Michael Niehaus
For those who didn't know ...
Michael Niehaus is hosting a SCCM GURU Webcast tomorrow!
More info here
TIP: Windows Deployment guide
Here is one of the best guides about Windows Deployment I've ever read
Written by the queen of Deployment Rhonda Layfield
Not new, but still full of useful information
Personal note 6: Use WSUS and TargetGroups in MDT
Add to Customsettings.ini
[Settings]
Priority=Default,WSUSServer
[WSUSServer]
WSUSServer=http://<server>:<port>
Edit ZTIWindowsUpdate.wsf
If oEnvironment.Item("WsusServer") <> "" then
' Configure the WSUS server in the registry. This needs to be a URL (e.g. http://myserver).
oLogging.CreateEntry "Configuring client to use WSUS server " & oEnvironment.Item("WsusServer"), LogTypeInfo
oShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\WUServer", oEnvironment.Item("WsusServer"), "REG_SZ"
oShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\WUStatusServer", oEnvironment.Item("WsusServer"), "REG_SZ"
' Configure TargetGroup in the registry
oShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\TargetGroupEnabled", 1, "REG_DWORD"
oShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\TargetGroup", "MDTbuild", "REG_SZ"
End if
Deploying Dell systems with Advanced Format hard drives
Starting on May 10th, Dell began shipping Client systems - like Latitude, Optiplex and Precision - with Advanced Format hard drives (AF)
Here is a great guide on how to get your Windows Deployment working with standard and AF hard drives


