C? E & F are driving me ... to the internet
October 5, 2010 5:17 PM Subscribe
Windows XP drive letter question. System drive is E, partition is F. I need a C.
I've read this question 'Change drive letters on XP' but I need more info. From reading around the web I've gathered that changing the system drive is a bitch without reinstalling. I don't want to reinstall.
It's for booking management software that has been built to only operate when the drive is named C (which I think is silly, but there you go). Can I rename my partition (used mostly for file storage) to C and have it access what it needs from the system to run a program? If so, what is the best way to change the partition's drive letter, will I have to manually map anything later, and what do I need to watch out for?
I've read this question 'Change drive letters on XP' but I need more info. From reading around the web I've gathered that changing the system drive is a bitch without reinstalling. I don't want to reinstall.
It's for booking management software that has been built to only operate when the drive is named C (which I think is silly, but there you go). Can I rename my partition (used mostly for file storage) to C and have it access what it needs from the system to run a program? If so, what is the best way to change the partition's drive letter, will I have to manually map anything later, and what do I need to watch out for?
You should be able to rename the partition to C:. Make sure there are no programs actually installed on the partition, otherwise they will likely break as a result.
You still may have issues attempting to install the software, as often the (poorly written) installs that require a program to be installed on the C: drive often look for Windows system files in C:\WINDOWS\. In that case, your best bet really is to start over.
posted by Mister Fabulous at 5:28 PM on October 5, 2010
You still may have issues attempting to install the software, as often the (poorly written) installs that require a program to be installed on the C: drive often look for Windows system files in C:\WINDOWS\. In that case, your best bet really is to start over.
posted by Mister Fabulous at 5:28 PM on October 5, 2010
Simpler: make a virtual drive. Run a command prompt and type:
subst c: "E:\"
Hit enter. It will make a new virtual drive C: pointing directly to your system drive on E:, without ruining anything you've already done. You can access it through My Computer just like any other drive.
posted by dsword at 5:45 PM on October 5, 2010
subst c: "E:\"
Hit enter. It will make a new virtual drive C: pointing directly to your system drive on E:, without ruining anything you've already done. You can access it through My Computer just like any other drive.
posted by dsword at 5:45 PM on October 5, 2010
I'd be really surprised if a program as naive as this wouldn't also be as naive as Mister Fabulous suggests and have hard coded references to C:\WINDOWS\ and the like.
Could you run it in a virtual machine with a C: drive?
posted by advicepig at 5:45 PM on October 5, 2010
Could you run it in a virtual machine with a C: drive?
posted by advicepig at 5:45 PM on October 5, 2010
Response by poster: If the program may, as some suggest, look for c:\windows\, should I set up the virtual drive by writing a command subst c: e:\windows\ or will subst c: e:\ be enough?
dsword, do I need the " " around the e:\ ? odinsdream's link example didn't have " ".
posted by Kerasia at 6:51 PM on October 5, 2010
dsword, do I need the " " around the e:\ ? odinsdream's link example didn't have " ".
posted by Kerasia at 6:51 PM on October 5, 2010
subst C: E:\
will do what you want; any reference to a pathname rooted at C: will go to the corresponding spot inside E:\. For example, "C:\Program Files\Stupid Broken App" would just become another name for "E:\Program Files\Stupid Broken App".
If instead you did
subst C: E:\WINDOWS
then an attempt to access "C:\Program Files\Stupid Broken App" would actually look in "E:\WINDOWS\Program Files\Stupid Broken App" which is probably nonexistent.
Quite a few stupid broken apps require that you install them directly in the C: root folder, and sometimes they're even stupid and broken enough to fail if their installation folder has spaces in the name. If the one you're wrestling with is one such, you could do
subst C: "E:\Program Files\Stupid Broken Apps"
which would make "C:\CrapApp" refer to the same folder as "E:\Program Files\Stupid Broken Apps\CrapApp".
You don't need quotes around the target folder for subst unless the folder name contains spaces, but it doesn't hurt to put them there even if it doesn't.
One useful trick, if you're doing clever tricks with subst, is to set up all your substs in a cmd file, then call that file from a scheduled task set to run at system startup with SYSTEM credentials. That way, the substs will happen as soon as the scheduling service starts i.e. before the Welcome screen even appears. This is useful if CrapApp includes e.g. system tray components that start up on login,
posted by flabdablet at 9:17 PM on October 5, 2010
will do what you want; any reference to a pathname rooted at C: will go to the corresponding spot inside E:\. For example, "C:\Program Files\Stupid Broken App" would just become another name for "E:\Program Files\Stupid Broken App".
If instead you did
subst C: E:\WINDOWS
then an attempt to access "C:\Program Files\Stupid Broken App" would actually look in "E:\WINDOWS\Program Files\Stupid Broken App" which is probably nonexistent.
Quite a few stupid broken apps require that you install them directly in the C: root folder, and sometimes they're even stupid and broken enough to fail if their installation folder has spaces in the name. If the one you're wrestling with is one such, you could do
subst C: "E:\Program Files\Stupid Broken Apps"
which would make "C:\CrapApp" refer to the same folder as "E:\Program Files\Stupid Broken Apps\CrapApp".
You don't need quotes around the target folder for subst unless the folder name contains spaces, but it doesn't hurt to put them there even if it doesn't.
One useful trick, if you're doing clever tricks with subst, is to set up all your substs in a cmd file, then call that file from a scheduled task set to run at system startup with SYSTEM credentials. That way, the substs will happen as soon as the scheduling service starts i.e. before the Welcome screen even appears. This is useful if CrapApp includes e.g. system tray components that start up on login,
posted by flabdablet at 9:17 PM on October 5, 2010
And yes, actually changing the system drive letter from E: to C: requires far more registry editing than most people are happy to do. I've had to do it more than once, and it's been painful every time.
posted by flabdablet at 9:20 PM on October 5, 2010
posted by flabdablet at 9:20 PM on October 5, 2010
This thread is closed to new comments.
You may have to reinstall any applications installed on the partition, but it shouldn't affect your system drive.
posted by dsword at 5:26 PM on October 5, 2010