VMware Dynamic Environment Manager By Product Desktops Technical Guides

Managing Windows 10 with VMware User Environment Manager

With the introduction of Windows 10, Microsoft’s new philosophy is for each user to manage his 8149_VM_EUC_HandsOnLab_Blog_InText_600pxor her own desktop and that every user has his or her own dedicated physical device. All data and settings in Windows 10 are tied to the local device.

This also means that Microsoft does not provide ways of managing and roaming many of Windows 10 settings, such as the Start Menu and File Type Associations.

This blog describes how to work around these limitations and use VMware User Environment Manager to get back the seamless user experience every user expects with non-persistent VDI environments.

Requirements:

  • Windows 10 Anniversary Update (build 1607) with the latest patches
  • VMware User Environment Manager 9.0 or newer

This guide assumes you already have the following User Environment Manager template configuration files:

  • Internet Explorer Personal Settings
  • Internet Explorer Passwords
  • Personal Certificates
  • Taskbar
  • Windows Explorer

These templates are already included in the User Environment Manager “Easy Start” configuration.

Logon Time

With the release of Windows 8 and Windows 10, the time it takes to log on increased dramatically. Windows 8 introduced new Metro apps, which were later called Modern, Store or Universal apps. These apps are installed in the user profile upon the first log on, and they have a negative impact on the logon time.

The easiest way to improve the logon time is to use the VMware Operating System (OS) Optimization Tool for the virtual desktop infrastructure (VDI) master image. This tool removes many of the Universal apps, which are typically not used or missed in an enterprise environment. This tool also applies other optimizations which have a huge positive impact on the overall performance and speed.

For more details on the VMware OS Optimization Tool, please read the following guide: http://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/vmware-view-virtual-desktops-windows-optimization.pdf

Start Menu

This section describes how to manage the Windows 10 Start Menu with VMware User Environment Manager. These steps allow users to customize their Windows 10 Start Menu (such as pinning items and tiles) and allow User Environment Manager to roam these customizations.

Known issues:

  • This might not work for Universal/Store apps pinned to Start.
  • The sorting order/layout of the icons in the Start Menu might not roam.

Create a Default Start Menu Layout for All Users

The default Windows 10 Start Menu shows Tiles for many Universal apps that most users never use. After removing all the unwanted Universal apps from the VDI master image using the VMware OS Optimization Tool, the default Start Menu shows many unnecessary Tiles. The best solution for most customers is defining a new default Start Menu for your users in the following way.

Create a default Start layout by following these three steps:

  1. Start a clean Windows 10 VM, log in with a test user, and make all layout changes to your Start Menu. This will be your default layout for all users.
  2. Export the Start Menu layout with this Powershell command that requires elevated permissions:
    • Export-StartLayout -Path C:\StartLayout.xml
  3. Finally import the layout into the Default User account by using this Powershell command:
    • Import-StartLayout –LayoutPath C:\StartLayout.xml –MountPath $env:SystemDrive\

All users logging on will receive this default Start Menu.

Roam Start Menu Customizations Made by Users

To make sure that any customization by users is captured and roams with the User Environment Manager profile, follow these three steps:

Step 1. Add Exclusion to Windows Explorer.INI

Add the following exclusion to the User Environment Manager configuration file called Windows Explorer. This exclusion prevents the Start Menu icons from appearing blank or disappearing.

[ExcludeIndividualRegistryValues]

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\StartMenuInit

Step 2. Create New User Environment Manager Config File to Roam the Start Menu

Create a new User Environment Manager configuration file called Windows 10 Start Menu. This will allow User Environment Manager to export and import the Start Menu layout at logoff and logon. Add the following content to the User Environment Manager configuration file:

[IncludeFiles]

<LocalAppData>\Microsoft\Windows\Shell\LayoutModification.XML

Add the following condition to the User Environment Manager configuration file to ensure it only applies to computers running Windows 10:

user-environment-manager-windows-10-1

Step 3. Create New User Environment Manager Logoff Task

Create a User Environment Manager Logoff Task to export the Start Menu at logoff. This Powershell command will export the Start Menu layout to the user profile location that is managed with the new Windows 10 Start Menu User Environment Manager configuration file.

In the command box, type the following:

Powershell.exe Export-StartLayout -Path C:\Users\$env:USERNAME\AppData\Local\Microsoft\Windows\Shell\LayoutModification.XML

Make sure to select the Run task: Before profile archive export pull-down option.

Add the same condition as in Step 2 to make sure this script runs only on Windows 10 computers.

user-environment-manager-windows-10-2

File Type Associations

Configuring and roaming File Type Associations (FTAs) in Windows 10 can be hard to accomplish, because Windows and some Universal apps typically restore their own default FTAs at logon. This chapter describes how User Environment Manager can help you in getting more control over FTs.

Create a new User Environment Manager configuration file called Windows 10 File Type Associations. This will allow User Environment Manager to export and import the FTAs at logoff and logon. Add the following content to the User Environment Manager configuration file:

[IncludeRegistryTrees]

HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts

HKCU\SOFTWARE\Microsoft\Windows\Shell\Associations

The User Environment Manager Configuration File described above only keeps the default FTA at the top of the list of defaults. On the next machine, you will still be prompted to confirm which app should be the default. This User Environment Manager Configuration File does, however, prevent going back to the Windows FTA defaults and from Universal apps taking over FTAs.

If you are looking for a more complete solution, you need to change the master image to define the default file type associations. Some methods to do so can be found at:

Microsoft Edge Browser

With the introduction of Edge, a new browser is added to Windows 10. Edge is also a Universal app, which means it runs in an isolated sandbox that is harder to manage.

User Environment Manager has a community page where people can upload their own configuration files to share. The list of these files can be found at: https://communities.vmware.com/community/vmtn/user-environment-manager/content?filterID=contentstatus[published]~objecttype~objecttype[document]

For the Edge browser, a good User Environment Manager Configuration File can be found here: https://communities.vmware.com/docs/DOC-32791

Internet Explorer 11 Browser

With the introduction of Internet Explorer 10, Microsoft decided to store all browsing information (cookies, history, etc.) in a central database in the user profile.

Because of the file size, this database has not been included in the regular User Environment Manager template configuration files Internet Explorer Personal Settings and Internet Explorer Passwords. If you want to capture this database to offer the best experience to your users, simply create a new User Environment Manager configuration file called “Internet Explorer WebCache” and add this content:

[IncludeFiles]

<LocalAppData>\Microsoft\Windows\WebCache\WebCacheV01.dat

User Environment Manager uses compression, so the size of the database will be optimized. However, be aware that managing this WebCache still adds some time to log on and log off because of the large file size.

Resources