If you are using MDT 2012 Update 1 UDI and are configuring language settings, you may have run into the problem setting up your User Locale. In MDT 2012 Update 1 Beta the UDI wizard was setting InputLocale when it should have been setting UserLocale. As this was found at the last minute before releasing there was a workaround put in place in order to set the appropriate task sequence variable. Rather than changing this variable in compiled code which is a bit more costly and risky the workaround was added to the UDI Wizard script wrapper (UDIWizard.wsf). The script wrapper would simply read what the UDI Wizard set the InputLocale task sequence variable to once it exited and then set UserLocale to that same value.
Why is this a problem? It is a problem because the wizard was fixed in the released version of MDT 2012 Update 1, but the script wrapper was never fixed to remove the line which sets UserLocale with the value of InputLocale. So what does this mean? It means that the wizard sets the UserLocale correctly based on what the end user selects when the wizard exits, the script wrapper will then read InputLocale, which is no longer set, and sets UserLocale with this value. Thus UserLocale is always set to blank.
Luckly this problem is very easy to fix. You simply need to modify the script wrapper, udiwizard.wsf file, in the toolkit package under the scripts directory and either comment out or remove the following line:oEnvironment.Item("UserLocale") = oEnvironment.Item("InputLocale")
Don't forget to update your distribution points on your MDT Toolkit package once you make this change.
Variables used on the language page:
Language pack to install
Customer's have asked how do I default language options to the default language set on a machine. UDI doesn't provide any detection for determining which language had been set on a machine. However, it does provide a way to default to a language setting. So if you have added logic to a script you can simply set the appropriate task sequence variables prior to the wizard loading in order to default to those settings. The one thing to call out here is that the values used in task sequence variable must match the case of the values in the dropdown list in order to default to a value. In other words if you want to default to French for a language pack to install that language pack must be available in the list, and you must set UILanguage to FR-FR not fr-FR.
Additionally if you wanted to set the keyboard layout to French for example you should set the KeyboardLocale variable to either 040c:0000040c or 0000040c. Do not set the variable to the following format 0x0000040c.
It just seems like yesterday that we released MDT 2012 and now we have turned around and released MDT 2012 Update 1 available for download here. Compared with MDT 2012 the journey to releasing Update 1 has been a much shorter. Regardless of this short time period some powerful features and enhancements have been added to the Microsoft Deployment Toolkit.
Now let's get into the details of the UDI enhancements a bit more. There is a lot to talk about here so I will just give a high-level overview and save the details for additional blog posts.
With Windows 8 and 2012 releasing to PC OEM and manufacturing partners, more information for which can be found here for Win8 and here for Server 2012, we are excited to be able to support deployments of these operating systems as well as provide support for some of the key new features they provide. Of course UDI allows for backing up and restoring data using the newest version of USMT, but how about Windows 8 apps?
If you are using the Application Catalog and are using Configuration Manager 2012 Service Pack 1 (the SP1 is required for deploying Windows 8 apps from ConfigMgr) then you can take advantage of allowing users to select Windows 8 app package (.appx) as part of their OS deployments from the software page of the UDI wizard. Some of you may ask, but how is that going to work as the selected apps and packages will install as part of the task sequence which doesn't support installing Windows 8 apps as they need to install as a user. However, UDI tags these apps differently and doesn't attempt to install these types of apps as part of the task sequence. Instead it uses a tool called AppInstall.exe which interfaces with Configuration manager's app catalog in order to trigger an install for app model apps, including Windows app packages (.appx), after the user logs in. To hear more about how to setup applications as well as leverage AppDiscovery to detect applications for reinstall I have put together a video covering this topic here.
To find out more information about how to prepair for deploying these type of apps check out this blog post which talks about everything from how to sign the apps to the group policy needed in your environment for deploying these type of apps.
Although I will talk in detail about BYOP in future blog posts and videos, the BYOP feature will allow you build pages by simply dragging a set of controls onto a page and setting the appropriate information around those controls such as which task sequence variable should be set or the default for the control. Controls which you can drag onto a BYOP page include CheckBoxes, ComboBoxes, Lines (used to section a page out), labels, radio buttons, Bitmaps, and textboxes.
Although there are any number of pages which you could build using BYOP you can also use this powerful feature with your Windows 8 deployments. As an example the simple page in the screenshot above is an example of how you could allow a user to select whether to enable pushbutton reset as part of their Windows 8 deployment which would allow them to rollback to a fresh version of their operating system if enabled. To see more information on push button reset see the following TechNet article here.
Put your users or deployment techs in the driver's seat by downloading MDT 2012 Update 1 and starting your deployments with UDI today.