In one of my last articles I showed how it is possible to extend the User State Migration Tool (USMT) which is used inside of Horizon Mirage. While I showed the steps on how to get a custom XML file recognized and used by Mirage I left all the heavy lifting of creating the custom XML files to you.
As many of our customers are using ThinApp and USMT as well as Mirage don’t support the migration of ThinApp user and application settings out of the box I though I published the XML file to get this done below. Luckily ThinApp saves all settings on a per-user per-application basis in a central location. By default this location is %AppData%Thinstall. Additionally ThinApp sandboxes are as portable at the ThinApp packages itself and therefore can be easily transferred between different systems.
The following XML file is telling Mirage respectively USMT to include this directory during the migration process.
<migration urlid="http://www.microsoft.com/migration/externalUserDocs"> <!-- This component migrates ThinApp sandboxes --> <component type="Documents" context="User"> <displayName>ThinApp Sandboxes</displayName> <role role="Data"> <rules context="User"> <include> <objectSet> <pattern type="File">%CSIDL_APPDATA%Thinstall* [*]</pattern> </objectSet> </include> </rules> </role> </component> </migration>
Just save this file as ThinApp.xml inside your USMT x86 and x64 folder and customize the Launch_USMT.cmd to add it to the Mirage USMT process. How this can be done is outlined in my article called: How to customize USMT in Horizon Mirage.