熱點推薦:
您现在的位置: 電腦知識網 >> 操作系統 >> Windows系統管理 >> 正文

explorer.exe應用程序錯誤

2013-11-11 21:36:50  來源: Windows系統管理 

  X該內存不能為read的解決方法

  出現這個現象有方面的一是硬件即內存方面有問題二是軟件這就有多方面的問題了

  先說說硬件

  一般來說電腦硬件是很不容易壞的內存出現問題的可能性並不大(除非你的內存真的是雜牌的一塌徒地)主要方面是內存條壞了(二手內存情況居多)使用了有質量問題的內存內存插在主板上的金手指部分灰塵太多使用不同品牌不同容量的內存從而出現不兼容的情況超頻帶來的散熱問題你可以使用MemTest 這個軟件來檢測一下內存它可以徹底的檢測出內存的穩定度

  如果都沒有那就從軟件方面排除故障了

  先說原理內存有個存放數據的地方叫緩沖區當程序把數據放在緩沖區需要操作系統提供的功能函數來申請如果內存分配成功函數就會將所新開辟的內存區地址返回給應用程序應用程序就可以通過這個地址使用這塊內存這就是動態內存分配內存地址也就是編程中的光標內存不是永遠都招之即來用之不盡的有時候內存分配也會失敗當分配失敗時系統函數會返回一個這時返回值已不表示新啟用的光標而是系統向應用程序發出的一個通知告知出現了錯誤作為應用程序在每一次申請內存後都應該檢查返回值是否為如果是則意味著出現了故障應該采取一些措施挽救這就增強了程序的健壯性若應用程序沒有檢查這個錯誤它就會按照思維慣性認為這個值是給它分配的可用光標繼續在之後的執行中使用這塊內存真正的地址內存區儲存的是計算機系統中最重要的中斷描述符表絕對不允許應用程序使用在沒有保護機制的操作系統下(如DOS)寫數據到這個地址會導致立即當機而在健壯的操作系統中如Windows等這個操作會馬上被系統的保護機制捕獲其結果就是由操作系統強行關閉出錯的應用程序以防止其錯誤擴大這時候就會出現上述的內存不能為read錯誤並指出被引用的內存地址為x內存分配失敗故障的原因很多內存不夠系統函數的版本不匹配等都可能有影響因此這種分配失敗多見於操作系統使用很長時間後安裝了多種應用程序(包括無意中安裝的病毒程序)更改了大量的系統參數和系統檔案之後

  在使用動態分配的應用程序中有時會有這樣的情況出現程序試圖讀寫一塊應該可用的內存但不知為什麼這個預料中可用的光標已經失效了有可能是忘記了向操作系統要求分配也可能是程序自己在某個時候已經注銷了這塊內存而沒有留意等等注銷了的內存被系統回收其訪問權已經不屬於該應用程序因此讀寫操作也同樣會觸發系統的保護機制企圖違法的程序唯一的下場就是被操作終止執行回收全部資源計算機世界的法律還是要比人類有效和嚴厲得多啊!像這樣的情況都屬於程序自身的BUG你往往可在特定的操作順序下重現錯誤無效光標不一定總是因此錯誤提示中的內存地址也不一定為x而是其它隨機數字

  首先建議

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

   更新操作系統讓操作系統的安裝程序重新拷貝正確版本的系統檔案修正系統參數有時候操作系統本身也會有BUG要注意安裝官方發行的升級程序

   盡量使用最新正式版本的應用程序Beta版試用版都會有BUG

   刪除然後重新創建 Winnt\System\Wbem\Repository 文件夾中的文件在桌面上右擊我的電腦然後單擊管理服務和應用程序單擊服務然後關閉並停止 Windows Management Instrumentation 服務 刪除 Winnt\System\Wbem\Repository 文件夾中的所有文件(在刪除前請創建這些文件的備份副本) 打開服務和應用程序單擊服務然後打開並啟動 Windows Management Instrumentation 服務當服務重新啟動時將基於以下注冊表項中所提供的信息重新創建這些文件 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\CIMOM\Autorecover MOFs

  下面搜集幾個例子給大家分析

  例一IE浏覽器出現xabaef指令引用的x 內存或者xdcff指令引用的x內存該內存不能為read要終止程序請單擊確定的信息框單擊確定又出現發生內部錯誤您正在使用的其中一個窗口即將關閉的信息框關閉該提示信息後IE浏覽器也被關閉解決方法

   開始運行窗口輸入regsvr actxprxydll回車接著會出現一個信息對話 框DllRegisterServer in actxprxydll succeeded確定再依次運行以下命令(這個方法有人說沒必要但重新注冊一下那些dll對系統也沒有壞處反正多方下手能解決問題就行

  regsvr shdocvwdll

  regsvr oleautdll

  regsvr actxprxydll

  regsvr mshtmldll

  regsvr msjavadll

  regsvr browseuidll

  regsvr urlmondll

   修復或升級IE浏覽器同時打上系統補丁看過其中一個修復方法是把系統還原到系統初始的狀態下建議將IE升級到了

  例二有些應用程序錯誤: xcd 指令參考的 xc 內存該內存不能為 read解決方法Win XP的預讀取技術這種最佳化技術也被用到了應用程序上系統對每一個應用程序的前幾次啟動情況進行分析然後新增一個描述套用需求的虛擬內存映像並把這些信息儲存到Windows\Prefetch文件夾一旦建立了映像應用軟件的裝入速度大大提高XP的預讀取數據儲存了最近次系統啟動或應用軟件啟動的信息建議將虛擬內存撤換刪除Windows\Prefetch目錄下所有*PF文件讓windows重新收集程序的物理地址

  例三在XP下雙擊光盤裡面的AutoRunexe文件顯示xfcc指令引用的x內存該內存不能為written要終止程序請單擊確定而在Windows 裡運行卻正常 解決方法這可能是系統的兼容性問題winXP的系統右鍵AutoRunexe文件屬性兼容性用兼容模式運行這個程序項選擇上並選擇Windows /Mewin如果打了SP的補丁後只要開始運行輸入regsvr c:\winnt\apppatch\slayeruidll右鍵屬性也會出現兼容性的選項

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

  例五我的豪傑超級解霸自從上網後就不能播放了每次都提示xf(每次變化)指令引用的xff內存不能為read終止程序請按確定 解決方法試試重裝豪傑超級解霸如果重裝後還會到官方網站下載相應版本的補丁試試還不行只好換就用別的播放器試試了

  例六雙擊一個游戲的快捷方式xfcd指令引用xffffffff內 存該內存不能為read 並且提示Clientdat程序錯誤解決方法重裝顯卡的最新驅動程序然後下載並且安裝DirectX

  例七一個朋友發信息過來我的電腦便出現了錯誤信息:xbf指令引用的x內存該內存不能為written然後QQ自動下線而再打開QQ發現了他發過來的十幾條的信息 解決方法這是對方利用QQ的BUG發送特殊的代碼做QQ出錯只要打上補丁或升級到最新版本就沒事了

  該內存不能為read或written的解決方案關鍵詞 該內存不能為read 該內存不能為written


From:http://tw.wingwit.com/Article/os/xtgl/201311/8811.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.