谁用CRecordset出现这样的问题?

orc 2002-12-21 05:38:20
我在一个类中使用一个CRecordset作为静态变量
结果退出的时候就出现
Unhandled exception in PROROAM.exe (NTDLL.DLL):0XC0000005:ACCESS VIOLATION
的对话框。
此时的堆栈是这样的
NTDLL! 77f7e346()
ODBC32! 1f7b3e3a()
ODBC32! 1f7b44a3()
CDatabase::Free(CDatabase * const 0xfeeefef2 {CDatabase}) line 423
CDatabase::~CDatabase(CDatabase * const 0xfeeefef2 {CDatabase}) line 222
CDatabase::`vector deleting destructor'(CDatabase * const 0xfeeefef2 {CDatabase}, unsigned int 12) + 59 bytes
MFC42! AfxGetResourceHandleCompat(void) + 26963 bytes
CAlarmRecordSet::~CAlarmRecordSet) + 69 bytes

那位知道怎么回事?我都要疯了
...全文
26 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
small_wei 2002-12-22
  • 打赏
  • 举报
回复
内存泻漏,程序中某个对内存(如字串操作,如你只定义了5个字符,而你却写入了10个字符)的操作赿界了,影响到了你定义的CRecordset,在退出程序时,系统要释放已分配的资源,调用CRecordset释构函数,由于CRecordset已被破坏,所以出错了.
orc 2002-12-22
  • 打赏
  • 举报
回复
不会啊,我只是用她 addnew update 而已。
yue621 2002-12-22
  • 打赏
  • 举报
回复
静态变量不能被外部函数直接改变它的值,你的是访问冲突错误,估计就是你改变了它的值。参考一下,不对大家再讨论。
zq_benben 2002-12-22
  • 打赏
  • 举报
回复
什么呀,没碰过。仔细读读你的代码。

4,012

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧