Remove hardware from "Safely Remove Hardware" list

G

Guest

Hi,

I'm currently running Windows Vista Home Premium 64bit.

I have an internal card reader in my system.

When I turn on my system with the card reader connected, the "Safely Remove
Hardware" icon pops up.

I would like to remove the internal card reader from this, mainly because I
don't want to accidentally click on it, and I don't believe it should be
there as there it does not actually need to be removed. I want it to act
like a floppy disk drive or a CD ROM drive for example.

I don't want a solution where I hide the icon and I don't want to remove the
icon altogether, as I do use a USB key too.


Thanks
-John T.
 
U

Uwe Sieber

-John T said:
Hi,

I'm currently running Windows Vista Home Premium 64bit.

I have an internal card reader in my system.

When I turn on my system with the card reader connected, the "Safely Remove
Hardware" icon pops up.

I would like to remove the internal card reader from this, mainly because I
don't want to accidentally click on it, and I don't believe it should be
there as there it does not actually need to be removed.

This can be achieved by modifying a registry value. So far
I had no time writing a little tool for this...

Devices are shown there if they are marked as removable and
if they do no have the 'surprise removal ok' flag. These are
bit coded flags:

From cfgmgr32.h:
#define CM_DEVCAP_REMOVABLE (0x00000004)
#define CM_DEVCAP_SURPRISEREMOVALOK (0x00000080)

The device capabilities are found in the registry in a value
named 'Capabilities' under (sample for one of my USB flash
drives):
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_058f&Pid_6331\058F091111B

If you take away 4 from the value or add 80h and then
refresh the save removal dialog by toggeling the checkbox,
then the drive is gone.
But the value is reset when you attach the drive for the
next time. This is hard coded into the driver and read
each time the drive is loaded. If you export the modified
value an reg file then you can silently load it on startup
by
regedit /s hidecardreader.reg


The device id string of your card reader (this
Vid_058f&Pid_6331\058F091111B thing) is found in the properties
of the USB device in the device manager. My ListUsbDrives
tool shows it too (the 'Ctrl DevID'):
http://www.uwe-sieber.de/files/listusbdrives.zip


Greetings from Germany

Uwe
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top