“0x1015ca01”指令引用的“0x00000000”内存。该内存不能为“read”

来源:百度知道 编辑:UC知道 时间:2024/06/21 20:05:55
“XXXXXXXXX”指令引用的“0x00000000”内存。该内存不能为“read”什么意思

开始-运行, 输入“cmd ”回车在命令提示符下输入:

for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1

如果你怕输入错误的话,可以复制这条命令,然后在命令提示框上点击左上角的c:,右键粘贴就不容易输错了。再回车,先等待1-2分钟,在飞速滚屏完全静止之后,等硬盘灯不亮了,重启就可以了。

也可能是某个新安装的软件有问题,或补丁没有打好,找到它卸载掉再重装一下。如果再不行就可能是内存不兼容或内在质量有问题,换个内存试一下。或者你加内存条了,你重装系统就可解决,建议你用安装版的系统盘,不要用GHOST,因为GHOST版没有安装版的稳定,而且GHOST版本的系统容易出现这种问题,这是我经历这种问题后总结出来的经验,呵呵!

Windows系统出现内存错误

使用Windows操作系统的人有时会遇到这样的错误信息:“0X????????指令引用的0x00000000内存,该内存不能written”,然后应用程序被关闭。如果去请教一些“高手”,得到的回答往往是“Windows就是这样不稳定”之类的义愤和不屑。其实,这个错误并不一定是Windows不稳定造成的。本文就来简单分析这种错误的常见原因。

一、应用程序没有检查内存分配失败

程序需要一块内存用以保存数据时,就需要调用操作系统提供的“功能函数”来申请,如果内存分配成功,函数就会将所新开辟的内存区地址返回给应用程序,应用程序就可以通过这个地址使用这块内存。这就是“动态内存分配”,内存地址也就是编程中的“指针”。

内存不是永远都招之即来、用之不尽的,有时候内存分配也会失败。当分配失败时系统函数会返回一个0值,这时返回值“0”已不表示新启用的指针,而是系统向应用程序发出的一个通知,告知出现了错误。作为应用程序,在每一次申请内存后都应该检查返回值是否为0,如果是,则意味着出现了故障,应该采取一些措施挽救,这就增强了程序的“健壮性”。

若应用程序没有检查这个错误,它就会按照“思维惯性”认为这个值是给它分配的可用指针,继续在之后的运行中使用这块内存