2008/06/12

AVI 影片檔導致檔案總管 crash

  這問題困擾我很久了,但是原本只發生在公司的電腦。每當我用檔案總管開啟某個含有一堆 .avi 檔案的資料夾,什麼都不做,靜候約數秒鐘之後就會出現「explorer.exe…該記憶體不能為 "written"…」的錯誤訊息,然後檔案總管與開始工作列一起掛掉。本來我以為是當中某個 .avi 檔案造成的,而這個狀況只會發生在我用「詳細資料」檢視,或者有開啟狀態列的時候,所以只要在看影片之前改一下選項,撐過去也就算了。直到前天為了將影片轉檔而更新部份 codec,同樣的問題也開始發生在家裡的電腦,這下子就無法忍受了。

  到網路上搜尋,很快就發現一堆人遇過同樣的情形(…)。根本的解法是把有問題的 codec 處理掉,不過 K-Lite 跟其他影音剪輯軟體裝進電腦裡的檔案盤根錯結,要整理談何容易。所以用偷懶的解法,直接把檔案總管相關的預覽功能全部關掉最快。底下是步驟摘要:

一、下載 ShellExView,把「Avi Property Handler」disable 掉。
二、用登錄編輯程式打開「HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\」,如果底下有包含「DivX」的 key,把它刪掉。
三、打開「HKEY_CLASSES_ROOT\SystemFileAssociations\.avi\shellex\」,如果底下有一個「PropertyHandler」,把它內容清空。
四、重新開機。

  這樣修改之後,前述的問題就不會再發生了,同時檔案總管在詳細資料模式下也不會再去讀每個檔案的「時間長度」跟「維度」兩個垃圾資訊,一舉兩得。

2 則留言:

TT 提到...

我怎有聞到 0day 味道的感覺 噗

Sorry 提到...

這就是做 security 的人的直覺嗎?:o