Two questions, and how I got out of a tight spot.

Mathias

New Member
Recently I turned to EasyBCD and now I have two questions:
1) Can you please allow the option of choosing where to install EasyBCD? The 1.7.2 version I used demanded to install on my system disk, which failed because the drive letter previously known as my system disk didn't exist at the time.

2) Can you confirm that with Vista there always has to be a C-drive, even if my system disk has a different letter assigned (see below), or is it possible to go completely without C-drive?

Thanks!


Here's the "the long story" in case it helps someone else:

Originally I had WinXP installed on my system disk, the C-drive.
Later I installed Vista in parallel with XP, and Vista ended up as the I-drive.
Then I installed Ubuntu too, but I never did much with it.

The other day I decided to get rid of XP which I hadn't used for a long time and give Ubuntu another go. To reclaim the disk space used by XP I deleted the C-drive partition and then the Ubuntu one too and reinstalled Ubuntu on the combined free space. After this I could boot Ubuntu, but not Vista (which I pretty much expected). Using the Vista installation CD (several times) I restored the Vista boot loader, meaning I could now boot Vista but not Ubuntu (which was fine as I intended to fix it using EasyBCD).

The problem was that with the XP partition gone, Vista now decided to rename my I-drive to C which meant that it couldn't find most of of the files it needed as the paths had all changed! It did boot and I got a normal login screen, but after logging in I only got a blank desktop. By pressing Ctrl-Shift-Esc I could open the Task Manager and from there launch the Explorer (File -> New Task). It did give me a Vista UI, but only barely (no skins etc). :ldown:

Now, almost whatever I tried to do (e.g. launch the "Computer Management" tool or regedit.exe) I got "Device not ready" or "Permission denied" type of errors. Although my regular account has Administrator privileges, with the system disk drive letter wrong Vista didn't realize this. To fix this I booted into Safe mode (giving me administrator rights) and ran the command "net user Administrator /active:yes" to enable the Administrator account as an option on the log-on screen. Rebooting again and logged in as Administrator I could run regedit and change the drive letter assignments (editing e.g. HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices\DosDevices\C: ). :smile:

To my surprise, this did not seem to make any difference for the system disk. After some head scratching I could see no other explanation than that Vista requires there to be a C-disk, and if there is none mapped it will assign the first drive it finds as C; again leaving me with no I-drive. :angry:

Thus I decided to create a new tiny partition just for there to be something Vista could call C:. Now as Administrator I could start the Computer Management tool (aka My Computer -> Manage), but it still complained because it could not find the I-drive. So rather cleverly I ran "subst i: c:\" and could then run the Disk Management etc tools. :joy:

Now I might have been able to create my new tiny C-drive partition using Vista's Disk Management tool, but I decided I trusted the Linux tool more, so booted Ubuntu from the CD and re-sized my ext3 partition and added a new small ntfs one. Back in Vista I edited the register to assign the drive letters I wanted and hey presto, rebooting Vista came back to it's former self! :smile:

All that remained was to sort out the dual boot using EasyBCD!
Ironically, what I ended up with was pretty much the same as I would have had had I only removed the XP files from the C-drive and shrunk the partition down, but of course that wouldn't have been half the fun! :booyah:
 
Last edited:
Hi Mathias, welcome to NST
Windows historically, set disk letters dynamically at boot, in a specific order (Disk0 Partition1 as C, (1,1) as D, (0,2) as E, (0,3) as F etc till all the Disk0 had been lettered then back to (1,2) as G etc.

With XP, the stealing of D when a new HDD was installed no longer happened, and Disk Management gave the ability to set letters according to user preference, (except for drives with system ,boot or page flags).

From XP onwards though, unless you specifically set the letters yourself (which creates a registry entry to ensure that that partition/CD-ROM/Flash-drive always gets that letter when detected), the letters are still dynamically set as the system boots.

When you booted your system, Vista detected your HDD, looked to see if you had given it a letter (in the registry), found that you hadn't (you were just letting it default to I, the next free letter), and so continued to use the 1st available letter (in this case C had become available and was therefore assigned - causing the problems runnning the system.

You seem to have found the cure for yourself, but it's good practice not to let the situation arise in the first place.

Whenever I install a new system, first thing I do, before anything else, before anything has tried to update, modify or install, is to set my standard set of letter asignments in stone in the registry. Every Camera, Flash Drive, External HDD, or any other USB device, gets inserted, and lettered, so that it always comes up as with the same identity, every time it's plugged in. Likewise with the Internal devices. The CD/DVD drives and the HDD partition layout are all specifically defined to my standard pattern.
That way if I (accidentally or by design) move a HDD to a different bay, or plug in a new device, it doesn't alter the way the existing devices are identified.

Letting the OS set the letters dynamically, gives the appearance of stability as long as the hardware doesn't change, but the moment you add or remove a device, or change the position on the cables, the detection order will change and so will the lettering.
 
Last edited:
Back
Top