因查案需要研究了 IE 的快取暫存檔資料夾,做個筆記。

我印象中的 IE 快取資料夾名稱還停留在 Temporary Internet Files,但這已是 Windows 7 時代的事,Windows 8/10 起,位置已改到 C:\Users\username\AppData\Local\Microsoft\Windows\INetCache (%LOCALAPPDATA%\Microsoft\Windows\INetCache)。參考

記不住不要緊,從設定介面可以找到它:

從檔案總管檢視長這樣:

但這些檔案並非直接存在 %LOCALAPPDATA%\Microsoft\Windows\INetCache 目錄下,在 DOS 視窗下 DIR /A 可以看到 INetCache 目錄下並沒有檔案總管看到的那些暫存檔,其中的祕密在 desktop.ini:

.ShellClasInfo 有 UICLSID 指向 7BD29E00-76C1-11CF-9DD0-00A0C9034933,在 Registry 中它指向 Temporary Internet Files 類別,背後由 IE 核心元件 ieframe.dll 負責顯示邏輯。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{7BD29E00-76C1-11CF-9DD0-00A0C9034933}]
@="Temporary Internet Files"

[HKEY_CLASSES_ROOT\CLSID\{7BD29E00-76C1-11CF-9DD0-00A0C9034933}\DefaultIcon]
@="C:\\Windows\\System32\\ieframe.dll,-20780"

[HKEY_CLASSES_ROOT\CLSID\{7BD29E00-76C1-11CF-9DD0-00A0C9034933}\InProcServer32]
@="C:\\Windows\\System32\\ieframe.dll"
"ThreadingModel"="Apartment"

[HKEY_CLASSES_ROOT\CLSID\{7BD29E00-76C1-11CF-9DD0-00A0C9034933}\ShellFolder]
"Attributes"=dword:20000004

真正的檔案放在 %LOCALAPPDATA%\Microsoft\Windows\INetCache\Low\IE 多個隨機名稱資料夾(本例為 0TMWUQK1),數量也遠比檔案總管開啟 INetCache 所看到的多。

換言之,若你在檔案總管全選 INetCache 所有項目並刪除,並不會真的清光所有快取內容。正確方法是用 IE 管理介面點 1) 刪除,勾選清除 2) 「網際網路暫存檔與網站檔案」,按 3) 刪除。

不過要注意,最上方 4) 的「保留我的最愛網站資料」預設是勾選的,若網站有被收入我的最愛,其 Cookie 及暫存檔將不會被刪除。另外,我觀察到正在瀏覽網頁的暫存檔似乎也不會被刪除,因此有個省事做法是勾選 5) 「結束時刪除瀏覽歷程記錄」,關掉 IE 時一次清乾淨。

Introduce to the temporary Internet files storage of IE and how to clean them.


Comments

Be the first to post a comment

Post a comment