概述
USB设备历史清理工具是一个用于清理Windows系统USB设备注册表历史记录的批处理脚本。每当USB设备连接到计算机时,Windows会在注册表中记录设备信息,本工具可以帮助您清理这些历史记录。
系统要求
- Windows 7/8/10/11
- 管理员权限(脚本会自动请求)
安装
无需安装,直接将 clean-usb.bat 文件放置到任意目录即可使用。
使用方法
启动方式
方法一:双击运行
- 直接双击
clean-usb.bat - 脚本会自动弹出UAC提示请求管理员权限
- 点击"是"确认后即可运行
方法二:右键运行
- 右键点击
clean-usb.bat - 选择"以管理员身份运行"
方法三:命令行运行
- 以管理员身份打开命令提示符
- 导航到脚本目录
- 执行
clean-usb.bat或带参数执行
交互模式
直接运行脚本(无参数)将显示主菜单:
========================================
USB设备历史记录清理工具
========================================
1. 列出所有USB设备
2. 选择并删除USB设备
3. 退出
请选择 [1-3]:
选项1:列出所有USB设备
显示系统中所有已记录的USB设备信息:
[信息] 正在扫描USB设备...
VID PID 设备名称
------ ------ ----------------------------------------
046D C077 USB Input Device
05AC 024F HID Keyboard Device
...
[信息] 扫描完成
| 字段 | 说明 |
|---|---|
| VID | 厂商标识(Vendor ID) |
| PID | 产品标识(Product ID) |
| 设备名称 | 设备描述名称 |
选项2:选择并删除USB设备
显示带编号的设备列表,支持多种选择方式:
序号 VID PID 设备名称
---- ------ ------ ----------------------------------------
1 046D C077 USB Input Device
2 05AC 024F HID Keyboard Device
...
---- ------ ------ ----------------------------------------
共计: 10 个设备
注意: 选择设备将删除该VID的所有记录
输入序号删除 (1-10),0取消,多个序号用空格分隔,或输入'all'删除全部:
例如: 1 3 5 或 all
选择:
| 输入方式 | 操作 | 示例 |
|---|---|---|
| 单个序号 | 删除选中编号对应的设备 | 1 |
| 多个序号(空格分隔) | 批量删除多个设备 | 1 3 5 |
0 | 取消操作 | 0 |
all | 删除所有设备记录 | all |
注意:
- 选择某个设备会删除该VID的所有注册表条目
- 多选时会自动去重,避免重复删除同一VID
- 删除前会有二次确认提示
删除流程
- 扫描注册表匹配目标设备
- 显示待删除的注册表键列表
- 用户确认(Y/N)
- 以SYSTEM权限执行删除
- 验证删除结果并报告状态
命令行模式
支持以下命令行参数:
| 参数 | 说明 | 示例 |
|---|---|---|
/LIST | 列出所有USB设备 | clean-usb.bat /LIST |
/VID XXXX [YYYY...] | 删除指定VID的设备,支持多个VID(空格分隔) | clean-usb.bat /VID 05AC 046D |
/WHATIF | 预览模式,不实际删除 | clean-usb.bat /VID 05AC /WHATIF |
/? | 显示帮助信息 | clean-usb.bat /? |
示例
列出所有设备
clean-usb.bat /LIST
删除单个厂商设备(Apple,VID: 05AC)
clean-usb.bat /VID 05AC
批量删除多个厂商设备
clean-usb.bat /VID 05AC 046D 18D1
此命令将同时删除Apple(05AC)、Logitech(046D)、Google(18D1)的所有设备记录。
预览删除操作
clean-usb.bat /VID 05AC /WHATIF
预览模式会显示将要删除的项目,但不会实际执行删除操作。
命令行帮助
clean-usb.bat /?
常见VID参考
| VID | 厂商 |
|---|---|
| 0000 | 未知/无效设备 |
| 05AC | Apple Inc. |
| 046D | Logitech |
| 8087 | Intel |
| 18D1 | |
| 04E8 | Samsung |
| 2717 | Xiaomi |
| 22B8 | Motorola |
| 0BB4 | HTC |
| 054C | Sony |
| 047F | Plantronics |
| 0951 | Kingston |
工作原理
注册表位置
工具扫描以下注册表路径:
| 路径 | 说明 |
|---|---|
HKLM\SYSTEM\CurrentControlSet\Enum\USB | USB设备枚举器 |
HKLM\SYSTEM\CurrentControlSet\Enum\HID | 人机接口设备(键盘、鼠标等) |
SYSTEM权限
USB注册表键具有特殊保护,普通管理员无法直接删除。本工具通过创建计划任务以SYSTEM账户运行来绕过此限制。
自动提权
脚本启动时会自动检测管理员权限,若无权限则通过PowerShell的Start-Process -Verb RunAs自动请求UAC提权。
安全说明
- 自动请求管理员权限 - 双击运行即可,无需手动右键
- 删除前会显示预览 - 请仔细核对将要删除的项目
- 二次确认机制 - 删除操作需要用户输入Y确认
- 部分删除可能需要重启 - 某些键可能在系统重启后才能完全清除
- 不要删除系统关键设备 - 避免删除正在使用的键盘、鼠标等设备
故障排除
问题:脚本闪退
解决方案:
- 确保以管理员身份运行
- 检查是否有中文输入错误
- 使用命令行模式运行查看错误信息
问题:提示权限错误
解决方案:
- 脚本会自动请求权限,请点击UAC提示的"是"
- 如果UAC被禁用,请手动右键选择"以管理员身份运行"
问题:删除后设备仍然显示
解决方案:
- 重启计算机
- 重新运行工具
- 检查设备是否正在使用中
问题:无法删除某些键
解决方案:
- 重启到安全模式后运行
- 使用
/WHATIF预览模式确认目标 - 检查是否有进程占用该设备
问题:CMD中文显示乱码
解决方案:
- 脚本已内置编码设置,正常情况下不会乱码
- 如仍有乱码,请确保CMD窗口字体支持中文
注意事项
- 本工具会修改系统注册表,请谨慎使用
- 建议在执行删除前使用
/WHATIF预览 - 清理USB历史不会影响当前正常使用的设备
- 清理后重新插入USB设备会重新生成记录
- 支持批量删除多个VID,提高清理效率

1万+

被折叠的 条评论
为什么被折叠?



