1. 程式人生 > >win8中dll字尾檔案強制刪除的一個方法

win8中dll字尾檔案強制刪除的一個方法

引言:

在我們解除安裝一個軟體時,有時候會有一些.dll字尾的檔案無法刪除乾淨,原因是被其他程序呼叫,處於執行狀態,無法刪除。這時候必須找到呼叫該dll檔案的程序(exe),可能不只一個,關停這些程序,然後再去刪除對應的dll檔案就能刪除成功了,但是如果dll檔案被windows系統的檔案總管程序(explorer.exe)呼叫了呢?關停該程序之後你的電腦就藍屏了,桌面上什麼也看不到了,除了你已經開啟的幾個應用程式介面,這種情況怎麼啟動explorer.exe呢?下面我詳細地說一下,把這個坑的解決過程記錄下來。

詳情:

在win8的工作管理員中的”詳細資訊“中能看到所有執行中的程序,在這裡面你能滑鼠右鍵一個程序,然後選擇“停止任務”關閉該程序:

但我們還不知道是哪個程序呼叫了我們要刪除的dll檔案,繼續往下看。

1、一句命令:

可以在cmd中用一句命令產生一個txt檔案,在這個txt檔案中會記錄有所有執行中的程序及其呼叫的所有dll檔案的對應關係,注意cmd(命令提示符)一定要以管理員身份開啟,否則會提示“拒絕訪問”:

在cmd中輸入一行命令:tasklist /m>c:\1.txt,然後回車。1.txt檔案本身不存在,這沒有關係,檔名本來就瞎起的。

輸完命令後回車C盤下就有1.txt檔案了:

2、在產生的txt中檢視自己的dll被哪個程序呼叫了:

用文字編輯器開啟1.txt:

利用文字編輯器的“編輯”->“查詢”功能,輸入你要刪除的dll檔案的名稱,比如aaa.dll,輔助你找出所有呼叫了aaa.dll的exe檔案:

3、關閉找到的exe程序:

這裡有個坑,你的dll可能被windows系統的檔案總管(explorer.exe)呼叫了,關閉explorer.exe會導致電腦藍屏,桌面上除了已經開啟的應用程式的介面外,其他東西都沒有了,這時候需要你在停止explorer.exe之前開啟cmd,之後只能通過命令刪除你要刪除的dll檔案了,因為explorer.exe停止之後你的資料夾開啟介面也會消失。如果對命令列有恐懼症,想放棄,只能另找辦法解決,這裡我只記錄cmd中刪的方式。其實不用怕的,因為重新啟動explorer.exe的步驟也很簡單。

“ctrl+alt+delete”選中工作管理員開啟,在文章開頭所說的"詳細資訊"中找到你要停止的程序(exe),右鍵停止該任務就行了,當所有要停止的任務都停止以後,你就可以去刪除你要刪除的dll檔案了。

這裡我們假設explorer.exe已經停止了,所以只能通過cmd去刪除一個dll檔案,比如說我要刪除G盤中software資料夾中的一個dll,在cmd中操做的步驟如下圖:

然後就可以重新啟動explorer.exe程序了:

開啟工作管理員(此時只能通過快捷鍵開啟:ctrl+alt+delete),點選左上角“檔案”,再點選“執行新任務”,在彈出視窗輸入explorer.exe,回車,然後就恢復如初了。