windows - 谁拥有 Windows 中的文件句柄?

标签 windows file handle

您如何发现哪个进程对文件有打开的句柄?具体来说,您如何以编程方式执行此操作?

最佳答案

可能有它的 API,我不知道。如果有,它可能是内核中的 API。

另一种可能性(抱歉含糊不清,但我现在正在回答这个问题,以防万一没有其他人发布更好的答案)是没有(记录的)API,并且这样做的程序通过使用句柄内容和/或句柄(当被视为指针时)指向的内存的未记录知识:例如,我发现 A Process' Kernel Object Handle Table ,而且我认为那(人们说他们对未记录的内存结构进行了逆向工程)是我记得多年前在 Softice 手册中读到的内容。

寻找更多信息的地方可能是 File System Filter Drivers .

另一种(也许更好)的方法可能是使用 dependsdumpbin/imports 来尝试查看相关的 Sysinternals 程序正在使用哪些 API。

关于windows - 谁拥有 Windows 中的文件句柄?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1008723/

相关文章:

ios - 如何在 Windows 上运行 Xcode 项目?

windows - 有没有办法分析视频以找出它的响度,然后将其纠正为 ebu r128

windows - 当目录具有 "&"字符时,以管理员身份运行批处理文件失败

windows - 如何自动更改文件内容?

ios - 以编程方式创建 sceneKit 文件(快速)

c# - 如何避免 Safe handle has been closed

windows - Phonegap Cordova 安装 Windows

ruby - 通过 Ruby 搜索和替换文件中的多个单词

c++ - 句柄而不是指针的引用计数

c# - 初始化窗体和子控件的窗口句柄而不显示