首先,硬件方面
壹般來說,電腦硬件不容易壞。內存問題不太可能(除非妳的內存真的是壹堆雜牌)。主要方面有:1。內存條壞了(大多是二手內存)。2.使用有質量問題的內存。3.插在主板上的內存金手指部分灰塵太多。4.使用不同品牌和容量的存儲器。
第二,如果沒有,則排除軟件故障。
先說原理:內存中有壹個用來存儲數據的地方叫做buffer。當壹個程序將數據放入緩沖區時,它需要操作系統提供的壹個“功能函數”來應用。如果內存分配成功,函數會將新打開的內存區域的地址返回給應用程序,應用程序可以通過這個地址使用這個內存。這就是“動態內存分配”,內存地址也是編程中的“光標”。記憶並不總是可以隨意獲得的。有時內存分配會失敗。當分配失敗時,系統函數將返回值0。此時返回值“0”並不是指新啟用的光標,而是系統發送給應用程序的通知,告知出現了錯誤。作為應用程序,它應該在每次內存應用後檢查返回值是否為0。如果是,說明出了問題,要采取壹些措施來挽救。這增強了程序的“健壯性”。如果應用程序不檢查這個錯誤,它會認為這個值是根據“思維慣性”分配給它的可用遊標,並在隨後的執行中繼續使用這個內存。真正的0地址存儲區存儲的是計算機系統中最重要的“中斷描述符表”,是絕對不允許應用程序使用的。在沒有保護機制的操作系統下(比如DOS),向這個地址寫數據會導致機器立即崩潰,但是在健壯的操作系統下,比如Windows,這個操作會立即被系統的保護機制捕獲,結果就是操作系統會強制關閉錯誤的應用程序,防止其錯誤擴大。這時,會出現上述內存無法“讀取”的錯誤。指出引用的內存地址為“0x00000000”。內存分配失敗的原因有很多,比如內存不足,系統函數版本不匹配等。所以這種分配失敗在操作系統使用時間長了之後,在無意中安裝了多種應用程序(包括病毒程序),大量更改了系統參數和系統文件之後,比較常見。
在壹個使用動態分配的應用程序中,有時會發生程序試圖讀寫壹個“應該可用的內存”,但由於某種原因,原本應該可用的遊標出現了故障。可能是程序“忘記”向操作系統請求分配,也可能是程序本身在某個時候取消了這個內存,“沒註意”等等。被取消的內存已被系統回收,其訪問權不再屬於應用程序。所以讀寫操作也會觸發系統的保護機制。試圖“違法”的程序,唯壹的最終結果就是被操作終止,所有資源被收回。計算機世界的法律還是比人類有效和嚴厲得多!像這樣的情況屬於程序本身的BUG,妳經常可以在壹個特定的操作序列中重現錯誤。無效光標不壹定是0,所以錯誤提示中的內存地址不壹定是“0x00000000”,也可以是其他隨機數。
建議:
1.檢查系統中是否有木馬或病毒。這類程序往往為了控制系統而不負責任地修改系統,導致操作系統異常。平時要加強信息安全意識,千萬不要對來源不明的可執行程序感到好奇。
2.更新操作系統,使操作系統的安裝程序能夠復制正確版本的系統文件並修正系統參數。有時候操作系統本身會有bug,要註意安裝官方升級程序。
3、盡量使用最新的正式版應用,Beta,試用版會有bug。
4.刪除並重新創建Winnt\System32\Wbem\Repository文件夾中的文件:右鍵單擊桌面上的“我的電腦”,然後單擊“管理”。在“服務和應用程序”下,單擊“服務”,然後關閉並停止Windows Management Instrumentation服務。刪除System32\Wbem\Repository文件夾中的Winnt\ All文件。(請在刪除之前創建這些文件的備份副本。)打開服務和應用程序,單擊服務,然後打開並啟動Windows Management Instrumentation服務。當該服務重新啟動時,將根據以下註冊表項中提供的信息重新創建這些文件:HKEY _本地_機器\軟件\ Microsoft \ WBEM \ CIMOM \ autorecovermofs。