I have two Dell Inspiron 6400 laptops. Both were ordered on the same date as each other, and were shipped on the same date as each other. Both are running Windows XP. They were supposed to have been configured identically by Dell. But on one laptop, Windows Explorer has always displayed certain disk partitions that should not be visible to the end user. On the other one Explorer does not display those partitions, even though they exist on the disk.
I'm aware of three possible ways of hiding a partition from Windows. Two of them don't seem to work, and the one that does work depends on me never changing the drive letter assignments, which is not a safe assumption.
The thing of most interest to me is that the system that correctly hides the partitions isn't using any of the three mechanisms I know about. So, how can I find out what mechanism it's using to flag those partitions as not to be shown to the end user?
Here are the gory details. Both systems' disks contain the following partitions:
- Dell Diagnostics Partition [primary partition, 47 MB, FAT16 filesystem]
- Windows XP Partition (the C: partition) [primary partition, 106 GB, NTFS filesystem]
Dell MediaDirect Partition [primary partition, 2 GB, FAT32 filesystem]
Note: MediaDirect is a worthless feature of this model laptop. Dell built it with two power buttons instead of one. Pressing the normal power button boots from the Windows partition. Pressing the MediaDirect power button boots from the MediaDirect partition. The idea is that MediaDirect allows you to use your laptop as a DVD player without the overhead of all the processes that start when Windows boots. I don't know anybody with this model laptop who's ever used the MediaDirect power button.
- Dell Restore Partition [primary partition, 3.6 GB, FAT32 filesystem]
The laptops are named "Minbar" and "Vorlon". (Extra Credit: Guess which SF show I'm a fan of.)
On Minbar, Windows Explorer shows the following under My Computer:
Local Disk (C:) 106 GB DVD-RW Drive (D:)
whereas on Vorlon, Windows Explorer shows the following:
Local Disk (C:) 106 GB DVD-RW Drive (D:) Local Disk (E:) 47 MB Local Disk (F:) 3.6 GB MEDIADIRECT (G:) 2 GB
Having those three additional partitions visible when booted into Windows leaves them vulnerable to changes by a naive user. I'd like to make them invisible on Vorlon, but I can't figure out what makes them invisible on Minbar.
I'm aware of two different "hide partition" flags on the system, one in the partition table and one accessible from Windows' Group Policy Editor. Unfortunately, neither of the "hide partition" flags seems to be the right flag. Even though the additional partitions are not visible on Minbar, neither of those flags is set on Minbar. And on Vorlon, I've tried setting each of those flags, but Windows Explorer insists on displaying those partitions anyway.
I also know of a "hide drive letter" key called NoDrives in the Windows Registry. That works. But there are occasions when I do have to change drive letters and this solution leaves me vulnerable to having the wrong partition become invisible if the drive letters should ever change.
Also, since the the partitions are invisible in Minbar's Windows Explorer even though the NoDrives key is not in Minbar's Registry, there must be some other way to configure a partition to be invisible. But I've been unable to find out what it is.
Here's more detail on what I've tried:
Windows' Group Policy Editor:
and navigated to:User Configuration > Administrative Templates > Windows Components > Windows Explorer
I selected:Hide these specified drives in My Computer
This allows me to select combinations of A:, B:, C:, and D: to display. But it doesn't offer any combinations that involve E:, F:, or G:, which are the partitions I want to hide.
Partition table editor:
I booted Linux (Ubuntu) from CD and ran gparted to examine the partition table. On Minbar, none of the partitions had their "hide partition" flag set, even though E:, F:, and G: are invisible on that system in Windows Explorer. Nevertheless, on Vorlon I tried setting the "hide partition" flag for those partitions in the hope that Windows Explorer would respect that flag. It doesn't. Setting that flag on Vorlon had no effect.
I found a article on the web that describes how a certain registry value is used as a bitmask to determine what drives/partitions are shown. (http://www.worldstart.com/hide-drives-and-partitions/)
It tells you to use 'regedit' to go to:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
and look for (or create) a key named NoDrives. That key is a bitmask of drive letters for Windows Explorer to hide.byte 0, bit 0x01 A:
byte 0, bit 0x02 B:
byte 0, bit 0x04 C:
byte 0, bit 0x08 D:
byte 0, bit 0x10 E:
byte 0, bit 0x20 F:
byte 0, bit 0x40 G:
byte 0, bit 0x80 H:
byte 1, bit 0x01 I:
byte 1, bit 0x02 J:
I tried this and it works as advertised. But making a drive letter invisible means that if the drive letters should ever change, then the wrong partition would be hidden.
Does anyone have any idea what else I should look for on Minbar to find out how it's managing to hide those partitions, so I can make Vorlon behave the same?