From Resolving the dreaded Windows 8 0xC0000225 error :
I've had this happen to me twice, all of a sudden Windows 8 refuses to
boot and gives an error code of 0xC0000225 (or something) and anything
you do won't fix it. The problem is that since for whatever reason
Windows thinks there's no bootloader, it refuses to boot. Period. You
can't even go into the recovery environment, which is my biggest
complaint at Microsoft.
In any case, there's one way I've found to resolve this. If you have
access to another computer, take out the affected computer's primary
drive and find a way to mount it in the system (internally,
externally, whatever). Then do the following:
- Open command prompt as an administrator
- Type in "diskpart"
- Type in "list disk". Find out which disk the affected drive is.
- Type in "select disk #", where # is the affected drive's number
- Type in "list partition", find the partition number of the system partition (it's usually 100MB, 200MB, or 300MB), then type in "select
partition #", where # is the system partition's number.
- Type in "assign letter=z", assuming you don't have a Z: drive.
- Exit out of diskpart by pressing CTRL+C
- Type in BCDBoot
[Drive letter of affected drive's Windows partition]:\Windows /S Z: /F UEFI
So if the affected drive's
Windows partition is say G:\, you would type in BCDBoot G:\Windows /S
Z: /F UEFI
It should fix the bootloader. If you can get into a recovery
environment on the affected computer, then this should work as well.
Google searches turned up tips like "you have to boot the DVD drive in UEFI mode to install OS on UEFI", etc. This made me believe that I have to convert my USB drive to GPT just to install an OS on an UEFI machine.
<…>
Why does the installer say it's impossible to install a UEFI-booted OS from a MBR-based USB drive? Can't it create new UEFI boot options while being booted from MBR, or what?
Do not confuse booting from a GPT or MBR disk with booting in EFI or BIOS mode.
Normally these two requirements are not related. An UEFI system is required to support both GPT and MBR partition tables. (Likewise, BIOS systems don't normally read the partition table at all, and can easily boot from a GPT disk as long as the sector 0 boot code is capable of it.)
It is only Windows that refuses BIOS-mode boot from GPT disks, and EFI-mode boot from MBR disks. And, well, some buggy BIOS systems do choke on "protective" GPT MBRs; likewise, some buggy UEFI systems do think "MBR = legacy boot".
But, aside from that, your guess about creating boot options is correct. See below.
I mean, it's just files written to disk, does it really matter how the installer was booted? The machine will surely reboot during install and then it can use whatever mode it wants, if it think it's necessary.
No, it cannot. First, the boot mode is not chosen by the OS once booted; it is chosen by how the bootloader was installed. To set up a bootloader for BIOS, you write boot code to the 0th sector. To set up a bootloader for EFI, you add a boot option to NVRAM as an EFI "variable". Second, EFI runtime functions are only accessible when booted in EFI mode, and you need to use them in order to modify EFI variables.
So, if you're in BIOS mode, the installer cannot add a boot option to the NVRAM, and therefore cannot set up EFI-mode boot for the freshly-installed system.
So your assumption that it "can use whatever mode it wants" is incorrect.
(As a precaution, Windows does also install its own bootloader to the "fallback" path, \EFI\Boot\BootX64.efi
, however, that path is used only if there are no working boot options in NVRAM. So if you don't add a boot option, there's a small chance that it'll still boot, but it's far from being a guarantee.)
I also get the impression that converting from MBR to GPT requires me to also delete my other partition on the USB drive. Thats a 1.97 TB partition and that's not acceptable.
There are tools that can do in-place conversion; the Linux gdisk
being one.
However, even if you do delete a partition, this doesn't normally discard any data within it, so you can access it again if you immediately create a new partition at the exact same place. This is how the conversion tools work, after all. (Again, you might need Linux fdisk
or gdisk
in order to specify the start/end location precisely; many tools only expose 1 MB accuracy.)
Best Answer
Microsoft erroneously conflates has an EFI partitioned hard disc with has EFI firmware. This is, of course, clearly wrong. It's quite possible — and indeed is becoming ever more desirable these days — to have an EFI partitioned disc on a machine that has old non-EFI firmware.
One of the several consequences of Microsoft's error is that the Windows NT 6.1 installer has to be invoked from an install medium that has in turn been bootstrapped from new EFI firmware, in order for it to accept the idea of installing Windows NT 6.1 to a disc partitioned with the new EFI partitioning scheme. Unfortunately, if the Windows NT install disc is bootstrapped in the old PC98 way, as you've probably done with your USB disc, the installer will think that there's old PC98 firmware, and so declare that it cannot be installed to EFI partitioned hard discs.
As the Microsoft documentation explains, the installation CD-ROM is in fact dual-boot. A machine with old PC98 firmware will bootstrap one operating system image and installation program; and a machine with new EFI firmware will bootstrap another. As Rod Smith explains, one therefore has to manually construct a Windows NT 6.1 install disc that bootstraps in the new EFI way. The Windows NT 6.1 installer will then allow installation to an EFI partitioned hard disc.