如何解决.exe应用程序错误

[复制链接]
查看11 | 回复5 | 2010-5-15 15:09:08 | 显示全部楼层 |阅读模式
"0x00461efb"指令引用的"0x00000000" 内存。该内存不能为"read"。

回复

使用道具 举报

千问 | 2010-5-15 15:09:08 | 显示全部楼层
Access Violation原因有二 1 是变量没有初始化2 数组访问越界看你的引用的地址是 0x00000000则属于第一种情况,你要解决这个问题,就必须修改源代码。告诉你一个调试手段吧在debug模式下调试执行。当程序弹出那个对话框的时候点忽略,直到不能忽略,程序自动中断。而断点执行到的语句就是问题所在的语句。但是这条语句可能是底层的调用,甚至可能是DLL里面的语句,没有关系,我们还有强大的武器----调用堆栈。打开调用堆栈,沿着堆栈向上找到你自己写的代码,问题就出现在这个变量上,按图索骥,找到这个变量的初始化或者其他操作就行了。我总结了好久才学会的调试方法,对待Access Violation超级好用,一般
回复

使用道具 举报

千问 | 2010-5-15 15:09:08 | 显示全部楼层
某个指针变量初始化NULL后没有得到有效赋值,然后又有内存访问的函数尝试去读这个地址。这很有可能是sprintf之类的函数里的参数引起的
回复

使用道具 举报

千问 | 2010-5-15 15:09:08 | 显示全部楼层
修改原程序
回复

使用道具 举报

千问 | 2010-5-15 15:09:08 | 显示全部楼层
程序可能有问题。指针没初始化,引用了。
回复

使用道具 举报

千问 | 2010-5-15 15:09:08 | 显示全部楼层
正常
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行