Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Windows XP系統教程 >> xp常見問答解答 >> 內存不能存為“Read”的7大原因

內存不能存為“Read”的7大原因

日期:2017/1/25 11:25:05      編輯:xp常見問答解答

 

1 微軟 IE 緩沖溢出漏洞引起

2 內存或虛擬內存地址使用抵觸造成   順序的運行需要分配一定的內存地址給程序使用,當順序結束時釋放留出空間讓給新的順序使用, win 多任務的系統   有時前程序未結束   又有新的任務開始   底要多少內存或虛擬內存來保證我同時運行的工作任務呢 ? 也許 win 這個問題上沒弄好,所以有此錯誤常常發生,一般運行大型軟件或多媒體後出現這種情況

3 劣質內存條也會出現這個問題

4 微軟 WINDOWS 系統的漏洞, window 把內存地址 0X00000000 0X0000ffff 指定為分配 null 指針的地址范圍 , 如果順序試圖訪問這一地址,則認為是錯誤。 c/c++ 編寫的順序通常不進行嚴格的錯誤檢查,當采用 malloc 來分配內存而可供分配的地址空間不夠的情況下返回 null 指針。但是代碼不檢查這種錯誤,認為地址分配已經勝利,於是就訪問 0X00000000 地址,於是就發生內存違規訪問,同時該進程被終止。

ASCII 字符填充組成的 pif 文件時會出現以下情況:   一個非法的 pif 文件(用 ascii 字符 'x' 填充)至少要 369 字節,系統才認為是一個合法的 pif 文件,才會以 pif 圖標 [pifmgr.dll,0] 顯示,才會在屬性裡有程序、   字體、內存、屏幕 ” 等內容。而且僅僅當一個非 pif 文件的大小是 369 字節時察看屬性的順序 ” 頁時,不會發生程序錯誤,哪怕是 370 字節也不行。當對一個大於 369 字節的非法 pif 文件觀察屬性的順序 ” 頁時, Explorer 會出錯,提示: '***' 指令引用的 '***' 內存。該內存不能為 'read'  問題出在 pif 文件的 16 進制地址:  0x00000181[0x87]0x00000182[0x01] 和  0x00000231[0xC3]0x00000232[0x02]  即使是一個合法 pif 文件,只要改動這四處的任意一處,也會引起程序錯誤。而只   要把 0x00000181 和 0x00000182 值改為 [0xFF][0xFF] 那麼其它地址任意更改   都不會引起錯誤。  

5 可能沒有完全正確裝置 apach 服務,且啟動了原故 ;  把服務中的  OracleOraHomeXXHTTPServ 改成停止

6 應用順序沒有檢查內存分配失敗

7 應用順序由於自身 BUG 引用了不正常的內存指針

像這樣的情況都屬於程序自身的 BUG 往往可在特定的操作順序下重現錯誤。無效指針不一定總是 0 因此錯誤提示中的內存地址也不一定為 “ 0x00000000 而是其他隨機數字。

如果系統經常有所提到錯誤提示,下面的建議可能會有幫助:

1. 檢查系統中是否有木馬或病毒。這類程序為了控制系統往往不負責任地修改系統,從而導致操作系統異常。平常應加強信息安全意識,對來源不明的可執行程序絕不好奇。

2. 更新操作系統,讓操作系統的裝置順序重新拷貝正確版本的系統文件、修正系統參數。有時候操作系統自身也會有 BUG 要注意安裝官方發行的升級順序。

3. 試用新版本的應用順序。  

    4 刪除然後重新創立  Winnt\System32\Wbem\Repository  文件夾中的文件:   桌面上右擊我電腦,然後單擊管理。  

" 服務和應用程序 " 下,單擊服務,然後關閉並停止  Windows Management Instrumentation  服務。  

刪除  Winnt\System32\Wbem\Repository  文件夾中的所有文件。刪除前請創建這些文件的備份副本。  

打開 " 服務和應用程序 " 單擊服務,然後打開並啟動  Windows Management Instrumentation  服務。當服務重新啟動時,將基於以下注冊表項中所提供的信息重新創建這些文件:  HKEY_LOCA L_MA CHINE\SOFTWA RE\Microsoft\WBEM\CIMOM\A utorecover MOFs 

     16:33:19

下面我從幾個例子給大家分析:  

例一:打開 IE 浏覽器或者沒過幾分鐘就會出現 "0x70dcf39f" 指令引用的 "0x00000000" 內存。該內存不能為 “ read 要終止程序,請單擊 “ 確定 ” 信息框,單擊 “ 確定 ” 後,又出現 “ 發生內部錯誤,您正在使用的其中一個窗口即將關閉 ” 信息框,關閉該提示信息後, IE 浏覽器也被關閉。  

解決方法:修復或升級 IE 浏覽器,同時打上補丁。看過其中一個修復方法是 Win2000 自升級,也就是 Win2000 升級到 Win2000 其實這種方法也就是把系統還原到系統初始的狀態下。比方你 IE 升級到 6.0 自升級後,會被 IE5.0 代替。

例二: windows xp 下雙擊光盤裡面的 AutoRun.ex 文件,顯示 “ 0x77f745cc 指令引用的 0x00000078 內存。該內存不能為 “ written 要終止程序,請單擊 “ 確定 ” 而在 Windows 98 裡運行卻正常。

  解決方法:這可能是系統的兼容性問題, winXP 系統,右鍵 “ AutoRun.ex 文件,屬性,兼容性,把 “ 用兼容模式運行這個程序 ” 項選擇上,並選擇 “ Windows 98/M win2000 如果打了 SP 補丁後,只要開始,運行,輸入: regsvr32 c:\winnt\apppatch\slayerui.dl 右鍵,屬性,也會出現兼容性的選項。  

例三: RealOne Gold 關閉時出現錯誤,以前一直使用正常,最近卻在每次關閉時出現 “ 0xffffffff 指令引用的 0xffffffff 內存。該內存不能為 “ read   提示。   解決方法:當使用的輸入法為微軟拼音輸入法 2003 並且隱藏語言欄時(不隱藏時沒問題)關閉 RealOn 就會出現這個問題,因此在關閉 RealOn 之前可以顯示語言欄或者將任意其他輸入法作為當前輸入法來解決這個問題。  

例四:豪傑超級解霸自從上網後就不能播放了每次都提示 “ 0x060692f6 每次變化)指令引用的 0xff000011 內存不能為 “ read 終止順序請按確定。  

解決方法:試試重裝豪傑超級解霸 , 如果重裝後還會,官方網站下載相應版本的補丁試試。還不行,只好換就用別的播放器試試了  

例五:雙擊一個游戲的快捷方式, 0x77f5cd0 指令引用 “ 0xffffffff 內   存,該內存不能為 “ read   並且提示 Client.dat 順序錯誤。   解決方法:重裝顯卡的最新驅動順序,然後下載並且裝置 DirectX9.0   例六:一個朋友發信息過來,電腦便出現了錯誤信息 : 0x772b548f 指令引用的 0x00303033 內存,該內存不能為 “ written , 然後 QQ 自動下線

 

Copyright © Windows教程網 All Rights Reserved