
答案1
有一個免費的 MS/Sysinternals 程式稱為懸而未決的動作它可以顯示等待重新啟動時刪除/移動的檔案清單。
您也可以查看以下註冊表項以取得待處理操作的清單:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations
執行此操作的 API 操作稱為 MoveFileEx(),並帶有 MOVEFILE_DELAY_UNTIL_REBOOT 選項。
更多資訊請參見本知識庫。
僅供參考,若要手動將工作項目新增至登錄的此區域,您可以執行下列操作:
啟動 REGEDT32 (W2K) 或 REGEDIT (WXP) 並導覽至:HKLM\System\CurrentControlSet\Control\Session Manager
W2K:編輯,新增值...,資料類型:REG_MULTI_SZ,值名稱:PendingFileRenameOperations,確定
WXP:編輯、新建、多字串值、[輸入] PendingFileRenameOperations
- 在資料區域輸入“\??\”+要刪除的檔案名稱。輸入 LFN 時可以不嵌入引號。若要刪除“C:\長目錄名稱\長檔名.exe”,請輸入以下資料:
\??\C:\長目錄名稱\長檔名.exe
然後按確定。
- 「目標檔名」是一個空(零)字串。輸入如下:
W2K:編輯,二進制,選擇資料格式:十六進制,點擊十六進位字串末尾,輸入0000(四個零),確定。
WXP:右鍵點選該值,選擇“修改二進位資料”,點選十六進位字串的結尾,輸入 0000(四個零),確定。
- 關閉 REGEDT32/REGEDIT 並重新啟動以刪除該檔案。
當然使用移動檔案比做這一切更容易。