五大常見成因
- NTFS ACL 權限不足:無存取權限。
- 檔案被其他程式鎖定:如預覽處理常式、開啟中的應用程式。
- 檔案系統損毀:磁碟錯誤導致無法存取。
- 路徑過長:超過 255 字元限制(NTFS 理論支援更長,但 Win32 API 限制)。
- 非法檔名/保留關鍵字:如
CON、LPT1、尾端帶空格/句點等。
分情境解決方案
情境一:ACL 權限問題
- 以管理員登入 → 檔案右鍵 → 內容 → 安全性 → 進階 → 擁有者 → 變更為目前管理員帳號 → 套用。
- 關閉對話框重開,安全性頁面「新增」按鈕變可用 → 新增目標帳號(格式:
電腦名\帳號)→ 給予「完全控制」。
- 或命令列:
cacls 檔案路徑 /E /G 使用者:F。
情境二:檔案被鎖定(常見於 AVI 影片預覽)
- 方法 A(推薦):關閉所有總管視窗,改用命令列
del 或 rd /s 刪除。
- 方法 B:刪除登錄
HKEY_CLASSES_ROOT\CLSID\{87D62D94-71B3-4b9a-9489-5FE6850DC73E}\InProcServer32(先匯出備份)。
- 方法 C:命令列執行
regsvr32 /u shmedia.dll 註銷影片預覽處理常式。
- 方法 D:資料夾選項 → 檢視 → 勾選「使用 Windows 傳統資料夾」。
- 方法 E:使用 FlashFXP、CuteFTP 等 FTP 用戶端以本機瀏覽模式刪除。
情境三:檔案系統損毀
出現「檔案或目錄損毀無法讀取」提示時,執行 chkdsk /f /r 磁碟代號: 修復。成因可能為壞軌、硬體錯誤、軟體 Bug。
情境四:路徑過長
- 重命名中層資料夾縮短路徑。
- 命令列使用 8.3 短檔名進入深層目錄:
cd C:\Docume~1\howto\2003\may\window~1\forweb~1\tips\smallf~1\yuanch~1\20030530\thetro~1\
進入後即可用 del 刪除。
情境五:非法檔名/保留字
- Linux/Unix 環境:掛載磁碟後用
rm 刪除(rm -d "//C/Program Files/BadFolder")。
- Win32 裝置命名空間繞過檢查:
del \\.\C:\path\filename
rd \\.\C:\path\folder
\\.\ 前綴讓系統略過檔名合法性檢查。
- 萬用字元刪除:
del pr?.*、del lpt?.* 匹配保留字開頭檔案。
預防建議
- 避免使用保留字命名檔案/資料夾。
- 定期執行
chkdsk 維護檔案系統健康。
- 開發應用時正確關閉檔案控制代碼,避免殘留鎖定。