Understanding the MDT Wizards


In this post I will explain you how MDT wizards work when you plan to deploy a computer.
These wizards can be helpful to customize yourself your deployment, by filling for instance computer name, applications to install ...
We will see what are they, in which order they are displayed.


What are these wizards ?

When you run a deployment with a MDT system (USB, WDS ...) multiple screen are displayed. 
By default a wizard is composed of one XML file and one or more VBS script(s).
The XML file is used for the display part and for calling functions from the VBS.
These files are located in the Scripts folder from your Deployment Share.
See below the xml files for the MDT wizards:
Available XML files in the Scripts folder
See below the vbs files for the MDT wizards:
Available vbs files in the Scripts folder

How are they displayed ?

MDT wizards are launched through the Wizard.hta file. This file will interpret the XML wizards as HTML files. Wizard.hta is called in the LiteTouch.wsf file from the Scripts folder.
The Wizard.hta file may be helpful to test a specific wizard on a  log on session. Indeed you can run the commandline below to run for instance the Computer backup wizard. In the sample below, the Deploy folder is located on D:
Then the wizard will be displayed as below:
Test a custom Wizard


In which order are they displayed ?

1 / The first launched XML file is BDD_Welcome_ENU.xml
This wizard will first run your configuration: bootstrap and customsettings.ini then check your deployroot and credentials and run the second wizard WelcomeWiz_Choice.xml.

2 / The WelcomeWiz_Choice.xml wizard looks like as below. That's this one which allow you to run your deployment process.
WelcomeWiz_Choice.xml Wizard
3 /  Clicking on the Run the deployment Wizard button, it will launch the main wizard called DeployWiz_Definition_ENU.xml. This wizard will gather all the others wizard to display.
As shown below, you can add or delete a wizard from this XML file. Wizards will be displayed in the same order than in this XML file. You may also notice that each wizard is include in a <Pane> tag.
4 / The DeployWiz_Definition_ENU.xml will run by default the XML wizards below:
  • DeployWiz_SelectTS
  • DeployWiz_ComputerName
  • DeployWiz_UserData
  • DeployWiz_OfflineData
  • DeployWiz_UserDataRestore
  • DeployWiz_ComputerBackup
  • DeployWiz_ProductKeyVista
  • DeployWiz_LanguagePack
  • DeployWiz_LanguageUI
  • DeployWiz_Roles
  • DeployWiz_Applications
  • DeployWiz_AdminPassword
  • DeployWiz_AdminAccounts
  • DeployWiz_CaptureImage
  • DeployWiz_BitLocker
  • DeployWiz_Credentials
  • DeployWiz_Ready
As you may notice each pane contains some conditions. These conditions will display or not the current pane. 
For instance the backup and userdata wizards are depending of the DeploymentType setting from the customsettings.ini file.

Indeed if this settings is set as DeploymentType=NEWCOMPUTER, wizards below will be displayed.
  • DeployWiz_OfflineData
  • DeployWiz_UserDataRestore
  • DeployWiz_CaptureImage

List of vbs files for each wizard 

As mentioned above, mostly a wizard is composed of an XML file and one or more VBS script(s). These VBS script will initialize all functions, actions on buttons, validation step ...
See below below which VBS file are used for each wizard.  
List of associated vbs files for each wizard
VBS script are added as below in XML wizard.


List of called functions in each wizard

See below the different functions called in the wizard.
These functions are composed in two part: initialization and validation.
List of called functions in each wizard
These functions are called as below in the XML file. the sample below, is the different functions from the DeployWiz_ComputerName.xml.



List of properties to use

MDT allows you to hide and skip some of wizards during the deployment process.
For instance you can skip the Bitlocker wizard, see below the different behavior with and without the BitLocker wizard.
SkipBitLocker is set to NO
SkipBitLocker is set to YES
Each wizard include different properties to fill. 
For instance the DeployWiz_ComputerName wizard allows you to fill some properties as Computer name or domain name. These properties will be stored in MDT using different variables. For the computername the MDT variable is OSDComputername ...

You can find in the following picture a list of all skip parameters and then a list of all available properties for each wizard.
List of Skip parameters and properties to configure


Properties in each wizard
DeployWiz_Crendentials Wizard properties
DeployWiz_Computername Wizard properties
DeployWiz_LanguageUI Wizard properties
Language to install
This ListBox is composed of each language pack selected in the DeployWiz_LanguagePack wizard. 
For the French language, the UILanguage variable will be set as UILanguage=fr-FR
This value is set using the Language node from the Control\Packages.xml, as shown below.


Time and currency format (Locale)
This ListBox will parse the Scripts\ListOfLanguages.xml file. It will use the SNAME node for the selected item. 
For the the French locale time, the UserLocale variable will be set as UserLocale=fr-FR.
See below the french part from Listoflanguages.xml.


Keyboard Layout
This ListBox will set the KeyboardLocale variable. This variable is composed as below:
SName (from Listoflanguages.xml) ; ITextInfo (from ListofLanguages.xml) : Keyboard value from the DeployWiz_LanguageUI.xml.
For instance in the Language UI wizard, I will set the locale time as French and the Keyboard as German. 
The KeyboardLocale variable will be set as KeyboardLocale=f-FR;040c:0000040c
In the customsettings.ini your can use just the end part 040c:0000040c.

Time zone
This Litsbox will set the variable TimeZoneName using the selected value. 
All values can be found in the DeployWiz_LanguageUI.xml.
For instance the below option value is the corresponding value for the French timezone. The TimeZoneName will be set as TimeZoneName=Romance Standard Time
DeployWiz_AdminPassword Wizard properties
DeployWiz_CaptureImage Wizard properties
DeployWiz_ComputerBackup Wizard properties
DeployWiz_OfflineUserData Wizard properties
DeployWiz_UerDataRestore Wizard properties
DeployWiz_UserData Wizard properties

Share this

Related Posts

Previous
Next Post »