查看文件(或文件夾)被哪個進程使用【文件已在另一程序中打開】


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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM