共用電腦環境下,防止他人誤刪重要檔案。本文介紹修改系統檔 shell32.dll 對話方塊資源,將「是」按鈕隱藏並將快速鍵改為自訂密碼字元(需內碼輸入法),實現刪除確認需輸入密碼的簡易保護。
原理說明
刪除確認對話方塊為 shell32.dll 資源 ID 1011、1012、1013、1021、1022 中的標準對話方塊。透過資源編輯器(如 EXESCOPE)修改對話方塊模板:隱藏「是(&Y)」按鈕、將快速鍵 Y 改為特殊字元(如內碼 Alt+123456 產生的「釦」字),並隱藏按鈕本體,使用者必須知道密碼字元並能輸入才能按下「是」。
操作步驟
- 備份
C:\Windows\System32\shell32.dll 到安全位置。
- 複製一份到工作目錄(如
C:\Mod)。
- 用 EXESCOPE 開啟該檔 → 「資源」→「對話方塊」→ 修改 1011、1012、1013、1021、1022 五個對話方塊。
- 以 1011 為例:雙擊開啟 → 選取「是(&Y)」按鈕 → 「樣式」勾選「不可見」→ 快速鍵 Y 改為密碼字元(如「釦」:Alt+小鍵盤
123456)。
- 同步修改「全部(&A)」快速鍵為不同字元,避免單一密碼通用。
- 修改靜態文字(Static: $8E 下的項目)為自訂提示(如「本電腦禁止刪除檔案」)。
- 存檔,進入 DOS(或使用 NTFSDOS/WinPE)將修改後的
shell32.dll 覆蓋回 C:\Windows\System32\。
- 重開機測試:刪除檔案 → 對話方塊無「是」按鈕 → 按 Alt+密碼字元碼 → 放開 Alt → 檔案刪除成功。
管理員刪除檔案方法
出現對話方塊時,按住 Alt 依序輸入密碼字元對應的數字鍵盤碼(如 123456),放開 Alt 即可刪除。
風險與限制
- 系統檔修改風險極高:錯誤修改導致殼層無法載入、系統無法開機,必須具備 WinPE/NTFSDOS 還原能力。
- 僅阻擋圖形介面刪除:命令列
del、第三方檔案管理器、Shift+Delete 繞過此對話方塊。
- 系統更新/修復可能覆蓋修改,需重複操作。
- 不支援多使用者差異化密碼,全域生效。
建議替代方案
- NTFS 權限設定(最標準、安全、支援多使用者)。
- EFS 加密敏感檔案。
- 第三方資料夾加密/隱藏工具(如 Folder Lock、Wise Folder Hider)。
- 建立限制帳號給他人使用,管理員帳號僅自己知悉。
修改 shell32.dll 屬於極客級 Hack,理解原理有助於深入認識 Windows 資源架構,但實際部署強烈建議採用 NTFS 權限等正規機制。