注册表添加NoDrives隐藏盘符(禁用U盘)参数说明

         关于禁用USB接口,有一种方法是在注册表HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer位置新建键“NoDrives”,类型是REG_DWORD,通过设置其值,隐藏某个驱动器盘符;再新建一个键“NoViewOnDrive”,类型也是REG_DWORD,通过设置其值,禁止访问某个驱动器。    

         这些应该很好理解,U盘也是驱动器,当然可以禁用。可是问题就出在“通过设置其值”,如何设置?

         关于如何设置,网上有“详细”说明,可是说的太晦涩,估计大家抄来抄去,自己也不知道是什么意思,就在网上发教程了,导致看教程的人不是算法出错,就是完全不懂。俺就是深受其害,最后没办法直接去MSDN看英文资料,才弄懂是怎么回事。

         废话说了这么多,进入正题。

         参数规则:注册表中,键的类型REG_DWORD,表示32位无符号数,如果用二进制表示,从低位到高位(也就是从右到左),依次表示ABCDEFGHJIKLMNOPQRSTUVWXYZ,如果想禁用哪个驱动器,直接把对应位写成1,不禁用就写0。对应关系如下:


         上图所示的写法禁用了所有驱动器。

         假如只保留A、C、D盘,其他全部禁用,写成如下形式:



         从图中可以看出,我们实际上是对照字母顺序构造了一个二进制表示,把这个二进制表示转换成十六进制表示,存入“NoDrives”键和“NoViewOnDrive”键就可以了,这样一来禁用的驱动器即无法显示也无法访问。


原文地址:https://www.cnblogs.com/iyangyuan/p/2801801.html