【win的实用官方工具集合】解决:该设备正在使用中,请关闭所有。。。

如图片展示的那样

复制代码
https://learn.microsoft.com/zh-cn/sysinternals/downloads/sync

@echo off
setlocal EnableDelayedExpansion
title USB 占用侦探 V2.0 - 全局搜索版
color 1f

:: --- 1. 检查管理员权限 ---
net session >nul 2>&1
if %errorlevel% neq 0 (
    echo.
    echo [警告] 请右键点击本脚本,选择"以管理员身份运行"!
    echo 只有管理员权限才能查看到所有系统进程。
    echo.
    pause
    exit
)

:start
cls
echo ========================================================
echo        USB 占用检测工具 V2.0 (自动搜索 Handle 工具)
echo ========================================================
echo.

:: --- 2. 智能搜索工具 (优先搜系统 PATH,再搜当前目录) ---
set tool=

:: 尝试在 PATH 中搜索 handle64
where handle64.exe >nul 2>&1
if %errorlevel% equ 0 (
    set tool=handle64.exe
    echo [状态] 已在系统路径中找到: handle64.exe
    goto check_drive
)

:: 尝试在 PATH 中搜索 handle
where handle.exe >nul 2>&1
if %errorlevel% equ 0 (
    set tool=handle.exe
    echo [状态] 已在系统路径中找到: handle.exe
    goto check_drive
)

:: 尝试在当前目录下搜索
if exist "%~dp0handle64.exe" (
    set tool="%~dp0handle64.exe"
    echo [状态] 已在当前目录找到: handle64.exe
    goto check_drive
)
if exist "%~dp0handle.exe" (
    set tool="%~dp0handle.exe"
    echo [状态] 已在当前目录找到: handle.exe
    goto check_drive
)

:: --- 如果都找不到 ---
if "%tool%"=="" (
    echo.
    echo [错误] 依然找不到 handle.exe 或 handle64.exe!
    echo.
    echo 请确认以下任一条件满足:
    echo 1. handle.exe 已经放入 C:\Windows\System32 (或其他 PATH 目录)。
    echo 2. 或者,handle.exe 就在本脚本的同一个文件夹里。
    echo.
    echo 输入命令 'where handle.exe' 进行测试。
    pause
    exit
)

:check_drive
echo.
set /p drive="请输入 U 盘盘符 (例如 E,不带冒号): "
set drive=%drive::=%

echo.
echo 正在扫描 %drive%: 盘的占用情况...

:: --- 3. 第一次运行协议 (静默接受 EULA) ---
%tool% -accepteula -s >nul 2>&1

:: --- 4. 核心命令:输出日志 ---
echo 正在生成报告...
echo --------------------------------------------------- > USB_Lock_Log.txt
echo 扫描工具: %tool% >> USB_Lock_Log.txt
echo 扫描时间: %date% %time% >> USB_Lock_Log.txt
echo 目标盘符: %drive%:\ >> USB_Lock_Log.txt
echo --------------------------------------------------- >> USB_Lock_Log.txt
echo. >> USB_Lock_Log.txt

:: 执行命令并将结果追加到日志
%tool% -a -u %drive%: >> USB_Lock_Log.txt

:: --- 5. 完成与反馈 ---
echo.
echo 扫描完成!正在打开日志文件...
start notepad USB_Lock_Log.txt

echo.
echo ========================================================
echo  请查看弹出的记事本窗口。
echo  如果日志是空的,说明没有明显的文件句柄占用,
echo  或者你需要重新拔插一下试试。
echo ========================================================
echo.
pause

注意

代码不太完善 ,会显示无关的进程。

相关推荐
Lethehong8 小时前
服务器越来越多怎么统一监控?Beszel 接入 Agent、SMTP 告警与公网访问
运维·服务器
gs801408 小时前
Docker Desktop 报 Wsl/CommandTimedOut、wsl -l -v 卡死、0x80080005 的完整排查与解决
运维·docker·容器
其实防守也摸鱼8 小时前
CVE / NVD 漏洞数据库详解:从入门到实战
大数据·运维·人工智能·web安全·自动化
翼龙云_cloud8 小时前
阿里云国际代理商:2026零基础如何使用轻量应用服务器搭建独立站?
运维·服务器·阿里云·云计算
新时代牛马8 小时前
Linux 内存映射mmap 完整篇:从用户态 API、VMA 到缺页与驱动实现
linux·运维·服务器
叶子野格8 小时前
《Verilog学习:前置知识》
学习·fpga开发
张洛闻Eren8 小时前
云原生k8s【第八课】: ETCD 备份与恢复
linux·运维·docker·kubernetes·k8s
wuyk5558 小时前
从零吃透 MQTT 通信|第 6 章 MQTT 主题、过滤器、通配符、订阅管理、拒收机制详解与代码实现
c语言·stm32·学习
新时代牛马9 小时前
Linux 守护进程与服务完整篇:从daemonize、systemd 到pidfile 与排障
linux·运维·服务器
sunshine22 girl18 小时前
Java学习一 环境配置2 安装和基本使用Idea
java·学习·intellij-idea