求MFC高手 ,序列化保存出错

哪位高手可以帮我看一下程序。。。... 哪位高手可以帮我看一下程序。。。 展开
 我来答
挨踢老李
2013-06-09 · TA获得超过876个赞
知道小有建树答主
回答量:1176
采纳率:50%
帮助的人:965万
展开全部
错误提示框上说了,这是一个断言错误,在filecore.cpp文件的第295行,打开这个文件找到295行发现是INVALID_HANDLE_VALUE错误,无效的文件句柄。说明文件根本没有成功打开,这样的话用串行化输入到文件当然出错,因为文件都没有打开。
追问
怎么打开呢?
追答
构造串行化对象CArchive的时候需要提供文件对象CFile的指针。
使用串行化对象前应该实例化CFile文件对象,
CFile file;
打开文件
file.open("c:\\1.txt",CFile::modeReadWrite);
使用该文件对象指针实例化串行化对象
CArchive arch(&file,CArchive::store);
然后就可以对串行化对象arch进行写入数据了
bhtzu
2013-06-09 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4446万
展开全部
错误提示可查出信息:文件关闭时,文件句柄已经为空。
没有更多信息可以看出,你只能点击重试进入调试,看看代码中断处(通过调用堆栈找到自己代码)看看代码逻辑和各变量情况分析具体问题。
追问
可以帮我看看程序吗?,我是初学者。。。
追答
既然是在学习,调试也是需要学习的很重要部分啊,我给你调了,就失去学习的意义了。
F5运行程序,在序列化部分设置断点,单步执行,看看各个变量的变化,是否和自己的逻辑思路一致,分析并找到问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式