|
|
发表于 2004-11-20 10:59:00
|
显示全部楼层
Re:关于运行VB6.0的一小问题
内存 0x00000000 -- 0x0000FFFF 这段区域Windows 作为NULL指针分配的分区,这个分区用户一般是不能进行读写的。
出现这种情况大多是在分配内存的操作语句上。
因为没有足够的内存或是其他什么原因,内存分配的操作返回的值为NULL,程序中没有对返回值进行检测,仍然以为操作系统已经分配了内存,然后对这段空内存进行读写。就会出现你所说的错误。
对于是你自己开发的程序出错,如果你熟悉Debug,进入CPU模式,可以将断点设置到出错的地方,可以很快确定是那一段程序引发的。如果是启动VB就出现违反内存读写的错误,最简单就是重新安装VB。如果你有兴趣去研究为什么VB启动会出错,那最好使用使用SofeIce,直接将断点设置在这个点上,然后向前退,看是那一块程序在分配内存时出现错误。
你给出的0x70d61c0df对大多数人来将并没有太大意义,首先因为不同的操作系统,程序在运行时Windows会分配在不同的空间,这样即使是同一模块出错,也会返回不同的地址;第二,类似这样的错误还有一种其他的可能,比如程序出现乱码,胡乱的执行,也会出现这种错误。
|
|