Hey guys I have kind of a strange problem using usmt to migrate some data from Windows XP to Windows 8.1 - which means that I use 2 different versions for scan- and loadstate (and I switch between x86 and x64 as well).
It seems to work as expected, however there is a problem with the migration of the theme/wallpaper - which I basically try to block...
So let's take a look to my scripts: I use scanstate on the XP client using:
scanstate.exe %uncpath% /i:migapp.xml /i:miguser.xml /config:config.xml /i:custom.xml /l:scanstate.log /v:13 /o /c
The loadstate on the Windows 8.1 Client (which comes as a mandatory sccm 2012 r2 package that runs only if a user is logged-on and with administrative rights) looks as follows:
loadstate.exe %uncpath% /i:migapp.xml /i:miguser.xml /config:config.xml /i:custom.xml /c /uel:0 /l:loadstate.log
Both scanstate and loadstate use the same xml files. migapp and miguser are the default ones. My "config.xml" is defined as follows:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<Applications>
<component displayname="Mozilla Firefox" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/mozilla firefox/settings"/>
<component displayname="Microsoft Office 2003" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/microsoft office 2003/container">
<component displayname="Microsoft Office Access 2003" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/microsoft office 2003/container/microsoft office access 2003/settings"/>
<component displayname="Microsoft Office Word 2003" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/microsoft office 2003/container/microsoft office word 2003/settings"/>
<component displayname="Microsoft Office Publisher 2003" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/microsoft office 2003/container/microsoft office publisher 2003/settings"/>
<component displayname="Microsoft Office Excel 2003" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/microsoft office 2003/container/microsoft office excel 2003/settings"/>
<component displayname="Office 2003 Common Settings" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/microsoft office 2003/container/office 2003 common settings/settings"/>
<component displayname="Microsoft Office SmartTags" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/microsoft office 2003/container/microsoft office smarttags/container">
<component displayname="Microsoft Lists SmartTags" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/microsoft office 2003/container/microsoft office smarttags/container/microsoft lists smarttags/settings"/>
<component displayname="Microsoft Place SmartTags" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/microsoft office 2003/container/microsoft office smarttags/container/microsoft place smarttags/settings"/>
</component>
<component displayname="Microsoft Office Outlook 2003" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/microsoft office 2003/container/microsoft office outlook 2003/settings"/>
<component displayname="Microsoft Office PowerPoint 2003" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/migapp/microsoft office 2003/container/microsoft office powerpoint 2003/settings"/>
</component>
</Applications>
<Documents>
<component displayname="Exclude some Default Locations" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/custom/exclude some default locations/data"/>
<component displayname="Exclude some other locations" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/custom/exclude some other locations/data"/>
<component displayname="Exclude mapped network drives and theme related registry keys" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/custom/exclude mapped network drives and theme related registry keys/data"/>
<component displayname="My Pictures" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/miguser/my pictures/data"/>
<component displayname="Component to migrate all files from "eigene dateien"" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/custom/component to migrate all files from "eigene dateien"/data"/>
<component displayname="Component to migrate all files from microsoft\signatures" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/custom/component to migrate all files from microsoft\signatures/data"/>
<component displayname="Do not migrate any pst file on C" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/custom/do not migrate any pst file on c/data"/>
<component displayname="My Documents" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/miguser/my documents/data"/>
<component displayname="Component to migrate all Desktop files except .lnk-files" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/custom/component to migrate all desktop files except .lnk-files/data"/>
<component displayname="Component to migrate all files from microsoft\Vorlagen to microsoft\templates" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/custom/component to migrate all files from microsoft\vorlagen to microsoft\templates/data"/>
<component displayname="Desktop" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/miguser/desktop/settings"/>
<component displayname="Shared Documents" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/miguser/shared documents/data"/>
<component displayname="User Data" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/miguser/user data/data"/>
<component displayname="Shared Desktop" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/miguser/shared desktop/settings"/>
</Documents>
<WindowsComponents>
<component displayname="WindowsSearchEngine-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/windowssearchengine-dl/windowssearchengine-dl/settings"/>
<component displayname="Microsoft-Windows-themeui-DL" migrate="no" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-themeui-dl/microsoft-windows-themeui-dl/settings"/>
<component displayname="Tablet PC Settings" migrate="yes" ID="tablet_pc_settings">
<component displayname="Accessories" migrate="yes" ID="tablet_pc_settings\tablet_pc_accessories">
<component displayname="Microsoft-Windows-TabletPC-Journal-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-tabletpc-journal-dl/microsoft-windows-tabletpc-journal-dl/settings"/>
</component>
<component displayname="Input Panel" migrate="yes" ID="tablet_pc_settings\tablet_pc_input_panel">
<component displayname="Microsoft-Windows-TabletPC-InputPanel-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-tabletpc-inputpanel-dl/microsoft-windows-tabletpc-inputpanel-dl/settings"/>
</component>
</component>
<component displayname="downlevelmanifests" migrate="yes" ID="downlevelmanifests">
<component displayname="Microsoft-Windows-Microsoft-Data-Access-Components-(MDAC)-ODBC-DriverManager-Dll-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-microsoft-data-access-components-(mdac)-odbc-drivermanager-dll-dl/microsoft-windows-microsoft-data-access-components-(mdac)-odbc-drivermanager-dll-dl/settings"/>
</component>
<component displayname="Hardware" migrate="yes" ID="hardware">
<component displayname="Printers and Faxes" migrate="yes" ID="hardware\printers_and_faxes">
<component displayname="Microsoft-Windows-Printing-Spooler-Networkclient-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-printing-spooler-networkclient-dl/microsoft-windows-printing-spooler-networkclient-dl/settings"/>
<component displayname="Microsoft-Windows-Printing-Spooler-Core-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-printing-spooler-core-dl/microsoft-windows-printing-spooler-core-dl/settings"/>
</component>
<component displayname="Phone and Modem" migrate="yes" ID="hardware\phone_and_modem">
<component displayname="Microsoft-Windows-TapiSetup-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-tapisetup-dl/microsoft-windows-tapisetup-dl/settings"/>
</component>
</component>
<component displayname="internet_explorer" migrate="yes" ID="internet_explorer">
<component displayname="internet_explorer\enhanced_security_configuration" migrate="yes" ID="internet_explorer\enhanced_security_configuration">
<component displayname="Microsoft-Windows-IE-ESC-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-ie-esc-dl/microsoft-windows-ie-esc-dl/settings"/>
</component>
</component>
<component displayname="Communications and Sync" migrate="yes" ID="communications_and_sync">
<component displayname="Windows Mail" migrate="yes" ID="communications_and_sync\windows_mail">
<component displayname="Microsoft-Windows-WAB-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-wab-dl/microsoft-windows-wab-dl/settings"/>
<component displayname="Microsoft-Windows-Mail-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-mail-dl/microsoft-windows-mail-dl/settings"/>
</component>
<component displayname="Fax" migrate="yes" ID="communications_and_sync\fax">
<component displayname="Microsoft-Windows-Fax-Service-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-fax-service-dl/microsoft-windows-fax-service-dl/settings"/>
<component displayname="Microsoft-Windows-Fax-Common-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-fax-common-dl/microsoft-windows-fax-common-dl/settings"/>
<component displayname="Microsoft-Windows-Fax-Client-Applications-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-fax-client-applications-dl/microsoft-windows-fax-client-applications-dl/settings"/>
</component>
</component>
<component displayname="Network and Internet" migrate="yes" ID="network_and_internet">
<component displayname="Offline Files" migrate="yes" ID="network_and_internet\offline_files">
<component displayname="Microsoft-Windows-OfflineFiles-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-offlinefiles-dl/microsoft-windows-offlinefiles-dl/settings"/>
</component>
<component displayname="Internet Options" migrate="yes" ID="network_and_internet\internet_options">
<component displayname="Microsoft-Windows-IE-InternetExplorer-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-ie-internetexplorer-dl/microsoft-windows-ie-internetexplorer-dl/settings"/>
<component displayname="Microsoft-Windows-IE-Feeds-Platform-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-ie-feeds-platform-dl/microsoft-windows-ie-feeds-platform-dl/settings"/>
<component displayname="Microsoft-Windows-IE-ClientNetworkProtocolImplementation-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-ie-clientnetworkprotocolimplementation-dl/microsoft-windows-ie-clientnetworkprotocolimplementation-dl/settings"/>
</component>
<component displayname="Networking Connections" migrate="yes" ID="network_and_internet\networking_connections">
<component displayname="Microsoft-Windows-RasConnectionManager-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-rasconnectionmanager-dl/microsoft-windows-rasconnectionmanager-dl/settings"/>
<component displayname="Microsoft-Windows-MPR-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-mpr-dl/microsoft-windows-mpr-dl/settings"/>
<component displayname="Microsoft-Windows-WlanSvc-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-wlansvc-dl/microsoft-windows-wlansvc-dl/settings"/>
<component displayname="Microsoft-Windows-Dot3svc-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-dot3svc-dl/microsoft-windows-dot3svc-dl/settings"/>
</component>
</component>
<component displayname="Microsoft-Windows-International-TimeZones-DL" migrate="no" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-international-timezones-dl/microsoft-windows-international-timezones-dl/settings"/>
<component displayname="Date, Time, Language and Region" migrate="yes" ID="date_time_language_and_region">
<component displayname="Regional Language Options" migrate="yes" ID="date_time_language_and_region\regional_language_options">
<component displayname="Microsoft-Windows-TextServicesFramework-Migration-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-textservicesframework-migration-dl/microsoft-windows-textservicesframework-migration-dl/settings"/>
<component displayname="Microsoft-Windows-MUI-Settings-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-mui-settings-dl/microsoft-windows-mui-settings-dl/settings"/>
<component displayname="Microsoft-Windows-International-Core-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-international-core-dl/microsoft-windows-international-core-dl/settings"/>
</component>
</component>
<component displayname="Microsoft-Windows-Extensible-Authentication-Protocol-Host-Service-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-extensible-authentication-protocol-host-service-dl/microsoft-windows-extensible-authentication-protocol-host-service-dl/settings"/>
<component displayname="Microsoft-Windows-eudcedit-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-eudcedit-dl/microsoft-windows-eudcedit-dl/settings"/>
<component displayname="Security" migrate="yes" ID="security">
<component displayname="Security Options" migrate="yes" ID="security\security_options">
<component displayname="Microsoft-Windows-Credential-Manager-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-credential-manager-dl/microsoft-windows-credential-manager-dl/settings"/>
</component>
</component>
<component displayname="Appearance and Display" migrate="no" ID="appearance_and_display">
<component displayname="Taskbar and Start Menu" migrate="no" ID="appearance_and_display\taskbar_and_start_menu">
<component displayname="Microsoft-Windows-explorer-DL" migrate="no" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-explorer-dl/microsoft-windows-explorer-dl/settings"/>
</component>
<component displayname="Personalized Settings" migrate="yes" ID="appearance_and_display\personalized_settings">
<component displayname="Microsoft-Windows-shmig-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-shmig-dl/microsoft-windows-shmig-dl/settings"/>
<component displayname="Microsoft-Windows-shell32-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-shell32-dl/microsoft-windows-shell32-dl/settings"/>
<component displayname="Microsoft-Windows-CommandPrompt-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-commandprompt-dl/microsoft-windows-commandprompt-dl/settings"/>
</component>
</component>
<component displayname="Additional Options" migrate="yes" ID="additional_options">
<component displayname="Windows Core Settings" migrate="yes" ID="additional_options\windows_core_settings">
<component displayname="Microsoft-Windows-Win32k-Settings-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-win32k-settings-dl/microsoft-windows-win32k-settings-dl/settings"/>
<component displayname="Microsoft-Windows-Web-Services-for-Management-Core-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-web-services-for-management-core-dl/microsoft-windows-web-services-for-management-core-dl/settings"/>
<component displayname="Microsoft-Windows-RPC-Remote-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-rpc-remote-dl/microsoft-windows-rpc-remote-dl/settings"/>
<component displayname="Microsoft-Windows-RPC-Local-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-rpc-local-dl/microsoft-windows-rpc-local-dl/settings"/>
<component displayname="Microsoft-Windows-RPC-HTTP-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-rpc-http-dl/microsoft-windows-rpc-http-dl/settings"/>
<component displayname="Microsoft-Windows-COM-DTC-Setup-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-com-dtc-setup-dl/microsoft-windows-com-dtc-setup-dl/settings"/>
<component displayname="Microsoft-Windows-COM-Base-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-com-base-dl/microsoft-windows-com-base-dl/settings"/>
<component displayname="Microsoft-Windows-ICM-Profiles-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-icm-profiles-dl/microsoft-windows-icm-profiles-dl/settings"/>
<component displayname="Microsoft-Windows-feclient-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-feclient-dl/microsoft-windows-feclient-dl/settings"/>
<component displayname="Microsoft-Windows-dpapi-keys-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-dpapi-keys-dl/microsoft-windows-dpapi-keys-dl/settings"/>
<component displayname="Microsoft-Windows-Crypto-keys-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-crypto-keys-dl/microsoft-windows-crypto-keys-dl/settings"/>
<component displayname="Microsoft-Windows-CAPI2-certs-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-capi2-certs-dl/microsoft-windows-capi2-certs-dl/settings"/>
</component>
</component>
<component displayname="Accessibility" migrate="yes" ID="accessibility">
<component displayname="Accessibility Settings" migrate="yes" ID="accessibility\accessibility_settings">
<component displayname="Microsoft-Windows-accessibilitycpl-DL" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/cmi/microsoft-windows-accessibilitycpl-dl/microsoft-windows-accessibilitycpl-dl/settings"/>
</component>
</component>
<component displayname="Start Menu" migrate="no" ID="http://www.microsoft.com/migration/1.0/migxmlext/miguser/start menu/settings"/>
<component displayname="Favorites" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/miguser/favorites/settings"/>
<component displayname="Quick Launch" migrate="no" ID="http://www.microsoft.com/migration/1.0/migxmlext/miguser/quick launch/settings"/>
<component displayname="Shared Favorites" migrate="yes" ID="http://www.microsoft.com/migration/1.0/migxmlext/miguser/shared favorites/settings"/>
<component displayname="Shared Start Menu" migrate="no" ID="http://www.microsoft.com/migration/1.0/migxmlext/miguser/shared start menu/settings"/>
</WindowsComponents>
<Policies>
<ErrorControl>
<!-- Example:
<fileError>
<nonFatal errorCode="33">* [*]</nonFatal>
<fatal errorCode="any">C:\Users\* [*]</fatal>
</fileError>
<registryError>
<nonFatal errorCode="5">* [*]</nonFatal>
</registryError>
-->
</ErrorControl>
<HardLinkStoreControl>
<!-- Example:
<fileLocked>
<createHardLink>c:\Users\* [*]</createHardLink>
<errorHardLink>C:\* [*]</errorHardLink>
</fileLocked>
-->
</HardLinkStoreControl>
</Policies>
<ProfileControl>
<localGroups>
<mappings>
<changeGroup from="Administrators" to="DropFromAdmin" appliesTo="AllUsers">
<include>
<pattern>*</pattern>
</include>
</changeGroup>
</mappings>
</localGroups>
</ProfileControl>
</Configuration>
And the custom.xml includes the following lines that I found on the www:
<?xml version="1.0" encoding="UTF-8" ?>
<migration urlid="http://www.microsoft.com/migration/1.0/migxmlext/custom">
<component type="Documents" context="User">
<displayName>Exclude mapped network drives and theme related registry keys</displayName>
<role role="Data">
<rules>
<unconditionalExclude>
<objectSet>
<pattern type="Registry">HKCU\Network\* [*]</pattern>
<pattern type="Registry">HKCU\Control Panel\Desktop\* [*]</pattern>
<pattern type="Registry">HKCU\Control Panel\Desktop [Wallpaper]</pattern>
<pattern type="Registry">HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\LastTheme\* [*]</pattern>
<pattern type="Registry">HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\* [*]</pattern>
<pattern type="Registry">HKCU\Software\Microsoft\Windows\CurrentVersion\ThemeManager\* [*]</pattern>
</objectSet>
</unconditionalExclude>
</rules>
</role>
</component>
<component type="Documents" context="System">
<displayName>Exclude default theme regkey</displayName>
<role role="Data">
<rules>
<unconditionalExclude>
<objectSet>
<pattern type="Registry">HKU\.Default\Control Panel\Desktop\* [*]</pattern>
</objectSet>
</unconditionalExclude>
</rules>
</role>
</component>
<component type="Documents" context="User">
<displayName>exclude custom theme location</displayName>
<role role="Data">
<rules>
<unconditionalExclude>
<objectSet>
<pattern type="File">%appdata%\..\Local\Microsoft\Windows\Themes\* [*.theme] </pattern>
</objectSet>
</unconditionalExclude>
</rules>
</role>
</component>
</migration>
Ok, that's it. On the Windows 8.1 Client I have theme file that is active with a wallpaper and screensaver assigned. When a user logs in and the loadstate advertisment is running, during the "apply settings for domain\current-logged-in-user" phase of loadstate the wallpaper switchs to black-screen. When I open the registry after the program successfully installed and navigate to the HKCU\Control Panel\Desktop\Wallpaper key - it is empty (it has been filled with the path to my custom wallpaper before loadstate ran).
I don't know what to try next, I simply don't get it working. And even thought of "context=user" the loadstate logfile is complaining about "HKEY\Control Panel\and-so-on" is "considered invalid in current context".
I hope that someone can help me - thanks in advance - luke