禁用特定外部驱动器的自动运行

禁用特定外部驱动器的自动运行

我有一个外部 USB 硬盘,上面有两个分区。每次我的电脑启动 Windows 7 时,都会出现两个自动运行的弹出窗口。这很烦人;我希望 Windows 可以默默地挂载分区。

我可以禁用自动运行特定驱动器类型但是驱动器分类不是很细粒度,我仍然希望 USB 密钥能够自动运行。

有没有什么办法可以让我专门禁用 USB 硬盘上的两个分区的自动运行,而不禁用其他任何功能?

答案1

这是可能的,但需要做一些工作。我知道从哪里开始,但我不知道如何为你实现它。

http://msdn.microsoft.com/en-us/library/cc144210(v=VS.85).aspx

这些是您必须修改的注册表项。不幸的是,您需要找到所有被列为 CD/DVD 处理程序的组件的所有 classID。焦土方法就是将它们从事件处理程序中取消列出。但我不建议这样做,因为这可能会破坏程序。...

编辑:

别在意上面的内容。我已经找到答案了。

http://support.microsoft.com/kb/967715

查找此组策略的注册表设置。然后使用文章中的图表获取所需的设置。例如,我想阻止以下驱动器:未知、网络和 CD。使用我方便的 Windows 计算器,我得到了 b1(十六进制)或 177 的值。打出那个坏家伙。

答案2

所以,对于我这个倒霉的 Windows 7 用户来说,显然是没有希望的。但如果你使用的是 Windows 2000、XP 或 2003(以及仅有的如果您使用的是 Windows 2000、XP 或 2003),那么您很幸运!

这个MSDN文档包含有关如何在单个驱动器号上禁用自动播放的说明。

基本上,首先要选择要禁用的驱动器号。对我来说,是 E、F 和 G。

ZYXWVUTSRQPONMLKJIHGFEDCBA
00000000000000000000000000

这是二进制数。将要禁用自动播放的驱动器号下的数字更改为 1。如下所示:

ZYXWVUTSRQPONMLKJIHGFEDCBA
00000000000000000001110000

忽略所有前导零。现在我有

1110000

使用 Windows 计算器或其他工具将其转换为十六进制。

70

现在打开开始菜单,输入regedit并转到此处:

HKEY_CURRENT_USER
   Software
      Microsoft
         Windows
            CurrentVersion
               Policies
                  Explorer

转到菜单并选择编辑>新建>DWORD(32 位)值。

命名NoDriveAutoRun。现在,输入您刚刚算出的数字。关闭 regedit。神奇!可能需要重新启动才能使更改生效。

答案3

从 Windows Vista 开始,使用 Regitry (regedit.exe)、组策略编辑器 (gpedit.msc) 或控制面板 (control.exe) 似乎无法仅禁用 USB 驱动器的自动播放。

真正有效的是从驱动器本身禁用自动播放!

步骤如下:

  • 在 Windows 资源管理器的选项中启用查看隐藏文件(如果尚未启用)

  • 浏览到驱动器的根目录

  • 找到文件 autorun.inf 并将其重命名,例如,重命名为 autorun.IDLE.inf

  • 创建一个名为 autorun.inf 的文件夹并将其属性设置为 HSA(隐藏 + 系统 + 存档)

  • 如果需要,请在 Windows 资源管理器的选项中重置查看隐藏文件

就是这样!

答案4

在 Windows 7 中,转到“控制面板\所有控制面板项\自动播放”,在底部,在外部设备部分的下拉菜单中选择“不采取任何操作”

相关内容