0x00000000处未处理的错误 0xc0000005 读取位置0x00000000时发生访问冲突
发布时间:2011-06-23 14:06:39 文章来源:www.iduyao.cn 采编人员:星星草
0x00000000处未处理的异常 0xc0000005 读取位置0x00000000时发生访问冲突
我用VC.net 2003写了MFC程序,调试编译运行都没问题,就是在关闭调试中的程序的时候会出现“0x00000000处未处理的异常 0xc0000005 读取位置0x00000000时发生访问冲突”的错误提示。
然后点击[中断],程序回到反汇编的地址显示:
。。。
。。。
00000000 ???
00000001 ???
00000002 ???
00000003 ???
00000004 ???
00000005 ???
00000006 ???
00000007 ???
00000008 ???
00000009 ???
0000000A ???
0000000B ???
0000000C ???
。。。
。。。
我想问下这是什么错误呢,怎么修改,望高手赐教!谢谢!
------解决方案--------------------
up
------解决方案--------------------
估计是指针或者数组惹得祸,把代码拿出来看看
------解决方案--------------------
这个问题 我好像和别人解释过
这个是内存操作出界造成的
你用mfc就更有这个可能了
问题的原因类似于如下:
char text[7]; //注意 7个字节
int a; // 4个字节
a = 9;
// 注意下面这个操作不会出错,但是你改变了a的值, 修改了a的一个字节,一般像这种变量是不会出现很大的错误,
// 但是如果a定义是这样 CWnd a; 或者是 CWnd* a// 这样就麻烦了
memcpy(text, "12345678", 8);
至于你的程序错在什么地方 你就得自己去调试了
------解决方案--------------------
该回复于2009-02-24 20:26:16被版主删除
------解决方案--------------------
LZ,
建议在可疑的类的析构 或者 Release之类的函数里卡断点
确定错误代码位置
再联系上下文
按上面你说那种内存错误 没人能帮你分析出来
------解决方案--------------------
估计是指针或者数组没弄好
------解决方案--------------------
设置断点调试
------解决方案--------------------
我也遇到这种错误了,就是死活不知道哪里出错了
------解决方案--------------------
你点中断?点重试试下,看能不能定位倒某个地方
------解决方案--------------------
这种问题很常见,在操作哪个函数时赋值不对就会出,内存访问冲突的问题太常见了,而原因也不一
没有代码 可以确定什么问题吗?
贴源码。
------解决方案--------------------
楼主的问题我遇到过,而且已经解决了。
具体方法是:
遇到类似的问题一般都是释放了没有分配内存的指针所导致的(我遇到的是这样的,不代表全部);
关闭系统时才出现这种问题,那么这个问题一般出现在析构函数中。
所以建议楼主看一下自己程序类的析构函数中是否存在上述问题指针!
------解决方案--------------------
我是来刷分的
------解决方案--------------------
....
------解决方案--------------------
JF........
楼上把我知道的都说了!!
------解决方案--------------------
我也遇到了 不好解决啊
------解决方案--------------------
这种问题一般都是内存溢出导致的,建议将你写的程序从头理一遍,在一些指针、数组之类的应用的地方着重看一下,设置断点跟踪程序走向,到报错的位置,一般都能再附近找到出错原因,耐心点就行了,这种错误别人只能告诉你怎么去纠错,但不能帮你找到错误位置们自己慢慢找就行了,记得解决问题给分啊
------解决方案--------------------
cmdInfo.m_bRunAutomated)
{
// 經由 CoRegisterClassObject() 登錄類別因數。
COleTemplateServer::RegisterAll();
}
// 已使用 /Unregserver 或 /Unregister 參數啟動應用程式。
// 從登錄移除項目。
else if (cmdInfo.m_nShellCommand == CCommandLineInfo::AppUnregister)
{
COleObjectFactory::UpdateRegistryAll(FALSE);
AfxOleUnregisterTypeLib(_tlid, _wVerMajor, _wVerMinor);
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
关于visual studio 2005的工程文件*.vcproj的问题
请问:Visual Studio 2005 新建一个工程之后,会自动生产一个*.vcproj的一个文件,这...
-
用MFC画图的问题
我现在要用随机数产生300个固定的点保存在数组中,并在ondraw里画出这300个点,而且通过定时器使这300个点做运动。...
-
VS2010中的C++怎么连接数据库?
之前一直用VC++6.0的、现在想学学用最新的VS、但是感觉连接数据库和之前不一样了、具体应该怎么弄...
-
CLI编程 高手帮忙
我现在用C++/CLI 混编,
我有一个方法, 是调用一个C 的类库 得到一个 char * 的值
现在我...
-
新手求教::VC.NET2003里面的"添加变量"菜单变灰了,怎么弄?
最近学着用.net写程序,以前用的是6.0,不知道为什么我设计的EDIT Con...
-
刚学习vc.net 请教一个String做参数的问题,请高手指教一下
下面的代码为什么不能编译呢,出现这个错误呢
.\clr.cpp(12) : error C3...
-
VS2003中通过ADO取SQL2003中bigint 负值变正值的问题,求助!
在SQL2003中 数据库中假设 一个bigint类型的数据位-1234这样的值,通过如...
-
新手学习VC用那个版本的编译器好!
新手学习VC用那个版本的编译器好!?
------解决方案--------------------
VC++6.0
------解决...
-
正则表达式
有这样的字符串
"1,',2"",3"
希望将单个的"替换成单引号,将连续两个的""替换成一个双引号。
正则表达式该如何写。
...
-
为什么<<精通MFC>>附带的源程序不能编译成功
vc2010编译后有两个错误提示,分别如下,
错误一:
1>c:\program files\microsoft vi...