当系统提示“该文件在另一程序中打开”时,说明有进程正占用该文件句柄;可通过资源监视器、PowerShell命令、Handle.exe工具、任务管理器详细信息页或LockHunter软件定位并结束占用进程。

如果您尝试删除、重命名或移动某个文件时,系统弹出“该文件在另一程序中打开”的提示,则说明当前有进程正在访问该文件句柄,导致操作系统拒绝修改操作。以下是找出并定位占用进程的多种方法:
一、使用资源监视器精准查找占用进程
资源监视器是Windows内置的深度诊断工具,可实时扫描所有对指定文件路径执行读写、映射或锁定操作的进程,支持模糊匹配与完整路径检索,避免遗漏后台服务或隐藏进程。
1、按下 Ctrl + Shift + Esc 打开任务管理器。
2、切换至“性能”选项卡,点击底部的“打开资源监视器”链接。
3、在资源监视器窗口中,切换到“CPU”选项卡,展开下方的“关联的句柄”区域。
4、在搜索框中粘贴被占用文件的完整路径(例如 C:\Users\John\Documents\report.xlsx)或输入文件名(如 report.xlsx)。
5、等待搜索完成,在结果列表中查看“进程”列和“句柄名称”列,确认占用源。
6、右键点击对应进程,选择“结束进程”;若为系统关键进程(如 svchost.exe),请先核对“映像名称”与“PID”再操作。
二、通过PowerShell命令筛选含目标路径的进程
PowerShell提供原生命令支持按进程加载路径进行过滤,无需额外工具即可快速识别直接打开该文件的应用程序,适用于已知文件被某类编辑器或播放器调用的场景。
1、以管理员身份运行PowerShell:右键“开始”按钮 → 选择“Windows PowerShell(管理员)”。
2、执行以下命令(将 C:\path\to\file.txt 替换为实际文件路径):
Get-Process | Where-Object { $_.Path -like "*C:\path\to\file.txt*" } -ErrorAction SilentlyContinue
3、若返回结果为空,尝试扩大匹配范围,改用文件所在目录路径:
Get-Process | Where-Object { $_.Path -like "*C:\path\to\*" } -ErrorAction SilentlyContinue
4、记录输出中的Id(PID)与ProcessName,用于后续终止操作。
三、使用Sysinternals Handle.exe工具查询底层句柄
Handle.exe由微软官方开发,可穿透系统保护机制,显示内核级句柄分配详情,包括非标准路径访问、内存映射文件及远程线程注入等隐蔽占用形式,精度高于资源监视器。
1、从微软官网下载handle64.exe(64位系统),解压至本地固定目录(如 C:\Tools\)。
2、以管理员身份运行PowerShell,执行路径切换命令:
cd C:\Tools\
3、运行句柄查询命令(需包含引号包裹完整路径):
.\handle64.exe -a "C:\path\to\file.txt"
4、在输出中查找“pid: XXXX”字段,记录该进程标识符。
5、执行强制终止命令(将XXXX替换为实际PID):
taskkill /f /pid XXXX
四、借助任务管理器“详细信息”页签快速筛选进程
任务管理器的“详细信息”视图支持按映像名称、PID、命令行参数进行实时搜索,适合已知文件类型对应典型进程名(如 WINWORD.EXE、chrome.exe)的快速定位。
1、按下 Ctrl + Shift + Esc 打开任务管理器。
2、切换至“详细信息”选项卡(若未显示,请点击右下角“更多详细信息”)。
3、点击任意列标题(如“名称”)进行排序,便于观察高频可疑进程。
4、在右上角搜索框中输入文件扩展名对应进程名(例如:输入 WINWORD 查找 Word,chrome 查找 Chrome 标签页)。
5、检查搜索结果中各进程的“命令行”列,确认是否包含目标文件路径。
6、右键目标进程,选择“结束任务”。
五、使用LockHunter工具一键识别并解锁
LockHunter是一款轻量级第三方工具,提供图形化右键菜单集成,能自动扫描所有句柄层级(包括子进程、DLL加载、注册表键监听),并支持强制解锁与延迟重启功能,适合非技术用户快速处理。
1、从LockHunter官网下载安装包,确保版本兼容Win10/Win11且无捆绑软件。
2、安装完成后,右键点击被占用的文件或文件夹,选择“What is locking this file?”。
3、等待扫描完成,在弹出窗口中查看占用进程树状图及每个节点的句柄类型(如 Read, Write, Delete)。
4、勾选需释放的进程项,点击“Unlock It!”按钮执行强制解除。
5、若提示进程受保护,可勾选“Remove lock and kill process”后再次点击解锁。










