Disable possibility to eject internal hardrives

Solution 1:

Install the latest Intel Rapid Storage Technology driver or use the TreatAsInternalPort workaround.

Regedit your way to:

HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\services\msahci

and create a new KEY called "Controller0" inside Controller0, create a new KEY called "Channel0" Now inside Channel0, create a new DWORD called "TreatAsInternalPort" set this value to "1" (this sets SATA port 0 (Drive C)to no longer show up in "Safely Remove Hardware")

Now, go back into the Controller0 folder again. inside Controller0, create a new KEY called "Channel1" Now inside Channel1, create a new DWORD called "TreatAsInternalPort" set this value to "1" (this sets SATA port 1 (Drive D)to no longer show up in "Safely Remove Hardware")

And so on, until all internal SATA ports are set to be treated as Internal. My motherboard has 6 SATA ports, so I have set Channel0 to Channel5.

enter image description here (Imagesource: overclock.net)

Solution 2:

It would appear that this "functionality" is brought on by the use of SATA2 drives and compatible motherboards. These devices are designed to be able to be hot-swappable so Windows allows you to safely remove them.

So far, there is no safe way of removing the listings from the context menu while still allowing external devices to appear.