使用Windows操作系統的人有時會遇到這樣的錯誤訊息:
「“0X????????”指令引用的“0x00000000”記憶體,該記憶體不能為“read”或“written”」,然應用程式被關閉。
簡單分析這種錯誤的一般原因。
一、應用程式曾有檢查記憶體分配失敗
二、應用程式由於自身BUG引用了不正常的記憶體
【原因 解決方法】
1 記憶體壞了 更換記憶體
2 雙記憶體不相容 使用同品牌的記憶體或只要一條記憶體
3 記憶體容量問題 更換記憶體
4 散熱問題 加裝機殼內部的散熱
5 記憶體和主機板插好或其他硬體不相容 重插記憶體或換個插槽
6 硬體有問題 更換硬諜
7 驅動問題 重裝驅動,如果是新系統,應先安裝主機板驅動
8 軟體損壞 重裝軟體
9 軟體有BUG 下載更新或更新到最新版本
10 軟體和系統不相容 軟體下載更新或是試試系統的相容模式
11 軟體和軟體之先有衝突 如果最近安裝了什麼新軟體,反安裝了試試
12 軟體要使用其他相關的軟體有問題 重裝相關軟體,比如播放某一格式的文件時出錯,可能是這個文件的解碼器有問題
13 病毒問題 掃毒
14 防毒軟體與系統或軟體相衝突 由於防毒軟體是進入常駐監控系統的,可能與一些軟體相衝突,反安裝試試
15 系統本身有問題 有時候操作系統本身也會有BUG,要注意安裝官方發行的更新程式,象SP2的更新,最好更新.如果還不行,重裝系統,或更換其他版本的系統。
〔又可能是微軟NET.Framework〕
在控制台的新增/移除程式中看看你是否安裝了微軟NET.Framework,如果已經安裝了,可以考慮反安裝它,當然如果你以後在其它程式需要NET.Framework時候,可以再重新安裝。 微軟NET.Framework升級到1.1版應該沒問題了。
〔還有一種解決辦法〕
重新注冊所有的dll:
開始 → 執行 → 輸入cmd → 按「確定」→ 出現DOS窗口 → 在命令提示符下輸入下面指令:
for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1
如果怕輸入錯誤的話,可以複製這條指令,然後在命令提示最後面,按右建"貼上"。就會開始跑一串流程了。 需要一至二分鐘的時間注冊,請耐心完成。直到你的指示燈不閃了。完成之後重開機。