C#使用handle實(shí)現(xiàn)獲取占用指定文件或文件夾的進(jìn)程
前言:很多時(shí)候,一些不知道啥進(jìn)程,把你的文件給占用了,然后就沒(méi)辦法刪掉或者做其他操作。如果使用Locksmith功能,就可以實(shí)現(xiàn)快速鎖定是哪個(gè)進(jìn)程在搞事情,把對(duì)應(yīng)進(jìn)程干掉就可以了。下面內(nèi)容演示C#使用幾行代碼實(shí)現(xiàn)File Locksmith功能。
先創(chuàng)建一個(gè)控制臺(tái)程序(其他程序均可),新增一個(gè)Locksmith類,用于模擬File Locksmith的功能。并引用handle文件。
handle文件下載地址:
https://download.sysinternals.com/files/Handle.zip

然后直接傳入文件或文件夾路徑,即可自動(dòng)識(shí)別。例如本地我用WPS打開(kāi)了一個(gè)word文檔:

提供個(gè)獲取文件路徑的輸入,然后傳入?yún)?shù)。運(yùn)行,效果如圖:

檢查對(duì)應(yīng)的任務(wù)管理器,確實(shí)可以看到改進(jìn)程ID是30656,以及內(nèi)部在打開(kāi)一個(gè)test.docx文件。

也可以識(shí)別文件夾路徑,例如查看D盤(pán)被誰(shuí)占用:

找到6472,找到一個(gè)系統(tǒng)進(jìn)程,右鍵打開(kāi)文件位置,確實(shí)是svchost.exe程序占用了。

功能使用用途:例如U盤(pán)彈出、文件刪除等,發(fā)現(xiàn)被占用,就可以使用該功能快速鎖定具體哪個(gè)進(jìn)程占用。如果是無(wú)關(guān)的進(jìn)程,直接關(guān)閉程序就行。如果是一些后臺(tái)進(jìn)程,可以拓展個(gè)kill命令,直接kill指定進(jìn)程來(lái)釋放文件。
以上就是C#使用handle實(shí)現(xiàn)獲取占用指定文件或文件夾的進(jìn)程的詳細(xì)內(nèi)容,更多關(guān)于C# handle獲取占用指定文件的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
C#自定義實(shí)現(xiàn)多程序共享內(nèi)存空間
這篇文章主要為大家詳細(xì)介紹了C#如何自定義實(shí)現(xiàn)多程序共享內(nèi)存空間,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-10-10
C#從foreach語(yǔ)句中枚舉元素看數(shù)組詳解
這篇文章主要給大家介紹了關(guān)于C#從foreach語(yǔ)句中枚舉元素看數(shù)組的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-05-05
js驗(yàn)證電話號(hào)碼手機(jī)號(hào)碼的正則表達(dá)式
本篇文章主要是對(duì)js驗(yàn)證電話號(hào)碼手機(jī)號(hào)碼的正則表達(dá)式進(jìn)行了介紹。需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-01-01

