我原本以為這是個簡單的任務,但是卻怎樣都無法清除乾淨,只好動用 Process Monitor 工具分析,雖然最後還是有一關無法理解(要靠大家來找了),但是最後我還是找到方法清除所有歷史紀錄了。
大部分的歷史紀錄都記錄在系統機碼(Registry)中,上網查詢後最常見的就是以下這個機碼了,只要是透過 [開始] / [執行] 所執行的程式都會出現在此:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU
但是似乎無法完全清除乾淨,當你在 [開始] / [執行] 的視窗輸入關鍵字時還是會出現一堆之前輸入過的路徑名稱,尤其是輸入 c 或 d 開頭時,這時用 Process Monitor 工具分析出另一個路徑:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths
但還是無法完全清除乾淨,當你在 [開始] / [執行] 的視窗輸入關鍵字時還是會出現一堆之前輸入過的網址,尤其是輸入 http 開頭 或 部分網域名稱 時,這時用 Process Monitor 工具又分析出另一個路徑:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\TypedURLs
若有資料會出現如下圖示,若刪除 url1 之後,輸入 mi 就不會再出現網址提示。
最後,也是最奇怪的一個歷史紀錄就是所有「透過檔案總管開啟的檔案」也都會在 [開始] / [執行] 中出現,我研究了好久還是無法得知該些資訊到底儲存在哪裡,最後發現原來跟 Internet Explorer 儲存在一起,只要將 IE 瀏覽器的瀏覽記錄給清空就可以連帶清空 [開始] / [執行] 裡的歷史紀錄提示清單中!
除此之外你也可以透過指令快速清除 IE 瀏覽記錄:
RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 1
雖然可以清除這些資料,但我還是覺得很納悶為什麼 [開始] / [執行] 裡的歷史紀錄要跟 IE 瀏覽器綁在一起?所有透過檔案總管開啟檔案的歷史紀錄為何要寫入在 IE 瀏覽器的歷史紀錄中?要如何才能只清除「透過檔案總管開啟檔案的歷史紀錄」而不要清除「瀏覽器輸入網址的歷史紀錄」呢?
相關連結