Move Windows 7 to dissimilar hardware
#1
Posted 26 November 2011 - 01:03 PM
I spent about a day and a half trying to do this with True Image's Universal Restore, which totally failed me and just gave me a Windows that rebooted just after the boot animation started, despite pointing TI at the drivers it asked for (JMicron and AMD IDE). I tried restoring with boot iso and from within another working Windows install, both with the same results. I've moved from a Biostar TA790GXBE with Athlon II x4 630 to a MSI 990FXA-GD80 with Ph2 X4 955. Using Universal Restore to move XP from a Gigabyte 8I848 with Pentium 4 to the Biostart TA790GXBE with Athlon II X4 630 worked fine though.
In the end I put the HD back in the old PC, sysprep'd it and then moved it back to the new PC and that worked fine. The downside with this is it resets a lot of settings and it's created a new user "Main.X4", which hasn't got half my startmenu shortcuts, etc. My previous user "Main" is still there, but there's many files under Appdata that I'm not sure if I can just copy to the new user. The computer name is "X4", which is why I presume it's named the new user as it has. There's only user "Main" shown on login screen/under Computer Management, so obviously this has been linked to Users\Main.X4 now, so maybe I can change it back to Users\Main somehow.
Anyway, what I'd like to see is a tutorial showing how to reset the drivers manually, rather than using sysprep, so that at next boot it will detect and install the correct drivers. I'd like to be able to do this from within a PE environment on the new hardware, so that I can restore an image to a partition on my HD, boot into PE and reset the drivers from there before booting Windows 7. Being in the PE environment, it should obviously be using the correct drivers for the HD at least, so it should be possible to obtain the IDE driver details from the registry (either manually or automatically if possible). For my new board, in Windows 7 I can see that my HD is connected to:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CriticalDeviceDatabase\pci#ven_1002&dev_439C]
"Service"="pciide"
"ClassGUID"="{4D36E96A-E325-11CE-BFC1-08002BE10318}"
and the service settings are:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\pciide]
"Start"=dword:00000000
"Type"=dword:00000001
"ErrorControl"=dword:00000003
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,70,00,63,00,69,00,69,00,64,00,65,\
00,2e,00,73,00,79,00,73,00,00,00
"Group"="System Bus Extender"
"DriverPackageId"="mshdc.inf_amd64_neutral_a69a58a4286f0b22"
"Tag"=dword:00000007
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\pciide\Enum]
"0"="Root\\LEGACY_PCIIDE\\0000"
"Count"=dword:00000004
"NextInstance"=dword:00000004
"1"="PCI\\VEN_1002&DEV_4390&SUBSYS_76401462&REV_40\\3&11583659&0&88"
"2"="PCI\\VEN_1002&DEV_439C&SUBSYS_76401462&REV_40\\3&11583659&0&A1"
"3"="PCI\\VEN_197B&DEV_2362&SUBSYS_76401462&REV_10\\4&76a372&0&0020"
So, perhaps there could be a util to run in 7PE that would:
a) ask for the drive letter where the Windows 7 you want to reset is installed,
detect what device and service is associated with that drive,
c) copy that information from the 7PE registry to the Windows 7 registry
d) reset/clear any other devices/drivers that might prevent Windows 7 booting.
But even without a util to do this automatically, a tutorial to show how to do it manually would be most handy
#2
Posted 26 November 2011 - 01:50 PM
http://technet.micro...032(WS.10).aspx
Wonko
- doveman likes this
#3
Posted 26 November 2011 - 02:38 PM
I used it for Restore of Win 7 on USB_HDD,
but in the same way you might use it in PE environment direct for Restore of Win 7 on HDD.
(fot the case of Restore on HDD you need to Uncheck the two Checkboxes for USB Tweaks)
http://www.911cd.net...showtopic=23553
Install of Windows 7 on USB-HDD was realized as follows:
IMG_XP_Restore.exe takes care of everything and creates Universal Windows 7 booting from USB-HDD
- Install Windows 7 as usual on local harddisk and Reduce Size
- Connect USB-HDD on which you plan to Install Windows 7, so that USB-HDD settings are known in Windows 7 registry.
Wait until all USB-HDD drives are visible in Windows Explorer- Reboot with other OS e.g XP or PE, anyway so that Windows 7 is not running
- IMG_XP_Restore.exe can then be used to direct Restore in about 20 min Windows 7 on your USB-HDD
- Reboot from USB-HDD with Windows 7 and wait about 3 min to let drivers for new hardware found to be installed
- doveman likes this
#4
Posted 26 November 2011 - 04:54 PM
I just posted a Tutorial that may cover your needs and MORE:
Migrate Win7 between PCs using VHD
- doveman likes this
#5
Posted 26 November 2011 - 05:05 PM
http://technet.micro...282(WS.10).aspx
- Windows® 7 Enterprise
- Windows® 7 Ultimate
- Windows Server 2008 R2
Wonko
#6
Posted 26 November 2011 - 05:25 PM
#7
Posted 27 November 2011 - 09:49 AM
Fix_7hdc does adjust mass storage controller drivers at offline windows.I've moved from a Biostar TA790GXBE with Athlon II x4 630 to a MSI 990FXA-GD80 with Ph2 X4 955.
Being in the PE environment, it should obviously be using the correct drivers for the HD at least, so it should be possible to obtain the IDE driver details from the registry
You may enable default drivers and install new ones.
http://www.911cd.net...showtopic=24245
- doveman likes this
#8
Posted 27 November 2011 - 02:40 PM
I'm going to try Fix_7hdc first (thanks cdob), as that looks like the simplest approach if it does the trick.
If it does work, I'll have two Win7 partitions. The one I'm using now (booted after sysprep) and the fixed TI restored one. As I've installed drivers and tweaked the one I'm using now somewhat, it might be easier to carry on using this and keep the restored TI partition as a backup (and at least I'll know what to do next time I have to move Win7 to new hardware!), but that kinda depends on a) whether I can relink user Main to folder UsersMain and whether sysprep will have deleted any important app-related user settings from this folder or the registry (probably not).
I might be able to migrate my user Main to my current install with USMT, although I think the fact that Main is currently linked to UsersMain.X4 might complicate things. I'm not really sure what using USMT will do that just copying the folder UsersMain from one install to another won't (USMT looks rather complicated, so I don't want to use it if I don't need to!)
#9
Posted 27 November 2011 - 03:53 PM
If you want to learn how to fully migrate Win7 manually without extra tools, MIGRATE WINDOWS 7 TO NEW PC HARD DRIVE MANUALLY will help.
- doveman likes this
#10
Posted 28 November 2011 - 12:28 AM
As cdob pointed, Fix_7hdc addresses some of migration tasks, but not all. When you backup and restore existing OS volume to a new drive, your user account settings won't be affected. USMT is designed for sysadmins and allows to transfer user accounts and installed apps, while Windows 7 Easy Transfer feature allows to migrate user accounts and app settings, but not installed apps.
If you want to learn how to fully migrate Win7 manually without extra tools, MIGRATE WINDOWS 7 TO NEW PC HARD DRIVE MANUALLY will help.
Thanks for clarifying USMT's purpose. Easy Transfer is a lot simpler and more what I need at the moment
But whilst I can run that on my old Win7 to export my user Main, I'm not sure it will work importing that to my current Win7, which has user Main linked to folder Users\Main.X4 and it's this I'd like to fix if possible (i.e. link user Main back to folder Users\Main).
I can see a lot of places in the registry where Users\Main.X4 is referenced, so hopefully there's a tool that can automate this process.
#11
Posted 28 November 2011 - 02:22 AM
At times someone asks a question he thinks bothers only him and only in a specific way. But some of these questions are so typical and affect so many people in a similar way, they deserve a closer look or a good Tutorial.
- doveman likes this
#12
Posted 28 November 2011 - 05:20 AM
Assuming, you can boot on the new PC and login, follow this Tutorial to Change the Default Location of Windows 7 User Folders to UsersMain, then use Win7 Easy Transfer to migrate your user account from old to the new PC.
At times someone asks a question he thinks bothers only him and only in a specific way. But some of these questions are so typical and affect so many people in a similar way, they deserve a closer look or a good Tutorial.
Excellent, looks like I only need to change one key under HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProfileList (ProfileImagePath)
I can see from that Tutorial that this probably most commonly gets used when someone wants to move their user folder to a different partition with more space, so maybe I'm the first to end up in this pickle
I probably won't even need to user Easy Transfer this time, as my User/Main folder's already sitting on my new PC doing nothing
#13
Posted 28 November 2011 - 06:12 AM
After moving your Windows 7 installation to another hardware, you will need to reactivate Windows.
#14
Posted 28 November 2011 - 11:57 AM
Hi dovement,
After moving your Windows 7 installation to another hardware, you will need to reactivate Windows.
Thanks, no problem there.
#15
Posted 29 November 2011 - 09:53 PM
After changing the ProfileImagePath most things are OK, but Sandboxie throws up a load of errors everytime I try and use it. It's fine if I create a new user and login as that and IE works fine, but I tried uninstalling Sandboxie and IE9 and reinstalling them both, to no avail.
I found there's a wierd Symbolic Link C:UsersMainAppDataLocalApplication Data which links to C:UsersMainAppDataLocal so if you click on it you keep going further and further into a loop, but apparently that's normal as it's there with the new user account as well.
It seems Win7 creates a new user with the .x4 suffix when I first log on to an account that existed on my previous PC. I should have just left it alone and copied the important stuff across from UserMain to UserMain.X4! I'll probably change the ProfileImagePath back and do that, or just create a new user if I'm still having problems (or try the export/import with Easy Transfer).
Regarding Fix_7hdc, it helped a bit as now that partition doesn't reboot as soon as the boot animation starts, but it just sits there on the animation. I left it overnight and it was still doing it this morning! I haven't been able to find an .inf for PCIIDE that references my hardware (VEN_1002&DEV_439C) so it wasn't able to install those drivers, but they should already be there anyway. I'll have to check the registry again, but I recall that under [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicespciideEnum] it didn't have much and certainly not:
"1"="PCIVEN_1002&DEV_4390&SUBSYS_76401462&REV_403&11583659&0&88"
"2"="PCIVEN_1002&DEV_439C&SUBSYS_76401462&REV_403&11583659&0&A1"
"3"="PCIVEN_197B&DEV_2362&SUBSYS_76401462&REV_104&76a372&0&0020"
so maybe if I add that myself it will boot, but I thought I'd let you know in case there's some tweaking that can be done to fix_7hdc to make it even better
#16
Posted 29 November 2011 - 10:51 PM
How did you used fid_7hdc?Regarding Fix_7hdc, it helped a bit as now that partition doesn't reboot as soon as the boot animation starts, but it just sits there on the animation.
Generic IDE HardwareID PCICC_0101 is connected to pciide.I haven't been able to find an .inf for PCIIDE that references my hardware (VEN_1002&DEV_439C) so it wasn't able to install those drivers, but they should already be there anyway.
Registry HardwareIsDatabase PCI#CC_0101 is connected to pciide by default.
Is service pciide set to start=0 now?
Don't you convert from a "single processor motherboard with single processor" to a "multiple-processor ACPI computer" ?it just sits there on the animation.
http://support.micro...kb/299340/en-us
Configure bcd: set detect hal on.
http://msdn.microsof...f542202(v=vs.85).aspx
http://blogs.technet...-vhd-image.aspx
#17
Posted 29 November 2011 - 11:14 PM
How did you used fid_7hdc?
I ran it under 7PE and pointed it to the partition I wanted to reset.
Generic IDE HardwareID PCI\\CC_0101 is connected to pciide.
Registry HardwareIsDatabase PCI#CC_0101 is connected to pciide by default.
Is service pciide set to start=0 now?
From memory it was and all the others I checked (amdide, IAStorv, etc) were set to 3, but I'll double-check.
Don't you convert from a "single processor motherboard with single processor" to a "multiple-processor ACPI computer" ?
http://support.micro...kb/299340/en-us
Configure bcd: set detect hal on.
http://msdn.microsof...f542202(v=vs.85).aspx
http://blogs.technet...-vhd-image.aspx
No, I had a Athlon II X4 630 and now I've got a Phenom II X4 955, so at least I shouldn't have to worry about the HAL
#18
Posted 30 November 2011 - 02:15 PM
Services:
Not Working:
amdide 3
amdide64 0
amdsata 3
atapi 0
iaStorV 3
intelide 3
pciide 0
viaide 3
Working:
amdide 0
amdide64 not listed
amdsata 0
atapi 0
iaStorV 0
intelide 0
pciide 0
viaide 0
So perhaps it's the amdide64 service that's stopping it booting and if I change that to 3 it will work, although it could also be something missing from the registry that's the problem.
I've exported the relevant keys (Enum-pciide, Enum_PCI_Ven_1002&Dev_439C, Services_pciide) from both hives if you want to compare them. http://www.mediafire...cqvl9jsvtfyncyc
#19
Posted 30 November 2011 - 03:20 PM
Which modes did you used?I ran it under 7PE and pointed it to the partition I wanted to reset.
Did you enabled existing drivers?
Did you install new drivers?
Sorry, I mixed the P4 motherboard.No, I had a Athlon II X4 630 and now I've got a Phenom II X4 955
Current case: from a SB750 to a SB950
That's a non default driver, not part of operating system by default.So perhaps it's the amdide64 service that's stopping it booting and if I change that to 3 it will work
Yes, some drivers cause the hang. Especial if a old driver dosn't support new hardware.
Did you install Vista or Windows 7 previously? Which amdide64 did you used back then?
Which version does exist now? Does this (old SB750 version?) support a SB950 too?
As for mass storage CriticalDviceDatabase and service start=0 had been sufficient in the past.although it could also be something missing from the registry that's the problem.
That's nice.I've exported the relevant keys
Whole old and new system hive would clarify whole issue.
#20
Posted 30 November 2011 - 07:44 PM
Which modes did you used?
Did you enabled existing drivers?
Did you install new drivers?
It doesn't really give me any options other than to select the drive containing the installation I want to fix and the location of any new drivers (which I don't have). I just ran it again and this is the output:
30/11/2011 19:19:48 Computer System: Manufacturer: MSI Model: MS-7640 strTargetDrive: strSearchFile: blnEnableDrivers: True blnInstallDrivers: True blnRestore False strTargetDrive: X:\ Enable mode load registy file X:\\windows\system32\config\SYSTEM ======================================================== Enable existing Mass Storage drivers in system ======================================================== PCIIDE\IDECHANNEL\4&10907119&0&0 offline Registry CDDB: Internal_IDE_Channel atapi Start already 0 no change PCIIDE\IDECHANNEL\4&10907119&0&1 offline Registry CDDB: Internal_IDE_Channel atapi Start already 0 no change PCIIDE\IDECHANNEL\4&24C43BB1&0&0 offline Registry CDDB: Internal_IDE_Channel atapi Start already 0 no change PCIIDE\IDECHANNEL\4&24C43BB1&0&1 offline Registry CDDB: Internal_IDE_Channel atapi Start already 0 no change PCIIDE\IDECHANNEL\5&F81B68F&0&0 offline Registry CDDB: Internal_IDE_Channel atapi Start already 0 no change PCIIDE\IDECHANNEL\5&F81B68F&0&1 offline Registry CDDB: Internal_IDE_Channel atapi Start already 0 no change PCI\VEN_1002&DEV_4390&SUBSYS_76401462&REV_40\3&11583659&0&88 PCI\VEN_1002&DEV_439C&SUBSYS_76401462&REV_40\3&11583659&0&A1 PCI\VEN_197B&DEV_2362&SUBSYS_76401462&REV_10\4&76A372&0&0020 unload registy file X:\\windows\system32\config\SYSTEM
That's a non default driver, not part of operating system by default.
Yes, some drivers cause the hang. Especial if a old driver dosn't support new hardware.
Did you install Vista or Windows 7 previously? Which amdide64 did you used back then?
Which version does exist now? Does this (old SB750 version?) support a SB950 too?
It was a fresh Windows 7 install on my old hardware. I didn't specifically install amdide64 so I can only assume it was installed as part of CCC or some other motherboard driver bundle. The version on the HD is 5.2.1.78. I think it's irrelevant though, as my working Windows7 doesn't contain this or reference it in the registry. Perhaps a future version of fix_7hdc can disable such non-default drivers (if that is indeed what's causing it not to boot).
As for mass storage CriticalDviceDatabase and service start=0 had been sufficient in the past.
Regarding the CDD entry for CC_0101, the working install has:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CriticalDeviceDatabase\PCI#CC_0101]
"ClassGUID"="{4d36e96a-e325-11ce-bfc1-08002be10318}"
"Service"="pciide"
"DriverPackageId"="mshdc.inf_amd64_neutral_aad30bdeec04ea5e"
whilst the non-working install has:
[HKEY_LOCAL_MACHINE\OLDWIN\ControlSet001\Control\CriticalDeviceDatabase\PCI#VEN_1002&CC_0101]
"ClassGUID"="{4D36E96A-E325-11CE-BFC1-08002BE10318}"
"Service"="amdide64"
So for whatever reason, fix_7hdc hasn't reset it to use pciide.
#21
Posted 01 December 2011 - 10:16 PM
It was a fresh Windows 7 install on my old hardware. I didn't specifically install amdide64 so I can only assume it was installed as part of CCC or some other motherboard driver bundle. The version on the HD is 5.2.1.78. I think it's irrelevant though, as my working Windows7 doesn't contain this or reference it in the registry. Perhaps a future version of fix_7hdc can disable such non-default drivers (if that is indeed what's causing it not to boot).
Regarding the CDD entry for CC_0101, the working install has:
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlCriticalDeviceDatabasePCI#CC_0101]
"ClassGUID"="{4d36e96a-e325-11ce-bfc1-08002be10318}"
"Service"="pciide"
"DriverPackageId"="mshdc.inf_amd64_neutral_aad30bdeec04ea5e"
whilst the non-working install has:
[HKEY_LOCAL_MACHINEOLDWINControlSet001ControlCriticalDeviceDatabasePCI#VEN_1002&CC_0101]
"ClassGUID"="{4D36E96A-E325-11CE-BFC1-08002BE10318}"
"Service"="amdide64"
So for whatever reason, fix_7hdc hasn't reset it to use pciide.
TA790GXBE: AMD 790GX Chipset with ATI Radeon HD 3300 Graphics
http://www.biostar.c...on.php?S_ID=419
Windows 7
http://download.bios...taWin7_8631.zip
There is no amdide64.sys.
Windows XP
http://download.bios...80D/XP_8631.exe
There is a amdide64 DriverVer=06/18/2008,5.1.0.8
AMD Graphics Driver (Windows 7)
http://support.lenov...?DocID=DS019466
There is a amdide64 DriverVer=04/29/2010,5.2.1.78
amdhdc.inf
SB900 is listed, but no SB950.[AMD_HDC.NTamd64]
%SATA_TO_IDE% = amdide_Inst_64,PCIVEN_1002&DEV_4390 ;SB700/SB800
%SATA_TO_IDE% = amdide_Inst_64,PCIVEN_1002&DEV_4380&CC_0101 ;SB600
%SATA_TO_IDE% = amdide_Inst_64,PCIVEN_1022&DEV_7800 ;SB900 first IDE controller
;%SATA_TO_IDE% = amdide_Inst_64,PCIVEN_1002&DEV_437A ;SB450/SB460
;%SATA_TO_IDE% = amdide_Inst_64,PCIVEN_1002&DEV_4379 ;SB450/SB460
%PCI_IDE% = amdide_Inst_64,PCIVEN_1002&DEV_439C ;SB700/SB800
%PCI_IDE% = amdide_Inst_64,PCIVEN_1002&DEV_438C ;SB600
%PCI_IDE% = amdide_Inst_64,PCIVEN_1002&DEV_4376 ;SB450/SB460
%PCI_IDE% = amdide_Inst_64,PCIVEN_1022&DEV_780C ;SB900 Second IDE controller
PCI#VEN_1002&CC_0101 has a higher priority than PCI#CC_0101.
PNP prefers amdide64 in that case.
PCI#VEN_1002&CC_0101 is a manufactuerer specific HardwareID, this claims to support all AMD IDE devices.
This includes a MSI 990FXA-GD80
Based on current available HardwareID, registry data and amdhdc.inf: amdide64 is a perfect match.
Old settings should work. There is no reason to distrust this at this level.
Old configuration should boot at new motherboard without any changes.
Contrary there is real world experience. A driver may fail nontheless.
Whole story can happen at all existing drivers.
There is no perfect trustworthy driver.
A driver exception can happen always.
As for testing: can you install amdide64 DriverVer=04/29/2010,5.2.1.78 at MSI board now?
#22
Posted 02 December 2011 - 12:41 AM
Based on current available HardwareID, registry data and amdhdc.inf: amdide64 is a perfect match.
Old settings should work. There is no reason to distrust this at this level.
Old configuration should boot at new motherboard without any changes.
Contrary there is real world experience. A driver may fail nontheless.
Whole story can happen at all existing drivers.
There is no perfect trustworthy driver.
A driver exception can happen always.
As for testing: can you install amdide64 DriverVer=04/29/2010,5.2.1.78 at MSI board now?
I don't really want to install it in my working Win7 (it doesnt seem to be included in the ati_system_drive_mb.zip for the MSI, where I'd expect to find it if it was needed for this board). It's already installed on the non-working one.
I tried changing the service from 0 to 3 to disable it, but that didn't make any difference, so I'm not sure the IDE drivers are what's preventing it booting anymore (particularly as my working Win7 is booting happily with pciide). I think fix_7hdc has probably done what it needed to do. If I try to boot it in Safe Mode, the last driver shown is ATIPCIE64.sys (which is present and enabled on both the working and non-working installs), after which it doesn't do anything else.
My best bet might be to just keep using the current working Win7, and do a fresh install in the non-working partition.
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users