Microsoft User Experience Virtualization (UE-V): Facts and Review
16 years after roaming profiles made their debut in Windows NT 4.0 Microsoft takes another stab at synchronizing user settings across devices – a very different one. As we will see, UE-V is radically different from roaming profiles, but so similar to some other user environment management products that it seems like a best-practices implementation.
User Experience Virtualization (UE-V) will be part of MDOP. It manages user settings only, not data files. Microsoft wants you to use their Folder Redirection and Offline Files technologies for data.
In contrast to roaming profiles, where everything roams by default (with the exception of a single directory, AppData\Local), with UE-V nothing roams unless specifically included in so-called templates.
A template is an XML file that describes where settings are stored in the file system and in the registry. Typically one template per application or Windows component is used.
UE-V comes with the following ready-to-use templates:
- Office 2010 (Word, Excel, Outlook, Access, Project, PowerPoint, Visio, SharePoint Workspace, InfoPath)
- Internet Explorer 8, 9 and 10 (favorites, home page, tabs and toolbars)
- Windows applications (Calculator, Notepad, Wordpad)
- Themes (desktop theme including background, color, sounds and screen saver)
- Start menu
- Folder options
- Region / language settings
- Ease of access (accessibility and input settings)
The problem with a product working with inclusions is, of course, that you need to tell it exactly where the settings are stored that you want to roam. In other words, you need to create template files for every application. Microsoft knows that very well, of course. To ease the pain UE-V comes with an application simply called Generator (which is, by the way, remarkably similar in functionality to sepago’s PMAppMon; UE-V’s monitoring component even has nearly the same name: AppMonitor).
When you work with Generator, it starts the application you want to create the template for, monitors the file and registry locations accessed by the application and creates the XML template for you. You should be aware that manual editing of the result will in most cases be necessary.
Generator can be installed independently of the agent.
Any templates you create need to be made available to all machines where UE-V is used. The easiest way to do this is to specify a template catalog path, which is just another word for a file share. Alternatively PowerShell and WMI can be used to register new templates.
Agent and Infrastructure
UE-V does not require much of an infrastructure. Its agent must be deployed on every machine where users log on and settings are to be managed. Apart from that you only need a file server to be used as settings storage location. If no storage location is specified, the user’s home directory is used. This is similar to the way Citrix Profile Management works. This architecture has the advantage that initial deployment is quick and straightforward because there are no complex back-end services to configure.
The agent configuration can be centrally managed via Group Policy (as of beta 2).
UE-V can be used on mobile computers if the settings store is made available offline through Windows Offline Files. In offline or slow-link modes, changes are stored in the local offline files cache, which in turn is synchronized with the file server. Combining UE-V with Offline Files is a clever move, as it provides offline functionality at no cost, but I wonder how synchronization conflicts are handled that arise if one set of settings is modified both on a laptop and a terminal server at the same time.
See my article Windows 7 Offline Files Survival Guide for more information about Offline Files.
In contrast to roaming profiles, where the entire profile is loaded at logon time, UE-V only loads settings when it needs them. Windows settings are loaded during logon, unlock and remote session connect, but application settings are not loaded until the moment an application is actually started. Similarly settings are stored when applications are closed or the user logs off, locks the screen or disconnects from a remote session. These events that cause UE-V to load or store settings are called triggers.
Application start and stop triggers allow for a very cool demo: have two sessions side by side. Show that Word is configured similarly in both sessions. Run Word in session 1, change some settings and close the application. Then start Word in session 2 and demonstrate how the changed settings are “magically” present.
Supported Operating Systems and Application Delivery Methods
UE-V is supported on Windows 7, Windows 8 (client and server, but almost certainly not on Windows on ARM) and Windows Server 2008 R2. It can be used in place of roaming profiles in most if not all situations where roaming profiles are used today. UE-V works with Remote Desktop Services, and, this is notable, with App-V: it can synchronize settings between a virtualized and a natively installed version of Outlook, for example.
Settings can be reset to a pristine state – per application. This is a very powerful feature that could help reduce profile deletions, a much too popular tactic amongst administrators, employed if an application suddenly works strangely for a user and no one has time to really troubleshoot the issue.
Although UE-V has the “V” in the name, it does not virtualize settings. It merely synchronizes files and registry keys between computers, where they are injected into the regular user profile. As such, it does not replace traditional user profiles, but it may be used in place of roaming profiles (given a sufficient amount of custom templates).
Neither does UE-V migrate settings between application versions that store their settings differently, e.g. Office 2007 and Office 2010. It merely replicates changes in the file system and the registry, without interpreting the data.
Finally it only works with settings stored in the user profile. Data located outside of C:\Users\Username cannot be managed by UE-V.
UE-V is late to the party, very late. In the terminal server world, where profile issues have been pressing for more than a decade due to the statelessness of the servers and the tendency to use multiple concurrent sessions per user, an entire ecosystem has evolved over the years with different vendors that each offer their own variant of settings synchronization and profile management. That is about to end.
Citrix started the consolidation in the profile management space when they bought sepagoPROFILE (which I architected) in 2008. VMware followed in 2010 with the acquisition of RTO Software. Another 2 years later Microsoft unveils UE-V.
Now that profile management is baked into the OS and available from Citrix and VMware for their respective platforms it will be next to impossible for most vendors to survive. As always in such cases this is mostly good for the customer, who gets a product that is good enough for most scenarios, but bad for ISVs.
The thing that is missing most, application templates, can easily be provided by Microsoft’s vast community. If Microsoft does not do it, someone else will set up a template sharing site with user ratings and community reviews (hint, hint).