Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

A friend has run into a problem where they installed Windows 7 from an external drive, and the internal boot drive is now assigned to H:. Theoretically this shouldn't cause problems because there are programming interfaces for getting the drive letter for the system drive. In practice though, there are quite a few programs that assume that C: is the only possible location for the system directories, and they refuse to run with the system directories on H:. That's not Microsoft's fault, but it's a pain none-the-less. The general consensus seems to be that a re-install, setting the internal boot drive to C:, is the only way to fix these problems.

UNIX-like systems display all file systems in a single unified directory tree and mostly seem to avoid problems like this. Is it possible to configure a Windows system without reference to drive letters, or does the importance of backwards compatibility mean that Windows will be working with drive letters from now until doomsday?

share|improve this question
1  
Sorry to say, but the date's been pushed back 10 years to 2022. We [I] are terribly sorry for the delay. If you have any questions, please hesitate to contact me. – Mateen Ulhaq Dec 23 '10 at 4:27
5  
You answered your question yourself. If programs choke on something "simple* like this, imagine the problems a fundamental change causes. Remember all the permissions issues when Microsoft decided they didn't like everyone writing everywhere on the file system and users having admin capabilities all the time? – Daniel Beck Dec 23 '10 at 4:47
up vote 7 down vote accepted

Microsoft has always made backwards compatibility a huge priority. It is exactly because of all those applications which assume C:\, or even the generic pattern of Drive:\path\ that they can't move to a structure like UNIX. All Windows applications are based on the assumption that paths will start with a drive letter (if they aren't a relative path). It is unlikely that this will be changed any time soon.

Some applications, when run in compatibility mode, may work properly with a non-standard installation drive.

Something which might work (I haven't tried, but will later and will add details) would be to create a small partition, name it C:, and mount the various system drives from H: in folders within the C: drive. That way, when a program requested C:\Program Files, it would be accessing the folder in H:\Program Files, mounted in the C: drive.

share|improve this answer
5  
+1, If programs choke when C:\ isn't correct, imagine how they'd behave when the entire concept of drive letters goes away! – Stephen Jennings Dec 23 '10 at 4:19
    
I don't know: I bet they could allow drive stings without breaking too many things, as long as your boot partition is still limited to one character. So you could have a drive named something like: `FILES:\`. But the pain level hasn't been high enough to justify implementing it. – Joel Coehoorn Dec 23 '10 at 5:10
    
Actually drive strings are already there, and have been for a long time, in the form of UNC names; what I really wish they would change is allowing either \ or / as the component separator. I really don't see why the file system can't support C:\xxx and '/xxx' (and even //C/xxx) simultaneously. – Lawrence Dol Dec 24 '10 at 0:40

use the subst ms-dos command which adds a drive letter for an existing drive letter or folder

share|improve this answer
3  
Getting rid of drive letters isn't exactly accomplished by adding a few more. – Daniel Beck Dec 23 '10 at 4:45
3  
Still, it would solve the problem described. I think the downvote was unjustified. – itsadok Dec 23 '10 at 6:54
    
@itsadok I didn't downvote this answer. Actually, nobody did, as I can see per this privilege. And, while probably helpful to the OP, this doesn't answer the question he or she actually posed, which is more fundamental. – Daniel Beck Dec 23 '10 at 7:55
    
I do think this is actually a very viable potential solution to their immediate problem, though perhaps not so effective long-term. – nhinkle Dec 23 '10 at 9:00

While we may be stuck with drive letters until doomsday, you can change them from Start → Programs → Administrative Tools → Computer Management → Storage → Disk Management. Right-click the volume and select "Change Drive Letter".

share|improve this answer
6  
This is all true, but keep in mind that Windows will not let you change the drive letter of the boot partition, as doing so would break every single hard-coded link on the whole OS. – nhinkle Dec 23 '10 at 4:24

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .