社区
界面
帖子详情
MFC向SD卡中存数据,在存数据的过程中人为的把卡拔掉,如何处理
qq_34378196
2018-05-07 03:56:58
我使用的工业平板电脑,通过串口接收数据,将数据处理完毕之后保存到SD卡中的一个TXT文件中,在软件运行过程中如果人为的将SD卡拔除,软件会死机,现想获得一个存储的方案,非常感谢
...全文
765
15
打赏
收藏
MFC向SD卡中存数据,在存数据的过程中人为的把卡拔掉,如何处理
我使用的工业平板电脑,通过串口接收数据,将数据处理完毕之后保存到SD卡中的一个TXT文件中,在软件运行过程中如果人为的将SD卡拔除,软件会死机,现想获得一个存储的方案,非常感谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
iswjh
2018-05-20
打赏
举报
回复
引用 8 楼 zhao4zhong1 的回复:
不要企图优雅的结束(因为这是不可能办到的) 而要在烂的不能再烂的摊子上也能重整河山!
工控类数据,最好多份保存。本地留1份,网络、外部设备捕获异常,VS、OFFICE死机后不也有恢复吗?怎么做的。。。
worldy
2018-05-17
打赏
举报
回复
系统设备发生改变时,会发出WM_DEVICECHANGE消息,如果设备被移除,该消息参数为DBT_DEVICEREMOVEPENDING,再此时刻,可以进行你的“无奈的”处理
jinan200711
2018-05-17
打赏
举报
回复
try{} cache{} 逮不到异常么
chaoyue0726
2018-05-16
打赏
举报
回复
做一个监控USB接口的监控线程 当有usb断开时检测是不是你正在用的设备,修改标志位 在写数据的代码那判断,然后提示退出。
赵4老师
2018-05-08
打赏
举报
回复
不要企图优雅的结束(因为这是不可能办到的) 而要在烂的不能再烂的摊子上也能重整河山!
待续_1006
2018-05-08
打赏
举报
回复
开一个专门写的线程,加上异常判断
zgl7903
2018-05-08
打赏
举报
回复
CFile 读写使用 try catch 捕捉 CFileException
fandh
2018-05-08
打赏
举报
回复
可以先写到其他地方,非SD卡,然后每次写完,再做一次拷贝文件,在拷贝前判断SD卡的路径是否是有效的,如果无效,做无效处理,有效的话,直接拷贝一下。
qq_34378196
2018-05-08
打赏
举报
回复
使用CFile 加上 try catch 捕捉 CFileException,试过了,行不通
qq_34378196
2018-05-07
打赏
举报
回复
我也有用过异常判断类的东西,但是结果是一样的,现在不知道怎么办,会不会是程序判断SD卡的状态之后,文件也打开了,但是写的过程中SD卡被拔出来了,结果就写不进去了?有没有这种可能?
qq_34378196
2018-05-07
打赏
举报
回复
我是用MFC的CFile类进行写的,写数据还能判断写入成功或者失败吗?那个定时器的超时处理时怎么回事,能详细说一下嘛?拜托了
csulizhang
2018-05-07
打赏
举报
回复
你别把写数据的过程放在主线程里面,每次写之前做好异常检查再写,写的过程中做个定时器做超时处理
smwhotjay
2018-05-07
打赏
举报
回复
死机是你的异常处理不到位。 考虑各种可能出现的异常。
白色一大坨
2018-05-07
打赏
举报
回复
写时候接口的返回有进行判断吗?可以根据写数据的返回接口判断,如果写失败多少次,就返回错误。 不过不了解你具体用的什么接口,不敢断言。
利用
MFC
的Picture控件显示图像和视频/摄像头画面(VS2008+OpenCV2.0)
利用
MFC
的Picture控件显示和
处理
图像,后面又添加了播放视频和捕获摄像头画面的功能,其
中
播放视频的功能只有 'Play' 和 'Stop',不能实现暂停
MFC
中
如何把变量
中
的
数据
显示到控件
中
MFC
中
把变量
中
的
数据
显示到控件
中
的方法有多种,其
中
比较直接的方法就是通过控件ID使用函数GetDlgItem获取一个指向控件的指针,然后使用函数SetWindowText对控件设置一个值。具体方法如下:方法1:我这里使用的环境是VS2010。首先创建一个基于对话框的
MFC
应用程序,习惯性的把自动生成的控件删掉。然后创建一个按钮和一个文本框,如下图:(pic1) 然后为按钮1添加一个点击事件
处理
程序,程序如下: 编译程序运行效果如下图:(pic2) 方法2:还有一个必须会的方法是通过给控件关联一个变量
C++
MFC
实战速成教程(VS2013)
中
让零基础朋友快速掌握
MFC
的开发,进入到C++的Windows编程之殿堂。
MFC
规模庞大,结构复杂,导致很多初学者学习困难。本教程,则排除一切对初步者的干扰,从
MFC
庞大的结构
中
,单刀直入,取出最核心的类,以简明易懂的方式,剖析于学员面前。并通过纯手工方式编写
MFC
的程序,把
MFC
的基础架构,功能,由来,作用一一详细展示。以此为基础,进而把
MFC
的各个类,以及类之间的协作关系融汇贯通。
MFC
数据
的保
存
和打开
MFC
中
数据
的保
存
和打开有三种
处理
方式: 第一种:CFileDialog + CFile
数据
结构体 使用传统的File类,通过这个类的Open、write、read等函数对要保
存
的
数据
进行保
存
。但是使用这种方式保
存
,就需要将要保
存
的
数据
定制成一个结构体,以结构体的对象对
数据
进行保
存
。使用这种方式
存
储
数据
,有可能会造成
数据
存
储控件的浪费,并且操作不方便。 第二种:CFileDialog + CFile+ CArchive: 使用CArchive这个类,CArchive类对CFile类再封装之后不再使用结构体作
工程实战:
MFC
新开线程+缓
存
队列
存
文件类的实现
前言 想从网口持续接收大量
数据
并
存
文件,做上位机界面。因为还有其他功能要占用界面资源,需要新开
存
文件线程。 至于缓
存
队列,当接收
数据
线程收到
数据
后,不希望因为
存
文件操作占用资源影响接收
数据
,将接收到的
数据
先缓
存
到队列
中
,
存
文件线程再从队列
中
取
数据
,一般来说
存
磁盘的速度是比网口速度快的,所以只要缓
存
队列稍微大些便不会溢出。当然类
中
也设计了等待机制,如果
存
文件缓
存
队列满了,会先
存
文件,等待队列空闲时再接收
数据
。 做一个
存
文件类,流出来选择路径和Write接口,新建对象、选择路径,直接调用Write(BYTE*
界面
15,979
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章