必须修改注册表nodrivetypeautorun为0xff(十六进制)并新增noautorun值为1,再禁用shell hardware detection服务,才能彻底禁用autorun.inf解析与执行;专业版还需通过组策略启用“关闭自动播放”和“关闭自动运行”策略。

Windows 11插入U盘、移动硬盘或SD卡后自动执行autorun.inf、弹出资源管理器窗口,甚至触发恶意程序,说明系统底层AutoRun机制仍在运行。仅关闭“自动播放”图形开关无法阻止autorun.inf解析与ShellExecute调用,必须从注册表级禁用AutoRun行为。
通过注册表彻底禁用AutoRun(所有版本通用)
这一步直接干预系统加载autorun.inf的逻辑,是家庭版、专业版均适用的最底层方案,操作前请确保已备份注册表。
按Win + R输入regedit → 回车 → 点击“是”以管理员身份运行注册表编辑器。
导航至:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer。
在右侧空白处右键 → 新建 → DWORD (32位) 值 → 命名为NoDriveTypeAutoRun。
双击该值,将数值数据设为0xFF,基数选“十六进制”,点击确定。此值会屏蔽所有驱动器类型的AutoRun触发,包括USB、光盘、网络驱动器等。
在同一路径下,再次右键 → 新建 → DWORD (32位) 值 → 命名为NoAutorun → 双击编辑,数值数据填1(十进制),点击确定。该键值专门禁用autorun.inf文件的读取与执行流程,不依赖NoDriveTypeAutoRun单独生效,但二者叠加更稳妥。
关闭注册表编辑器,重启电脑使设置生效。重启后插入含autorun.inf的U盘,系统将完全无视该文件,也不会弹窗、不会自动打开文件夹。
禁用Shell Hardware Detection服务(强力补充)
该服务是Windows检测新硬件并触发AutoPlay/AutoRun事件的核心后台组件,禁用后可切断绝大多数自动响应链路,尤其对绕过注册表策略的第三方工具有效。
按Win + R输入services.msc回车,打开服务管理控制台。
在服务列表中找到Shell Hardware Detection → 右键 → 属性。
启动类型下拉菜单中选择禁用 → 点击下方“停止”按钮 → 确认服务已停止状态 → 点击确定。
注意:禁用后插入U盘将不再弹出任何提示框,也不会自动播放音乐或图片,但不影响手动双击打开设备。
组策略强制关闭自动播放(专业版/企业版专属)
此方法优先级高于设置界面,能覆盖用户级配置,且同步禁用ShellExecute对autorun.inf的调用入口,适合统一管控环境。
第一步:按Win + R输入gpedit.msc → 回车。
第二步:依次展开计算机配置 → 管理模板 → Windows组件 → 自动播放策略。
第三步:双击右侧“关闭自动播放” → 设为已启用 → 下方驱动器选项选“所有驱动器” → 确定。
第四步:继续在此路径下,找到并双击“关闭自动运行”(注意名称相同但位于不同子项)→ 同样设为已启用 → 确定。
第五步:按Ctrl + Shift + Esc打开任务管理器 → 文件 → 运行新任务 → 输入gpupdate /force → 勾选“以管理员身份运行” → 回车刷新策略。











