Most people don’t realize that using “C:” as the primary drive on your computer is fairly arbitrary. It’s a good practice, if only to avoid the problems you’re running into, but as you’ve seen you don’t need to have it that way. You can build a system that boots from a drive of a different letter – in your case “F:”.
Unfortunately, some software packages don’t realize it either. They assume that there’ll always be a “C:”.
So we need to get tricky.
Become a Patron of Ask Leo! and go ad-free!
First of all, reassigning the drive letter of your existing boot drive -changing the F: to C: – wouldn’t work anyway. The problem is that all the software you have installed so far has been installed on F:. As a result, all the settings for that software assume (correctly) that F: exists, and that’s where the programs can find what they need.
One of those programs, by the way, is Windows itself.
So if you simply renamed F: to C:, it’s likely that the system wouldn’t even boot, because Windows would still be looking for things on F: – the F: that was no longer there. Even if Windows did boot, most of the applications you have installed would also no longer work, for much the same reason.
What I’m going to suggest is that we create a new C: drive, a “virtual” C: drive, on your existing hard disk. We’ll use a fairly obscure tool that a lot of folks don’t even know about, called “SUBST”.
First we’ll fire up a Command Prompt. Click on Start, All Programs, Accessories, Command Prompt. That should open up something that looks like this:
Except that you’ll see your user name instead of mine, LeoN, and the drive will be F: instead of the C:..
In that Window, type the following commands:
subst C: \Virtual_C
You should now have an empty C: drive. It just happens to also be the contents of the directory f:\Virtual_C.
Try some of the applications that you’re having trouble with, and see if they now work, or at least behave differently. They may still fail, because our C: is empty – they might expect more than just the drive – but it’s a start.
The C: drive that we created will disappear when you reboot. (The contents will still be there as F:\Virtual_C, but the C: drive will no longer exist.) To make it automatic, we need to add a command to your startup group.
Right-click on the Start menu, and click on Explore All Users. In the resulting Explorer window, expand Programs and click on Startup. Right click anywhere in the right-hand pane, and select New and then Shortcut:
In the resulting dialog box, enter the “Subst” command we used earlier: “SUBST C: F:\Virtual_C”.
Click Next, and click Finish, and now each time you login, the virtual drive C: will be mapped to the F:\Virtual_C directory.
As a final note, this entire scenario results simply because the old drive was added to the system and allowed to be “C:”. As I said, drive letters are arbitrary, but by now you can see that “C:” is kinda special, even though it really shouldn’t be. If you can, it’s safest to install your operating system and boot from “C:”. Typically that means when you add a new drive that you expect to boot from, make it “C:”, and give the OLD drive a new drive letter. This allows you to safely copy data off of the old drive, and eventually remove it without any ill effect.