C
Carl Farrington
Vista Upgrade fails at "Gathering Files" when two users share the same user
profile (ProfileImagePath). Message: "the upgrade was cancelled".
It seems that the Vista upgrade (from XP SP2), looks through
HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProfileList, and tries to
do some work on the registry hives of the user profiles it finds
(NTUSER.DAT). When it comes across a hive that is loaded, but not the
currently logged-on user, it attempts to unload that hive from the registry
so that it can do whatever it's trying to do.
In the (unusual) case where a non-logged-on user points at the same profile
path as the currently logged-on user, the migration will fail because whilst
trying to unload the hive of the non-logged-on user, it is in effect trying
to unload the hive of the logged-on user, which can't be done.
For example, I had my Local Administrator account set to use the profile at
\Documents and Settings\carl, as well as DOMAINUSER\carl also using this
profile.
This is an unusual situation, although I have done this where a non-techie
has decided to set his own laptop up, and has all sorts of settings and
customisation, only for me to point out that the machine needs joining to
the domain which would normally result in a fresh profile being created. I
tend to migrate the profile and remove the old local user, but occasionally
I also leave the previous local account pointing at that profile also.
There is a piece of software out there intended for just this purpose. It's
called "User Profile Wizard", by a company called ForensiT. See
http://www.forensit.com/profwiz/index.htm . The reason I was in this
situation personally was because I wanted to test out this tool, since an IT
friend of mine liked the procedure I used but thought there should be an
easy tool to do it, and I found my procedure doesn't work properly with
Vista, so I tested out this tool on my laptop, by mapping the local
administrator account to my own user profile (carl).
Also see
http://groups.google.co.uk/group/mi...b1e82e9a18/b9678c76ffd249c7?#b9678c76ffd249c7
(http://tinyurl.com/34xdbz ) for the manual process I use, pre-Vista anyway.
I haven't learned the differences with Vista yet.
The fix is to go into HKLM\Software\Microsoft\Windows
NT\CurrentVersion\ProfileList and find the SID of the extra/unneccesary user
of the profile, and change their ProfileImagePath to something different.
Doesn't matter if that path doesn't exist yet, a clean profile will be
created upon logon.
Here are some logs. I know I am not the only person who has had this
problem, but I never found a solution out here on the Internet, so hopefully
posting this will help others who may find themselves in this odd situation.
Incidentally, the OEM Vista disk and license can be used to upgrade from OEM
XP SP2 no problem.
setupact.log:
2007-10-18 21:14:07, Warning [0x0803da] MIG Waiting 6000 msec to retry
hive load (tries remaining: 1)...
2007-10-18 21:14:13, Warning [0x0803d9] MIG IndirectKeyMapper:
RegLoadKey(HKEY_USERS,S-1-5-21-1708537768-839522115-1202660629-1108,C:\Documents
and Settings\carl\NTUSER.DAT) failed (32)
2007-10-18 21:14:13, Info MIG Attempting to find and
unload hive C:\Documents and Settings\carl\NTUSER.DAT
(\Device\HarddiskVolume1\Documents and Settings\carl\NTUSER.DAT)
2007-10-18 21:14:13, Info [0x0808ad] MIG Hive
\Device\HarddiskVolume1\Documents and Settings\carl\NTUSER.DAT is loaded at
\REGISTRY\USER\S-1-5-21-73586283-1417001333-725345543-500
2007-10-18 21:14:13, Info [0x0808ae] MIG Unloading hive at
HKEY_USERS\S-1-5-21-73586283-1417001333-725345543-500
2007-10-18 21:14:13, Warning [0x0808af] MIG Failed to unload hive at
HKEY_USERS\S-1-5-21-73586283-1417001333-725345543-500 (error 5)
2007-10-18 21:14:13, Warning [0x0808aa] MIG Failed to find and unload
hive: C:\Documents and Settings\carl\NTUSER.DAT (error 5)
2007-10-18 21:14:13, Info MIG Dumping hive list at
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\hivelist...
2007-10-18 21:14:13, Info MIG
[\REGISTRY\MACHINE\HARDWARE] =>
2007-10-18 21:14:13, Info MIG
[\REGISTRY\MACHINE\SECURITY] =>
\Device\HarddiskVolume1\WINDOWS\system32\config\SECURITY
2007-10-18 21:14:13, Info MIG
[\REGISTRY\MACHINE\SOFTWARE] =>
\Device\HarddiskVolume1\WINDOWS\system32\config\software
2007-10-18 21:14:13, Info MIG
[\REGISTRY\MACHINE\SYSTEM] =>
\Device\HarddiskVolume1\WINDOWS\system32\config\system
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\.DEFAULT] =>
\Device\HarddiskVolume1\WINDOWS\system32\config\default
2007-10-18 21:14:13, Info MIG [\REGISTRY\MACHINE\SAM]
=> \Device\HarddiskVolume1\WINDOWS\system32\config\SAM
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-20] => \Device\HarddiskVolume1\Documents and
Settings\NetworkService\NTUSER.DAT
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-20_Classes] => \Device\HarddiskVolume1\Documents and
Settings\NetworkService\Local Settings\Application
Data\Microsoft\Windows\UsrClass.dat
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-19] => \Device\HarddiskVolume1\Documents and
Settings\LocalService\NTUSER.DAT
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-19_Classes] => \Device\HarddiskVolume1\Documents and
Settings\LocalService\Local Settings\Application
Data\Microsoft\Windows\UsrClass.dat
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-21-73586283-1417001333-725345543-500] =>
\Device\HarddiskVolume1\Documents and Settings\carl\NTUSER.DAT
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-21-73586283-1417001333-725345543-500_Classes] =>
\Device\HarddiskVolume1\Documents and Settings\carl\Local
Settings\Application Data\Microsoft\Windows\UsrClass.dat
2007-10-18 21:14:13, Info MIG End of hive list
2007-10-18 21:14:13, Warning [0x0803db] MIG IndirectKeyMapper:
RegLoadKey(HKEY_USERS,S-1-5-21-1708537768-839522115-1202660629-1108,C:\Documents
and Settings\carl\NTUSER.DAT) failed; giving up (32)
setuperr.log:
2007-10-18 21:14:13, Error [0x08039d] MIG Cannot add mapping for
user profile C:\Documents and Settings\carl. Error: 32: class
Mig::Win32ErrorException: Win32ErrorException: Error(32), .
__thiscall Mig::CIndirectKeyMapper::CIndirectKeyMapper(class UnBCL::String
*,struct HKEY__ *,class UnBCL::String *,class UnBCL::String *,int,int,const
Mig::HiveLoadRetryOptions *)
[gle=0x000003f0]
2007-10-18 21:14:13, Error [0x080801] MIG User profile loading
error. Aborting due to external request.[gle=0x000003f0]
2007-10-18 21:14:13, Error [0x0802fa] MIG MigStartUp caught
exception: class Mig::Win32ErrorException: Win32ErrorException: Error(1253),
User profile loading error. Aborting due to external request..
void __thiscall Mig::COnlineWinNTPlatform:rocessUser(class
Mig::CRegistryDataStore *,class Mig::CRegistryDataUnit *,class UnBCL::String
*,class UnBCL::String *,int)
profile (ProfileImagePath). Message: "the upgrade was cancelled".
It seems that the Vista upgrade (from XP SP2), looks through
HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProfileList, and tries to
do some work on the registry hives of the user profiles it finds
(NTUSER.DAT). When it comes across a hive that is loaded, but not the
currently logged-on user, it attempts to unload that hive from the registry
so that it can do whatever it's trying to do.
In the (unusual) case where a non-logged-on user points at the same profile
path as the currently logged-on user, the migration will fail because whilst
trying to unload the hive of the non-logged-on user, it is in effect trying
to unload the hive of the logged-on user, which can't be done.
For example, I had my Local Administrator account set to use the profile at
\Documents and Settings\carl, as well as DOMAINUSER\carl also using this
profile.
This is an unusual situation, although I have done this where a non-techie
has decided to set his own laptop up, and has all sorts of settings and
customisation, only for me to point out that the machine needs joining to
the domain which would normally result in a fresh profile being created. I
tend to migrate the profile and remove the old local user, but occasionally
I also leave the previous local account pointing at that profile also.
There is a piece of software out there intended for just this purpose. It's
called "User Profile Wizard", by a company called ForensiT. See
http://www.forensit.com/profwiz/index.htm . The reason I was in this
situation personally was because I wanted to test out this tool, since an IT
friend of mine liked the procedure I used but thought there should be an
easy tool to do it, and I found my procedure doesn't work properly with
Vista, so I tested out this tool on my laptop, by mapping the local
administrator account to my own user profile (carl).
Also see
http://groups.google.co.uk/group/mi...b1e82e9a18/b9678c76ffd249c7?#b9678c76ffd249c7
(http://tinyurl.com/34xdbz ) for the manual process I use, pre-Vista anyway.
I haven't learned the differences with Vista yet.
The fix is to go into HKLM\Software\Microsoft\Windows
NT\CurrentVersion\ProfileList and find the SID of the extra/unneccesary user
of the profile, and change their ProfileImagePath to something different.
Doesn't matter if that path doesn't exist yet, a clean profile will be
created upon logon.
Here are some logs. I know I am not the only person who has had this
problem, but I never found a solution out here on the Internet, so hopefully
posting this will help others who may find themselves in this odd situation.
Incidentally, the OEM Vista disk and license can be used to upgrade from OEM
XP SP2 no problem.
setupact.log:
2007-10-18 21:14:07, Warning [0x0803da] MIG Waiting 6000 msec to retry
hive load (tries remaining: 1)...
2007-10-18 21:14:13, Warning [0x0803d9] MIG IndirectKeyMapper:
RegLoadKey(HKEY_USERS,S-1-5-21-1708537768-839522115-1202660629-1108,C:\Documents
and Settings\carl\NTUSER.DAT) failed (32)
2007-10-18 21:14:13, Info MIG Attempting to find and
unload hive C:\Documents and Settings\carl\NTUSER.DAT
(\Device\HarddiskVolume1\Documents and Settings\carl\NTUSER.DAT)
2007-10-18 21:14:13, Info [0x0808ad] MIG Hive
\Device\HarddiskVolume1\Documents and Settings\carl\NTUSER.DAT is loaded at
\REGISTRY\USER\S-1-5-21-73586283-1417001333-725345543-500
2007-10-18 21:14:13, Info [0x0808ae] MIG Unloading hive at
HKEY_USERS\S-1-5-21-73586283-1417001333-725345543-500
2007-10-18 21:14:13, Warning [0x0808af] MIG Failed to unload hive at
HKEY_USERS\S-1-5-21-73586283-1417001333-725345543-500 (error 5)
2007-10-18 21:14:13, Warning [0x0808aa] MIG Failed to find and unload
hive: C:\Documents and Settings\carl\NTUSER.DAT (error 5)
2007-10-18 21:14:13, Info MIG Dumping hive list at
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\hivelist...
2007-10-18 21:14:13, Info MIG
[\REGISTRY\MACHINE\HARDWARE] =>
2007-10-18 21:14:13, Info MIG
[\REGISTRY\MACHINE\SECURITY] =>
\Device\HarddiskVolume1\WINDOWS\system32\config\SECURITY
2007-10-18 21:14:13, Info MIG
[\REGISTRY\MACHINE\SOFTWARE] =>
\Device\HarddiskVolume1\WINDOWS\system32\config\software
2007-10-18 21:14:13, Info MIG
[\REGISTRY\MACHINE\SYSTEM] =>
\Device\HarddiskVolume1\WINDOWS\system32\config\system
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\.DEFAULT] =>
\Device\HarddiskVolume1\WINDOWS\system32\config\default
2007-10-18 21:14:13, Info MIG [\REGISTRY\MACHINE\SAM]
=> \Device\HarddiskVolume1\WINDOWS\system32\config\SAM
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-20] => \Device\HarddiskVolume1\Documents and
Settings\NetworkService\NTUSER.DAT
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-20_Classes] => \Device\HarddiskVolume1\Documents and
Settings\NetworkService\Local Settings\Application
Data\Microsoft\Windows\UsrClass.dat
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-19] => \Device\HarddiskVolume1\Documents and
Settings\LocalService\NTUSER.DAT
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-19_Classes] => \Device\HarddiskVolume1\Documents and
Settings\LocalService\Local Settings\Application
Data\Microsoft\Windows\UsrClass.dat
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-21-73586283-1417001333-725345543-500] =>
\Device\HarddiskVolume1\Documents and Settings\carl\NTUSER.DAT
2007-10-18 21:14:13, Info MIG
[\REGISTRY\USER\S-1-5-21-73586283-1417001333-725345543-500_Classes] =>
\Device\HarddiskVolume1\Documents and Settings\carl\Local
Settings\Application Data\Microsoft\Windows\UsrClass.dat
2007-10-18 21:14:13, Info MIG End of hive list
2007-10-18 21:14:13, Warning [0x0803db] MIG IndirectKeyMapper:
RegLoadKey(HKEY_USERS,S-1-5-21-1708537768-839522115-1202660629-1108,C:\Documents
and Settings\carl\NTUSER.DAT) failed; giving up (32)
setuperr.log:
2007-10-18 21:14:13, Error [0x08039d] MIG Cannot add mapping for
user profile C:\Documents and Settings\carl. Error: 32: class
Mig::Win32ErrorException: Win32ErrorException: Error(32), .
__thiscall Mig::CIndirectKeyMapper::CIndirectKeyMapper(class UnBCL::String
*,struct HKEY__ *,class UnBCL::String *,class UnBCL::String *,int,int,const
Mig::HiveLoadRetryOptions *)
[gle=0x000003f0]
2007-10-18 21:14:13, Error [0x080801] MIG User profile loading
error. Aborting due to external request.[gle=0x000003f0]
2007-10-18 21:14:13, Error [0x0802fa] MIG MigStartUp caught
exception: class Mig::Win32ErrorException: Win32ErrorException: Error(1253),
User profile loading error. Aborting due to external request..
void __thiscall Mig::COnlineWinNTPlatform:rocessUser(class
Mig::CRegistryDataStore *,class Mig::CRegistryDataUnit *,class UnBCL::String
*,class UnBCL::String *,int)