You need to enable JavaScript to run this app. Windows中如何定位锁定文件或文件夹的进程(错误码32共享违规)
优惠活动
大模型
产品
解决方案
定价
更多

Windows中如何定位锁定文件或文件夹的进程(错误码32共享违规)

Windows下查询锁定文件的进程标识(错误码32共享违规)

注:Windows错误码32对应ERROR_SHARING_VIOLATION,含义是目标文件已被其他进程以禁止共享的方式打开,以下方法可直接获取持有文件句柄的进程ID、线程ID等标识信息。

系统内置无需额外安装的查询方式

  • 资源监视器可视化查询
    按下Win+R快捷键输入resmon回车打开资源监视器,切换到「CPU」选项卡,找到「关联的句柄」搜索框,输入目标文件的完整路径或文件名,搜索结果会直接返回:
    • 锁定文件的进程名称、进程ID(PID)
    • 对应文件的句柄ID
      若需要定位到具体线程,可右键对应进程选择「分析等待链」,可直接展示该进程下持有该文件句柄的线程ID(TID)。
  • 命令行查询
    1. openfiles命令

      前置配置:默认仅跟踪网络共享文件句柄,需先开启本地文件句柄跟踪功能:执行openfiles /local on后重启系统生效。
      查询命令格式:openfiles /query /fo list | findstr /i "目标文件名或完整路径"
      输出结果会列出打开该文件的进程ID、会话ID信息。

    2. PowerShell 原生API查询
      无需额外配置,直接调用ntdll.dll原生接口枚举系统句柄,可直接获取进程、线程关联信息,基础查询框架示例:
      $targetFilePath = "C:\test\locked_example.docx"
      Add-Type @"
      using System;
      using System.Runtime.InteropServices;
      public class Win32Native {
          [DllImport("ntdll.dll")]
          public static extern int NtQuerySystemInformation(int infoClass, IntPtr buffer, int bufferLen, out int returnLen);
          [DllImport("kernel32.dll")]
          public static extern bool CloseHandle(IntPtr handle);
      }
      

"@
# 后续遍历系统句柄结构即可匹配目标文件,输出对应PID、TID
```

调试级第三方工具查询

可使用Sysinternals套件中的handle.exe命令行工具,执行handle.exe 目标文件完整路径即可快速输出持有该文件的进程ID、句柄信息,搭配-t参数可直接返回关联的线程ID。


内容的提问来源于stack exchange,提问作者Ian Boyd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.24 06:24:05