为什么 Windows 不告诉你谁在使用这个文件?

2020-03-24 17:28:09 +08:00
 chanlk

删除文件或者修改文件名的一些操作的时候,文件处于在使用的状态下是无法进行这些操作的。但是问题是很多时候我找不到谁在用它,为什么 Windows 不告诉你哪个程序正在使用这个文件呢? 或者有什么姿势可以快速找到是哪个程序在用它吗?

1719 次点击
所在节点    问与答
8 条回复
Vegetable
2020-03-24 17:35:37 +08:00
资源监视器搜索关联的句柄

任务管理器-性能-打开资源监视器-搜索关联的句柄
Vegetable
2020-03-24 17:36:16 +08:00
任务管理器-性能-打开资源监视器-切换到 CPU 页-搜索关联的句柄
minami
2020-03-24 17:55:16 +08:00
IObit Unlocker
chanlk
2020-03-24 17:57:50 +08:00
@Vegetable 学到了,感谢感谢!
geelaw
2020-03-24 18:26:19 +08:00
Windows 有尝试的,见

https://devblogs.microsoft.com/oldnewthing/20120217-00/?p=8283

https://docs.microsoft.com/en-us/windows/win32/api/shobjidl_core/nn-shobjidl_core-ifileisinuse

后者( IFileIsInUse )是应用程序汇报自己使用文档 /媒体文件的方法,它允许用户查询是哪个程序的哪个窗口在使用它,并允许用户请求关闭该程序。

前者( Restart Manager )是 Windows 内核提供的方法,它可以找到使用文件的所有进程。

然而并不是所有的信息都有意义,在没有 IFileIsInUse 的情况下,是无法确切得知“应该找哪个程序解决问题”的,比如说一个文件可能被一个 COM server 打开,而惟一能逻辑上正确关闭文件的是 COM client,这时提示用户关掉 COM server 基本上是没有意义的。又比如一个文件被某个服务打开,而它打开的原因是为了服务某个程序,这时正确的指引方向是程序而不是服务。
yongliu
2020-03-24 18:30:53 +08:00
ybw
2020-03-24 21:00:25 +08:00
这是 Windows 的产品经理没做好事了
loading
2020-03-24 21:19:04 +08:00
wholockme,小巧好用。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/655763

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX