首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

Query: 发送文件过程中的取消操作有关问题

2012-01-24 
Query: 发送文件过程中的取消操作问题我用MFC做一个基于Dialog的简单应用,description fowllow:首先让用户

Query: 发送文件过程中的取消操作问题
我用MFC做一个基于Dialog的简单应用,description fowllow:
 首先让用户add一些文件到ListBox中,然后用户点击发送按钮开始发送文件,在发送过程中
 用户可以Click取消按钮停止发送(只能点击取消,别的按钮disable)。
My Problem:
 如果我不用multi thread,好像用户就无法点击取消(或者说,必须在所有文件发送结束后才能响应取消,这样就没有意义了),或者那位高手有什么别的方法
 如果用添加一个额外的thread,用它来发送文件。在发送前后和发送中必须对这个dialog进行一些操作(如disable和enable一些按钮,更新正在发送文件的信息)。于是我把这个dialog的指针传给那个thread,但是在那个线程中操作那个dialog是,出现了一些Assert Error。

Who of the superiors can give me some advise or resolvent?
  Thanks everyone!

[解决办法]
估计你是把文件中的所有数据读出来了一起发送的,如果文件数据比较大
你可以连续读固定大小的文件再发送,如2048的buf,然后在线程中检查取消
后返回的标志位停止发送
再:dialog的操作可以发送消息
[解决办法]
MsgWaitForMultipleObjects

热点排行