I was under the impression that USMT will save/copy any unsynchronised offline files, whilst ignoring files that are safely synchronised elsewhere – until recently.
On performing an in-place refresh from Windows Vista x86 to Windows 7 x86 SP1 we had a single user who’s un-sync’d offline files were not saved/copied by USMT. Unfortunately there was little we could do after the event, other than try and work out why, without the scanstate.log files.
I then came across the following Microsoft KB: http://support.microsoft.com/kb/2736596
So USMT should protect and migrate these files… it just doesn’t.
To cut a long story short, I performed the advised steps that were specific to my scenario – Windows Vista to Windows 7; extract from listed KB article. I simply copied the files into the USMT package source and updated the package on all distribution points.
How to fix 32-bit Windows Vista or Windows 7 migrating to Windows 7
- Locate a computer that is running a 32-bit or 64-bit version of Windows 7.
- Take one of the following actions, depending on your operating system:
- If you are migrating to a computer that is running a 32-bit version of Windows 7, follow these steps:
- Copy the following file: C:\Windows\winsxs\x86_microsoft-windows-offlinefiles-core_31bf3856ad364e35_6.1.7601.17514_none_a04fb2d2ba296321\cscmig.dll
- Save the file as follows on the source computer, and then migrate by using scanstate: C:\Usmt\x86\ReplacementManifests\Microsoft-Windows-Offlinefiles-Core\cscmig.dll
- If you are migrating to a computer that is running a 32-bit version of Windows 7, follow these steps:
NoteIf you are using /targetwindows7, you must change the path to use “ReplacementManifests7” instead of “ReplacementManifests.”
b. If you are migrating to a computer that is running a 64-bit version of Windows 7, follow these steps:
- Copy the following file: C:\Windows\winsxs\x86_microsoft-windows-m..eplacementmanifests_31bf3856ad364e35_6.1.7601.17514_none_fdfbc5f949b9a49e\cscmig.dll
- Save the file as follows on the source computer, and then migrate by using scanstate: C:\Usmt\x86\ReplacementManifests\Microsoft-Windows-Offlinefiles-Core\cscmig.dll
NoteIf you are using /targetwindows7, you must change the path to use “ReplacementManifests7” instead of “ReplacementManifests.”
3. Take one of the following actions, depending on your operating system:
a. If you are migrating to a computer that is running a 32-bit version of Windows 7, follow these steps:
- Copy the following file: C:\Windows\winsxs\x86_microsoft-windows-offlinefiles-core_31bf3856ad364e35_6.1.7601.17514_none_a04fb2d2ba296321\cscmig.dll
- Save the file as follows on the destination computer, and then migrate by using loadstate: C:\Usmt\x86\ReplacementManifests\Microsoft-Windows-Offlinefiles-Core\cscmig.dll
b. If you are migrating to a computer that is running a 64-bit version of Windows 7, follow these steps:
- Copy the following file: C:\Windows\winsxs\amd64_microsoft-windows-offlinefiles-core_31bf3856ad364e35_6.1.7601.17514_none_fc6e4e567286d457\cscmig.dll
- Save the file as follows on the destination computer, and then migrate by using loadstate: C:\Usmt\x64\ReplacementManifests\Microsoft-Windows-Offlinefiles-Core\cscmig.dll
Instructions for x64 migrations are in the source article.