drive letters do not stick...


In disk management I change an external drive’s letter from K: To L:
The change is “accepted” by the system. However, after a few days (or a reboot) drive’s letter reverts to K: It’s happened a few times already, so it cannot be by chance.
This behaviour only affects this particular drive (a 1.5 TB Maxtor III split into two partitions – one NTFS and one readable by MAC OS). For instance, I have assigned the letter Q: to a USB flash drive, and the letter stuck ever since.
I run Vista Home Premium on a HP Pavillion notebook. I had no problems permanently assigning a new letter to that very same drive when using a Vaio running XP.
Can anyone explain this strange behaviour?
Hi Sasho, welcome to NeoSmart Technologies,

It is perfectly normal. Drive letters are reset when the system is rebooted and Windows by design well take the next available drive letter. Unless there is a real need for it to be specific, it shouldn't matter what drive letter is assigned to it as long as it continues to function.
Thank you Justin!
I am still a bit puzzled though… you say that Windows does that “by design”, but I assure you that I have been using XP for quite some time and none of that happened.
As to the “real need for it to be specific” in my case this is a massive iTunes library, with files pointing to a L: drive, and a few shortcuts and batch files that reference that drive by that letter.
I could of course change the drive’s letter every time I reboot, but this would be slightly annoying and definitely error-prone.
It should stick Sasho, I do exactly the same myself. All my flash drives, camera, ext HDD, and optical drives are lettered according to my own personal specs, (as well as the fixed HDD partitions) and retain their identities whether between systems in my dual boot, or if carried to my backup PC.
The identity is stored in the system registry, if you specifically name it, otherwise it's allocated the next in sequence as described by Justin (which was always the case in legacy 9x systems).
The only reason I can think of which would cause what you're describing, is if some unnamed device (a partner or child's flash drive ?) is being regularly used on your system and acquires the letter (next in sequence) when your drive is not connected, stealing its ID from you. If this is happening, you'll have to make sure the drive in question is given its own letter too, to prevent it being dynamic each time it's inserted.
Any chance someone unauthorised is using your PC without your knowledge ?
No, Terry, I am pretty sure no one else uses my PC :wink:
It has a hard drive with three partitions (C, D and E) and a DVD drive (F). The next four letters (G, H, I, J) are used up by a flash-card reader with four slots. This is why the external hard drive gets the K.
Like all my external drives it has its own name (“Touch and go” if you’re curious), so there shouldn’t be an “identity” problem – come to think of it, I wonder whether a manual fix of the registry would do the trick.
I am more and more convinced that the problem lies in the relationship between that specific drive and Vista (as I said, it had no problem on XP). Could it happen because it is connected to the PC via FireWire? I might try and connect the drive via USB first, then change the letter to L: and see if it sticks...
I've never used firewire, so can't comment, but it's worth a try. As I said, I've never had a problem with Vista or XP retaining the assigned letter. (although my card reader (W/X/Y/Z) has a habit of disappearing from both systems completely and apparently permanently, until I un/replug the USB connector from the mobo, at which point it reappears correctly addressed. This is aesthetically annoying (in a Monk sort of way), but of very little practical inconvenience since I never use the card reader anyway - just plug the camera (O:\ for Olympus) straight in)


Disk management will obviously show (and manipulate) the letters of actually mounted devices, but HKLM/SYSTEM/MountedDevices will show you which other letters are allocated to mountable but absent devices
Last edited:
Terry, your addendum is very intriguing... In fact I have checked HKLM/SYSTEM/MountedDevices and found out that drives referenced there are
1) A: To J: (excluding B: ),
2) infamous K: and L: and
3) Q: (which is the letter I have assigned to a Kingston USB flash drive).
I am tempted to backup the registry, delete the key containing K: and see what happens
Last edited:
Are you using Vista or XP?

XP's subst if the registry modifications don't work (Subst seems to not work in Vista though its present... UAC probably) in a batch file where you enter the current letter of the drive may work (though its still not completely automated and you have two letters referencing the same drive, it is better then going to disk management).

Sample batch file:

@echo off
echo Your drive parameter is %1 - Your designated virtural drive is %2
echo Assigning %2 to %1...
subst %2 %1:\

In the above example, you'd haft to execute the batch file as a command from the command prompt, only supply letters :smile:\ are already hard-coded and entering them well cause it to fail), and supply 2 parameters (1st for the drive that is being substed and the 2nd for the drive letter you wish to assign to it).

You could create a shortcut to the batch file with the desired parameters as well, but if your drive is changing letters continually on each subsequent reboot of the system it'll need to be supplied instead.
Last edited:
Tried the USB-in-lieu-of-firewire approach with no luck :frowning:
Will try editing the registry and keep you posted.
Justin: I am using Vista, hence no SUBST for me...
Might work for you regardless, though I've tried it with UAC both on and off and nothing. It still completes the command successfully in Vista and shows the mapping if I query it, but it didn't show in Computer.
Hi all.

The same thing is happening to me under WinXP SP3 with the latest updates. It started happening suddenly. After each reboot, the drive letter assignments are reset to their default values. The only thing i had changed since i noticed it was that i updated my system with the latest patches from MS!

I guess it's a bug in one of the patches. I've been searching for similar issues on the net for the last couple of weeks but the only thing i've found is a similar issue concerning Win2K and this thread. Let's hope they'll find it and fix it soon.