查看文件(或文件夹)被哪个进程使用【文件已在另一程序中打开】

windows系统中当我们在删除某个文件或文件夹时有时会提示该文件有程序在使用不能被删除,这时相当惆怅。那么可以用这个方法来找到是哪个进程在占用该文件:  

1:打开任务管理器选择“性能”  
2:单击下部的“资源监视器”  
3:选择“CPU”,在下部可以看到“关联的句柄”搜索框  
4:在该搜索框中输入要删除的文件名回车  

在下面就会列出来占用该文件的进程名,右键该进程单击“结束进程”,OK,可以删除了:

注释:

(在操作系统界面上所说的)文件和文件夹,其本质在文件系统层次上都是一个文件的形式,所以问如何查看文件被哪个进程使用和问查看文件夹被哪个进程使用其实是同一个问题而已。当一个进程占用或叫打开一个文件(或文件夹)(之后便可使用(即读或写)该文件)时,便有一个文件内核对象被创建,且在该进程地址空间中存在一个该文件内核对象的句柄。上述图片中,cd zzw是表示cmd进程占用或叫打开一个叫zzw的文件夹(即读取zzw文件夹的元数据到内存),之后,若是输入查看该目录下的有哪些文件的命令则表示cmd进程读取zzw文件夹的数据,若是输入添加或是删除zzw文件夹下的文件时表示cmd进程写入zzw文件夹的数据。当一个文件要被关闭(本质上,即文件内核对象要被销毁)之前,其在各个进程地址空间中的引用(的句柄)都要被关闭才可执行文件关闭操作,所以上述图片例子里,若是你在操作系统界面上(具体是,windows资源管理器里)要关闭该zzw文件夹,就得先关闭cmd里对zzw文件夹的引用,否则就会提示“文件夹或者文件正在被使用,操作无法完成”。

======================================================

 

  

查看文件被哪个进程占用

 
openfiles
用于查看各个进程所打开的文件。windows自带工具。
必须先用openfiles /local on 命令启用系统全局标志“维护对象列表”;
再重启后执行openfiles查看各进程文件。


Process Mointor
微软提供的工具,需要下载,下载路径http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx

process explorer          process monitor

========================================================

 

unlocker工具

抑或是结合用openfiles或者Wmic命令是否能做到呢?

不需要什么环境变量,我都是直接把文件拖到unlocker.exe,CMD命令为C:\unlocker.exe "c:\某文件夹",如果不想写全路径可以把unlocker相关文件放在system32文件夹下。因为要用到rootkit技术,所以只用系统自带命令应该是不行的

参见:http://bbs.cfanclub.net/thread-543485-1-1.html

 

文件锁定检测工具(检查哪个进程占用文件) v1.0 绿色版

删除文件时遇到”无法删除”或DLL等文件无法删除的时候,本软件就可以检测到这个文件被哪个进程调用了,会给出进程路径、PID、句柄等信息

软件截图

 

文件锁定检测工具(检查哪个进程占用文件) v1.0 绿色版
 
 
用 procexp.exe 查询(目录名)句柄,就可以发现是哪个进程正在使用此句柄。
 
如果需要删除目录,直接关闭句柄就可以了。
unlocker可以查文件夹么? 我知道dll文件tasklist命令就可以
参考:http://bbs.csdn.net/topics/350156293
 

CMD查看文件夹被哪个程序占用

Net file

显示服务器上所有打开的共享文件名称以及每个文件的文件锁定码(如果有的话)。该命令也关闭单独的共享文件并删除文件锁定。使用不带参数的 net file 命令显示服务器上打开文件的列表。

===================================================================
参考:
百度
文件夹被哪个程序占用
文件夹被占用
查看文件夹被哪个程序占用
查看文件被哪个程序占用
=====================================
 

windows中查看文件正在被哪个进程使用

  • |
  • 浏览:6111
  • |
  • 更新:2014-02-26 01:05
  • |
  • 标签:windows 
  1. 应用背景:

      windows操作系统中,有时我们关闭程序后,一些相关的进程仍在后台运行,并访问着一些文件,使得我们无法对这些文件及其所属的文件夹进行删除、重命名等操作。

      此时,如果知道这个文件/文件夹正在被哪个进程使用,就可以用任务管理器结束这个进程,然后就可以对文件进行修改了。(请谨慎决定是否结束关键的、可能会影响系统正常工作的进程。)

     

  2. 查看方法:

    1.打开 资源管理器(Ctrl+Shift+Esc)

    2.选择 性能 选项卡

    3.点击右下角的 资源监视器

    4.选择 概述 选项卡

    5.选择 “磁盘”

    6.在“磁盘”下方弹出的列表中,第三列“文件”就是当前被进程打开的文件。可能需要最大化窗口并手动调整列宽才能看清。

    7.表中的第一列 映像 即是打开这个文件的进程名称,可考虑在任务管理器中结束该进程

    8.如果有重名的多个进程,以第二列 PID 为准

转自:http://blog.csdn.net/haiross/article/details/49678655

posted on 2017-12-28 13:43  苦涩的茶  阅读(34720)  评论(1编辑  收藏  举报

// 1.生成目录索引列表