QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
2天前
查看: 1665|回复: 8
收起左侧

[求助] XP系统下运行一个教学程序,却说内存只读,发生错误退出!

[复制链接]
发表于 2008-1-2 21:00:25 | 显示全部楼层 |阅读模式 来自: 中国浙江宁波

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
XP系统下运行一个教学程序,却说内存只读,发生错误退出!* A+ I; u$ P' N
在其他计算机上运行很好呀!
发表于 2008-1-2 21:34:16 | 显示全部楼层 来自: 中国北京
用兼容模式,试试
发表于 2008-1-3 10:05:33 | 显示全部楼层 来自: 中国
系统问题,杀杀毒吧,不行就得重装系统了
 楼主| 发表于 2008-1-10 16:31:29 | 显示全部楼层 来自: 中国浙江宁波
重新装了好几遍了呀!% F% Z: L4 K' w! s1 ^  v
是什么硬件有问题吗?
发表于 2008-1-11 09:12:35 | 显示全部楼层 来自: 中国广东深圳
应该不会这样吧,应该内存的问题
 楼主| 发表于 2008-1-11 14:20:40 | 显示全部楼层 来自: 中国浙江宁波
是新装的机器,内存也有问题,就麻烦了!!!
发表于 2008-1-11 14:33:30 | 显示全部楼层 来自: 中国山西临汾
可能是硬件内存不稳定,我以前也碰到过,如果只是个别程序,也可能是兼容问题,你看是不是有补丁,
发表于 2008-1-11 14:34:44 | 显示全部楼层 来自: 中国山西临汾
可能是硬件内存不稳定,我以前也碰到过,如果只是个别程序,也可能是兼容问题,你看是不是有补丁,
发表于 2008-1-11 15:23:28 | 显示全部楼层 来自: 中国陕西西安
1、微软IE缓冲溢出漏洞引起
; F, `9 Z. R/ g; o
/ v( f8 n1 f& ]4 x1 N2、内存或虚拟内存地址使用冲突造成 程序的运行需要分配一定的内存地址给程序使用,当程序结束时释放留出空间让给新的程序使用,win是多任务的系统 有时前程序未结束 又有新的任务开始 到底要多少内存或虚拟内存来保证我们同时运行的工作任务呢?也许win在这个问题上没弄好,所以有此错误常常发生,一般运行大型软件或多媒体后出现这种情况
+ q) L+ I0 h, E4 z8 @5 A8 E$ @: i, Z7 ?* J
3、劣质内存条也会出现这个问题: X$ ^( p( G" V5 ?

2 K, S9 G& W, B4、微软WINDOWS系统的漏洞,windows把内存地址0X00000000到0X0000ffff指定为分配null指针的地址范围,如果程序试图访问这一地址,则认为是错误。c/c++编写的程序通常不进行严格的错误检查,当采用malloc来分配内存而可供分配的地址空间不够的情况下返回null指针。但是代码不检查这种错误,认为地址分配已经成功,于是就访问0X00000000的地址,于是就发生内存违规访问,同时该进程被终止。
; n$ E& o9 h- h# _' p- N& y  ASCII字符填充组成的pif文件时会出现以下情况: 一个非法的pif文件(用ascii字符'x'填充)至少要369字节,系统才认为是一个合法的pif文件,才会以pif的图标[pifmgr.dll,0]显示,才会在属性里有程序、 字体、内存、屏幕”等内容。而且仅仅当一个非pif文件的大小是369字节时察看属性的“程序”页时,不会发生程序错误,哪怕是370字节也不行。当对一个大于369字节的非法pif文件察看属性的“程序”页时,Explorer会出错,提示:'***'指令引用的'***'内存。该内存不能为'read' ,问题出在pif文件的16进制地址: 0x00000181[0x87]0x00000182[0x01]和 0x00000231[0xC3]0x00000232[0x02] 即使是一个合法pif文件,只要改动这四处的任意一处,也会引起程序错误。而只 要把0x00000181和0x00000182的值改为[0xFF][0xFF],那么其它地址任意更改 都不会引起错误。 - h" G4 X$ x- B$ z3 b4 L: w

, H0 G- P; m+ {- S1 }5、可能没有完全正确安装apache服务,且启动了它的原故; 把服务中的 OracleOraHomeXXHTTPServer改成停止" x% q+ X) _. t

# S! s( @' @$ E* l% w% |" g6、应用程序没有检查内存分配失败
7 f8 r7 [4 B$ s  G0 [& I4 P2 ^: C1 d# h. s
7、应用程序由于自身BUG引用了不正常的内存指针
' Z; x1 M2 x9 g) A: p' g  像这样的情况都属于程序自身的BUG,你往往可在特定的操作顺序下重现错误。无效指针不一定总是0,因此错误提示中的内存地址也不一定为“0x00000000”,而是其他随机数字。
3 M' f" `( t* ^3 ]3 l# i* a' ?+ \$ t& a
如果系统经常有所提到的错误提示,下面的建议可能会有帮助:
* h" c2 E- ?0 x7 _$ |6 p
- ^* m8 f# I1 @/ \# B) ?  1.查看系统中是否有木马或病毒。这类程序为了控制系统往往不负责任地修改系统,从而导致操作系统异常。平常应加强信息安全意识,对来源不明的可执行程序绝不好奇。
- n" ~) k% F  k9 s. O% j  \! l7 Q; @  2.更新操作系统,让操作系统的安装程序重新拷贝正确版本的系统文件、修正系统参数。有时候操作系统本身也会有BUG,要注意安装官方发行的升级程序。
. l% m: }  K; h5 }& s" j- B. {  3.试用新版本的应用程序。 $ ?" P; f; U. G2 J
    4、删除然后重新创建 Winnt\System32\Wbem\Repository 文件夹中的文件: 在桌面上右击我的电脑,然后单击管理。 % s& F9 s; u. I
在"服务和应用程序"下,单击服务,然后关闭并停止 Windows Management Instrumentation 服务。 # |+ }9 @( w* L  A' \" `2 q
删除 Winnt\System32\Wbem\Repository 文件夹中的所有文件。(在删除前请创建这些文件的备份副本。)
3 I% ?' c2 ~& T; R. ^. L2 e打开"服务和应用程序",单击服务,然后打开并启动 Windows Management Instrumentation 服务。当服务重新启动时,将基于以下注册表项中所提供的信息重新创建这些文件: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\CIMOM\Autorecover MOFs 5 ]/ n: T# v% Z$ P6 b
     16:33:19
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

快速回复 返回顶部 返回列表