unhandled exception in *.exe (MFC42D.DLL):0xC0000005:Access Violation

遇到的错误:unhandled exception in *.exe (MFC42D.DLL):0xC0000005:Access Violation
其中*.exe是在工程中生成的可执行文件名。

我是在使用VC+ODBC访问Access数据库方式写一个小软件时遇到的这个错误,
我向数据库中添加记录时会报此错,
但奇怪的是记录都可以添加成功。
Google了很久,网友们对此类问题的一般解释都是:
指针未实例化,对内存的非法访问等。
我单步时将注意力放在涉及到的指针上,未果。
后来继续Google,终于找到了在http://hi.baidu.com/snacky/blog/item/658fd2545de6b55ed009063e.html有们仁兄遇到的是跟我一模一样的问题,
按他的方法果然解决了。
现引复述如下:

在Access中使用“日期/时间”类型时,若采用ODBC数据源+CRecordset记录集方式,在继承自CRecordset的类的构造函数中不会自动为生成的对应“日期/时间”类型的CTime成员变量做初始化,手工完成这一动作方法为,在继承自CRecordset类的类的构造函数中加上如下一句:
m_time=CTime::GetCurrentTime();
其中m_time为记录集类中对应你数据库中的“日期/时间”类型的变量。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值