I've been researching this problem for 3 days now and found a simple solution that worked for me - and which I couldn't find on the web, although there are many people with this problem.
Problem: I instaledl Windows 7, attached drive letter to a partition (in a RAID in my case, but I don't think that matters) - Drive letter was lost on reboot, but could be reattached using "Control Panel - System and Security - Administrative Tools - Create and format hard disk partitions". Lost again on reboot.
Cause: I don't know why, but for some reason both my RAID volumes (which I set up during install and gave drive letters to in control panel) had the 'hidden' attribute set. This appears to have prevented them being assigned drive letters on boot. I don't know how to fix (or find) this in control panel, so I used DISKPART as follows:
Solution: In command prompt window, run DISKPART. You can type help to learn how to use it, but the following is what I did:
- type "list volume" to identify volume number (n) of partition
- type "select volume = n" (you are now opoerating on volume number n)
- type "attributes volume" This will show you attributes. Look at Hidden - if it shows 'yes' you have the same problem I had.
- type "attributes volume clear hidden"
- type "attributes volume" again to confirm this worked.
You can repeat this for other volumes (I had to).
Note: I found that assigning drive letters in diskpart didn't work well (some were unavailable) so I rebooted and then used Control Panel to set them.
Now they are permanent through reboots!!