2007/06/08

應用程式發生記憶體不能為 READ 的錯誤

(1)由於 Windows XP有「預讀取」技術,這種最佳化技術被應用到了應用軟體上,系統對每一個應用軟體的前幾次啟動情況進行分析,然後新增一個描述套用需求的虛擬「記憶體映像」,並把這些信息儲存到 \WINDOWS\PREFETCH 資料夾。
一旦建立了映像,應用軟體的載入速度大大提高。
但若一但 Windows 的記憶體分配與預讀取技術所儲存的物理位址內容發生衝突,就會發生記憶體不能為 READ 的錯誤。此時請將 \WINDOWS\PREFETCH\ 目錄下所有 .PF 檔刪除即可解決此一問題。再重新啟動應用程式即可。
註:.PF 檔為 Windows XP 預讀取技術所儲存的應用程式物理位址檔案。
(2)若使用第一種方法後仍會重覆發生,則請重新註冊所有的 DLL 檔
執行前先關掉所有程式,執行時間約1~5分鐘,執行完畢要重開機開始>>執行>. 輸入cmd>> 按「確定」,出現DOS窗口,在命令提示符下輸入
for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1
如果怕輸入錯誤的話,可以複製這條指令,然後在命令提示框點擊左上角的c:\,貼上便不會輸入錯誤。
在飛速滾屏完全靜止,先別著急啟動其他程式,先耐心等一會兒,因為此時dll們還在找位置。

0 Comments:

張貼留言

<< Home