怎么解决应用程序错误、该内存不能为read
使用Windows操作系统的人有时会遇到这样的错误信息:[0X????????指令引用的0x00000000内存.该内存不能为read或written".然后应用程序被关闭.如果去请教一些[高手".得到的回答往往是[Windows就是这样不稳定"之类的义愤和不屑.其实.这个错误并不一定是Windows不稳定造成的.本文就来简单分析这种错误的常见原因.
一.应用程序没有检查内存分配失败
程序需要一块内存用以保存数据时.就需要调用操作系统提供的[功能函数"来申请.如果内存分配成功.函数就会将所新开辟的内存区地址返回给应用程序.应用程序就可以通过这个地址使用这块内存.这就是[动态内存分配".内存地址也就是编程中的[指针".
内存不是永远都招之即来.用之不尽的.有时候内存分配也会失败.当分配失败时系统函数会返回一个0值.这时返回值[0"已不表示新启用的指针.而是系统向应用程序发出的一个通知.告知出现了错误.作为应用程序.在每一次申请内存后都应该检查返回值是否为0.如果是.则意味着出现了故障.应该采取一些措施挽救.这就增强了程序的[健壮性".
若应用程序没有检查这个错误.它就会按照[思维惯性"认为这个值是给它分配的可用指针.继续在之后的运行中使用这块内存.真正的0地址内存区保存的是计算机系统中最重要的[中断描述符表".绝对不允许应用程序使用.在没有保护机制的操作系统下(如DOS).写数据到这个地址会导致立即死机.而在健壮的操作系统中.如Windows等.这个操作会马上被系统的保护机制捕获.其结果就是由操作系统强行关闭出错的应用程序.以防止其错误扩大.这时候.就会出现上述的[写内存"错误.并指出被引用的内存地址为[0x00000000".
内存分配失败故障的原因很多.内存不够.系统函数的版本不匹配等都可能有影响.因此.这种分配失败多见于操作系统使用很长时间后.安装了多种应用程序(包括无意中[安装"的病毒程序).更改了大量的系统参数和系统文件之后.
二.应用程序由于自身BUG引用了不正常的内存指针
在使用动态分配的应用程序中.有时会有这样的情况出现:程序试图读写一块[应该可用"的内存.但不知为什么.这个预料中可用的指针已经失效了.有可能是[忘记了"向操作系统要求分配.也可能是程序自己在某个时候已经注销了这块内存而[没有留意"等等.注销了的内存被系统回收.其访问权已经不属于该应用程序.因此读写操作也同样会触发系统的保护机制.企图[违法"的程序唯一的下场就是被操作终止运行.回收全部资源.计算机世界的法律还是要比人类有效和严厉得多啊!
像这样的情况都属于程序自身的BUG.你往往可在特定的操作顺序下重现错误.无效指针不一定总是0.因此错误提示中的内存地址也不一定为[0x00000000".而是其他随机数字.
如果系统经常有所提到的错误提示.下面的建议可能会有帮助:
1.查看系统中是否有木马或病毒.这类程序为了控制系统往往不负责任地修改系统.从而导致操作系统异常.平常应加强信息安全意识.对来源不明的可执行程序绝不好奇.
2.更新操作系统.让操作系统的安装程序重新拷贝正确版本的系统文件.修正系统参数.有时候操作系统本身也会有BUG.要注意安装官方发行的升级程序.
3.试用新版本的应用程序.
这是程序错误引起的.你可以更改一下程序设置或者重新安装程序.
相信大家都应该见到过.甚至说一些网友因为不爽于这个经常出现的错误提示而屡次重装系统.相信象我们这些普通用户应该不会理解那些复杂的十六进制代码.那些只是供微软亚洲研究院的研究人员研究的(开个玩笑先).
三.软件还是硬件
运行某些程序的时候.有时会出现内存错误的提示.然后该程序就关闭.
[0x????????"指令引用的[0x????????"内存.该内存不能为[read".
[0x????????"指令引用的[0x????????"内存.该内存不能为[written".
不知你出现过类似这样的故障吗?(0x后面内容有可能不一样.)
大家仔细观察0x后面的内容.是不是每个人的错误代码都是不一样的呢?但他们的问题可能是同一个的.出现这个错误提示是有两方面的原因的.第一是硬件.即内存有问题.第二是软件.软件方面的问题就多了去了.
1.先说说硬件:
一般来说.电脑硬件是很不容易坏的.内存出现问题的可能性并不大(除非你的内存真的是杂牌的一塌徒地).主要方面是:1.内存条坏了(二手内存情况居多).2.使用了有质量问题的内存.3.内存插在主板上的金手指部分灰尘太多.4.使用不同品牌不同容量的内存.从而出现不兼容的情况.5.超频带来的散热问题. 你可以使用MemTest这个软件来检测一下内存.它可以彻底的检测出内存的稳定度.
假如你是双内存.而且是不同品牌的内存条混插或者买了二手内存时.出现这个问题.这时.你就要检查是不是内存出问题了或者和其它硬件不兼容.
2.如果所说的情况都没有.那末就要从软件方面解决问题了.
先简单说说原理:内存有个存放数据的地方叫缓冲区.当程序把数据放在其一位置时.因为没有足够空间.就会发生溢出现象.举个例子:一个桶子只能将一斤的水.当你放入两斤的水进入时.就会溢出来.而系统则是在屏幕上表现出来.这个问题.经常出现在windows2000和XP系统上.Windows2000/XP对硬件的要求是很苛刻的.一旦遇到资源死锁.溢出或者类似Windows98里的非法操作.系统为保持稳定.就会出现上述情况.另外也可能是硬件设备之间的兼容性不好造成的.
同时由于系统在运行时要对一段内存进行保护.其他的用户程序无法访问内存.当用户程序非法读取这些内存空间时.也会出现这样的错误.
四.几个例子:
(1)问:"0x0a8ba9ef"指令引用的"0x03713644"内存.该内存不能为"read".要终止程序.请单击"确定".
答:IE有错误.需要重置IE:
1在"开始"菜单中打开"运行"窗口.在其中输入"regsvr32actxprxy.dll".然后"确定".接着会出现一个信息对话框"DllRegisterServerinactxprxy.dllsucceeded".再次点击"确定".
2再次打开"运行"窗口.输入"regsvr32shdocvw.dll
3再次打开"运行"窗口.输入"regsvr32oleaut32.dll
4再次打开"运行"窗口.输入"regsvr32actxprxy.dll
5再次打开"运行"窗口.输入"regsvr32mshtml.dll
6再次打开"运行"窗口.输入"regsvr32msjava.dll
7再次打开"运行"窗口.输入"regsvr32browseui.dll
8再次打开"运行"窗口.输入"regsvr32urlmon.dll
(2)问"0x70dcf39f"指令引用的"0x00000000"内存.该内存不能为[read".要终止程序.请单击[确定".
答:关闭该提示信息后.IE浏览器也被关闭.解决方法:修复或升级IE浏览器.同时打上系统补丁.确定你的IE升级到了6.0.
(3)问:RealOneGold关闭时出现错误.以前一直使用正常.最近却在每次关闭时出现[0xffffffff"指令引用的[0xffffffff"内存.该内存不能为[read"的提示.
答:当使用的输入法为微软拼音输入法2003.并且隐藏语言栏时(不隐藏时没问题)关闭RealOne就会出现这个问题.因此在关闭RealOne之前可以显示语言栏或者将任意其他输入法作为当前输入法来解决这个问题.
(4)问:[Ox77f5cdO"指令引用[Oxffffffff"内存.该内存不能为[read".要终止程序.请单击[确定".
答:双击一个游戏的快捷方式..并且提示Client.dat程序错误.解决方法:重装显卡的最新驱动程序.然后下载并且安装DirectX9.0.
(5)问:[0x772b548f"指令引用的[0x00303033"内存.该内存不能为[written".要终止程序.请单击[确定".
答:QQ自动下线.当再打开QQ时.发现了发过来的十几条的信息.解决方法:这是对方利用QQ的BUG.发送特殊的代码.做QQ出错.只要打上补丁或升级到最新版本.就可以了.
(6)问:打开IE浏览器或者没过几分钟就会出现"0x70dcf39f"指令引用的"0x00000000"内存.该内存不能为[read".要终止程序.请单击[确定"的信息框.单击[确定"后.又出现[发生内部错误.您正在使用的其中一个窗口即将关闭"的信息框.关闭该提示信息后.IE浏览器也被关闭.
答:修复或升级IE浏览器.同时打上补丁.看过其中一个修复方法是.Win2000自升级.也就是Win2000升级到Win2000.其实这种方法也就是把系统还原到系统初始的状态下.比如你的IE升级到了6.0.自升级后.会被IE5.0代替.
(7)问:在windowsxp下双击光盘里面的[AutoRun.exe"文件.显示[0x77f745cc"指令引用的[0x00000078"内存.该内存不能为[written".要终止程序.请单击[确定".而在Windows98里运行却正常.
答:这可能是系统的兼容性问题.winXP的系统.右键[AutoRun.exe"文件.属性.兼容性.把[用兼容模式运行这个程序"项选择上.并选择[Windows98/Me".win2000如果打了SP的补丁后.只要开始.运行.输入:regsvr32c:winntapppatchslayerui.dll.右键.属性.也会出现兼容性的选项.
(8)问:我的豪杰超级解霸自从上网后就不能播放了.每次都提示[0x060692f6"(每次变化)指令引用的[0xff000011"内存不能为[read".终止程序请按确定.
这个有软件可以解决的 http://www.5gengxin.cn/thread-38789-1-1.html,谢谢你的问题
着是系统问题 只有重装系统
重装系统··还有就是内存可能出问题了··
电脑提示应用程序出错怎么办呢?
1. 重新启动应用程序:首先,尝试关闭应用程序并重新打开它。有时候,简单的重新启动可以解决临时的软件问题。2. 更新应用程序:确保您正在使用最新版本的应用程序。有时,旧版本的应用程序可能会出现兼容性问题或已知的错误。请前往应用程序的官方网站或应用商店,检查是否有可用的更新版本,并按照指示进行更...
请问大神打开计算机软件提示应用程序错误该怎么处理?
一、重新打开软件 有时,应用程序错误可能只是暂时的,尝试关闭软件然后重新打开可能可以解决问题。二、检查软件更新 确保你的计算机软件是最新版本。开发者会定期发布更新,以解决可能存在的错误和问题。进入软件的设置或关于部分,检查是否有可用的更新并安装。三、运行软件兼容性检查 某些软件可能与你使用的...
如何解决服务器错误应用程序错误?
1. 检查网络连接:确认你的电脑已经连接到互联网并且网络正常工作。确保你的网络连接稳定,并且没有任何网络故障或中断。2. 重新启动应用程序:尝试关闭应用程序,然后重新打开它。有时,服务器错误可能是暂时性的,重新启动应用程序可以尝试重新建立连接并修复问题。3. 清除缓存和Cookie:清除应用程序的缓存...
手机应用程序错误怎么解决
1、若手机提示应用程序错误,可能是手机下载的第三方软件或者内部应用程序出现错误;建议:重置应用程序偏好。2、若是运行第三方软件时出现此提示,建议:进入应用程序管理器中清除数据。注:应用程序的全部数据将被永久性删除。若无效,请卸载该软件后重新安装或下载安装此软件其他版本尝试。3、如果运行内置...
电脑总显示应用程序错误是什么原因?
解决方法:1、重新换个软件。2、更换内存条。3、看看最近下的软件,卸载了试试。4、给软件打上补丁或者试试系统的兼容模式。5、重装驱动。如果是新系统,要先安装主板驱动。6、下载个“系统急救箱”,全盘杀毒试试。先“全盘查杀”,查杀完毕,删除“可疑自启动项”和木马,再重启电脑!然后点开“...
打开游戏的时候,总出现应用程序错误是怎么回事?
当您在运行游戏或应用程序时遇到“应用程序错误”提示,表明您的系统可能遇到了一些常见的问题。以下是对可能原因的分析和相应的解决措施:1. **内存分配失败**:应用程序在请求内存时可能没有正确检查分配结果。解决方法是应用程序应该在每次申请内存后检查返回值,确保内存分配成功。如果问题频繁出现,可能...
应用程序发生异常未知的软件异常怎么办
如错误代码、异常发生的具体情境等,以便技术支持团队更好地了解问题并提供解决方案。综上所述,当应用程序发生未知的软件异常时,可以通过更新软件、检查系统兼容性、运行故障排查工具以及联系技术支持等方法来解决问题。在实际操作中,可以根据具体情况选择合适的解决方法,并灵活调整策略以达到最佳效果。
win10桌面提示应用程序错误怎么解决
调出注册表;7、进入注册表,定位到路径:HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerShellExecuteHooks将其它键值删除即可。以上就是系统提示explorer.exe应用程序错误的具体解决方法,按照以上方法进行操作,相信再次开机的时候就不会再出现explorer.exe应用程序错误的提示了。
电脑经常应用程序错误是什么情况啊?
1. 病毒感染:电脑可能会受到病毒、木马等恶意软件的攻击,导致应用程序错误和黑屏。建议您安装杀毒软件对电脑进行全面扫描,并删除恶意软件。2. 驱动程序问题:电脑的驱动程序可能过期或者损坏,导致应用程序错误和黑屏。您可以尝试更新电脑的驱动程序,特别是显卡驱动程序。3. 软件冲突:安装了两个或多个...
什么是Win32应用程序错误?怎么修复?
确保应用程序完整且未损坏:如果应用程序文件在下载或复制过程中出现错误,可能导致文件损坏。在这种情况下,运行这个损坏的应用程序可能会触发“不是有效的 Win32 应用程序”错误。解决方法是重新下载或复制应用程序文件,确保完整性。更新操作系统和软件:确保您的操作系统和相关软件处于最新状态。有时,旧...
旁例乌灵: 系统出现内存不能为"Read"或"written"的原因有: 1、驱动不稳定,与系统不兼容,这最容易出现内存不能为 Read 或者文件保护 2、系统安装了一个或者多个流氓软件,这出现 IE 或者系统崩溃的机会也比较大,也有可能出现文件保护3、...
玉州区13886174895: "应用程序错误,该内存不能为read" 怎么解决啊? - ?
旁例乌灵: 你好!电脑出现:【该内存不能为read与written】,原因是比较复杂的,请对症下药!【答案原创,引用请说明,原作者:力王历史】!偶然出现!点:【确定或取消】,即可!1.配置错误!【重启,出完电脑品牌后,按F8,安全模式,最后...
玉州区13886174895: 电脑应用程序错误 该内存不能为read 一开机就弹出来 怎么解决 - ?
旁例乌灵: 内存不能为“read”或“written”的解决方案 开始-运行输入“cmd” 回车在命令提示符下粘贴以下命令: 或者点击开始----程序----附件中点击打开命令提示符 for %i in (%windir%system32*.dll) do regsvr32.exe /s %i 回车,等待运行完毕后再执行下面的命令. for %i in (%windir%system32*.ocx) do regsvr32.exe /s %i 回车 重启计算机就可以了
玉州区13886174895: 应用程序错误内存不能为read该怎么解决?(附有图片) - ?
旁例乌灵: 这个问题的出现比较普遍,主要有几个方面:▉如果使用盗版系统,有可能会出现这样的问题,建议:使用正版.★★★★☆如果对电脑没有影响或偶尔出现不用管它,重启电脑会自动消失.【1】病毒引起的,对电脑全盘杀毒.【升级病毒库,下载最新...
玉州区13886174895: 电脑应用程序错误,电脑内存不能为read - ?
旁例乌灵: 问题原因 一、应用程序没有检查内存分配失败 程序需要一块内存用以保存数据时,就需要调用操作系统提供的“功能函数”来申请,如果内存分配成功,函数就会将所新开辟的内存区地址返回给应用程序,应用程序就可以通过这个地址使用这...
玉州区13886174895: 应用程序出现错误,该内存不能为“written”一直出现该怎么解决~ - ?
旁例乌灵: 这个好像是一个监控软件 的文件,可能是被损坏,也可能是存放该文件的硬盘分区有错误导致. 建议你将该软件或程序卸载即可关闭该窗口的不断提示.如果真是一软件杀毒软件,请卸载后重新 安装该杀毒软件到其它位置,或安装一款其它专业杀毒软件. 同时建议你检查该磁盘分区的文件 碎片和 磁盘错误,有的话修复好重启即可正常.
玉州区13886174895: 应用程序错误、显示该内存不能为 written 要怎么解决? - ?
旁例乌灵: 所中的病毒木马不同,应用程序出现错误的提示也不尽相同.一般的情况是原来能正常运行的软件突然一打开就报告“应用程序错误,需要关闭”,“应用程序错误,**内存地址不能read”,“应用程序错误,位于地址****”等等 造成应用程序错误 ...
玉州区13886174895: 应用程序错误,该内存不能为 read 怎么解决,直接讲重点,怎么去解决,废话免答.?
旁例乌灵: 电脑出现:内存不能为read,原因总结起来,有以下方面,偶尔出现,点:取消,即可!1.电脑中了木马或者有病毒在干扰!试试:杀毒软件,360安全卫士+360杀毒双引擎版,或者金山卫士+金山毒霸,建议:使用“木马云查杀”和“360杀毒...
玉州区13886174895: 电脑经常弹出"应用程序错误,该内存不能为read如何处理? - ?
旁例乌灵: 1.病毒木马造成的,在当今互联网时代,病毒坐着为了获得更多的牟利,常用病毒绑架应用程序和系统文件,然后某些安全杀毒软件把被病毒木马感染的应用程序和系统文件当病毒杀了导致出现应用程序错误. 2.应用程序组件丢失,应用程序...
玉州区13886174895: 电脑经常弹出"应用程序错误,该内存不能为read"该怎么办??
旁例乌灵: 出现:内存不能为read,这种情况是你下载的“软件”与电脑内存有“冲突”! 1..电脑中了木马或者有病毒在干扰! 试试:杀毒软件,360安全卫士+360杀毒 2.浏览器出问题,建议换别的试试,可以尝试用360安全浏览器,或是遨游等等.都不错,特别是360浏览器很好用,速度快,安全性高. 3.还可能有恶意插件或是流氓软件,尝试用360安全卫士查杀,并修复IE. 4.安装的一些软件版本过低,升级更新到最新版.或是安装了两款以上相同类的软件,卸载一款即可