This repository was archived by the owner on Jun 27, 2025. It is now read-only.
Windows XP (x64) to Windows 8 #5
heathercat123
started this conversation in
Help wanted
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I managed to get through Windows 8's first upgrade stage using ShowHideControls and Application Verifier set to XP SP3 compatibility. However, setup errors out at 90%. I guess it tries to edit the BCD settings, which is a boot configuration feature added with BOOTMGR in Vista. What's nice is that it leaves the setup files on the hard drive, allowing us to poke at it with a stick. I tried booting Windows 8 from NTLDR, but it complained about missing DLLs. I then tried booting BOOTMGR from NTLDR, but it (NTLDR) complained about ntoskrnl being corrupt. I am now going to try finding out how the Windows Vista installer does this and try to port the boot configuration over to Windows 8's.
Edit: I am currently upgrading another Windows XP x64 install to Windows Vista with the /noreboot switch
Edit 2: The way Windows Vista works is by overwriting the PBR. I'll try using BOOTICE to apply it to my Windows 8 upgrade.
Edit: 3 After copying a few files and editing the BCD, it throws an error about the SYSTEMROOT directory being different than what it expects. It also tells you how to change what it expects.
Edit 4: Now that I set the correct path, it boots into regular old Windows PE for whatever reason. I guess the Windows 8 installer didn't install the installer? I'll try installing BOOTMGR before running the installer and generating a new BCD instead of modifying the Vista installer's. (how many times did I say the word "installer" in that sentence?)
Edit 5: You cannot generate a new BCD, I guess I'll have to hack the Vista one again
Edit 6: I found error logs. Those are DLL load errors. I opened some of the DLLs in Dependency Walker to check their PE header and some of them were built for Windows 8 and some others for Vista. We'll have to resort to One Core API for that one.
Edit 7: Using One Core API is even worse. It fails at detecting whether your system supports Windows 8 or not.
Edit 8: ChrisEric1 discovered a while ago that you can use build 7955's installer to upgrade Windows XP SP3 x86. Merging that with the XP x64 to Vista trick and an install.wim swap may allow us to upgrade to Windows 8 RTM or 7 without the data loss caused by Skye's existing technique.
Edit 9: Windows XP x86 can indeed be upgraded to Windows 8 build 7955, but an install.wim swap doesn't work.
Edit 10: Using Windows 8 build 7955's dlmanifests and replacementmanifests on Windows 8 RTM reduces the amount of errors from Edit 6's error logs. I checked the DLLs in Dependency Walker and they seem to be built for Windows NT 5.2 (Server 2003), but the installer notably does not function on Windows XP x64 or Server 2003. The other DLLs have a subsystem version of 5.0 (Windows 2000) though.
Beta Was this translation helpful? Give feedback.
All reactions