大多数人使用Windows操作系统有时会遇到这样的错误信息:

 「“0X????????”指令引用的“0x00000000”内存,该内存不能为“read”或“written”」

然后应用程序被关闭。

一般出现这个现象有方面的,一是硬件,即内存方面有问题,二是软件,这就有多方面的问题了。

下面先说说硬件:

一般来说,内存出现问题的可能性并不大,主要方面是:内存条坏了、内存质量有问题,还有就是2个不同牌子不同容量的内存混插,也比较容易出现不兼容的情况,同时还要注意散热问题,特别是超频后。你可以使用MemTest 这个软件来检测一下内存,它可以彻底的检测出内存的稳定度。

假如你是双内存,而且是不同品牌的内存条混插或者买了二手内存时,出现这个问题,这时,你就要检查是不是内存出问题了或者和其它硬件不兼容。

如果都没有,那就从软件方面排除故障了。

先简单说说原理:内存有个存放数据的地方叫缓冲区,当程序把数据放在其一位置时,因为没有足够空间,就会发生溢出现象。举个例子:一个桶子只能将一斤的水,当你放入两斤的水进入时,就会溢出来。而系统则是在屏幕上表现出来。这个问题,经常出现在windows2000和XP系统上,win7系统也偶尔出现,Windows 2000/XP对硬件的要求是很苛刻的,一旦遇到资源死锁、溢出或者类似Windows 98里的非法操作,系统为保持稳定,就会出现上述情况。另外也可能是硬件设备之间的兼容性不好造成的。

在这里我们就用一种比较简单的方法:

1.开始菜单——运行输入cmd回车键(Enter),如图

1.jpg

2.可以复制这两条指令(下面3和4),然后在命令提示符后击鼠标右键,打“粘贴”,回车,耐心等待,直到屏幕滚动停止为止。(重启电脑)。

3.输入for %1 in (%windir%\system32*.dll) do regsvr32.exe /s %1回车键,如图

2.jpg

4.完成后,在输入下面 for %i in (%windir%\system32*.ocx) do regsvr32.exe /s %i 回车键,如图

3.jpg


操作完毕。