问 关于CRichEditCtrl 的信息输入输出问题

tingtings324 2017-08-28 03:15:00
关于控件的回调方式输入输出,何时关闭文件

static DWORD CALLBACK 
MyStreamOutCallback(DWORD dwCookie, LPBYTE pbBuff, LONG cb, LONG *pcb)
{
CFile* pFile = (CFile*) dwCookie;

pFile->Write(pbBuff, cb);
*pcb = cb;

return 0;
}

CFile cFile(TEXT("My_RichEdit_OutFile.rtf"),
CFile::modeCreate|CFile::modeWrite);
EDITSTREAM es;

es.dwCookie = (DWORD) &cFile;
es.pfnCallback = MyStreamOutCallback;
m_myRichEditCtrl.StreamOut(SF_RTF, es);


这个是官方示例 网上多见 执行完StreamOut 就直接关闭文件真的没问题吗 应该需要考虑文件异步读写的问题吧 那么应该什么时候关闭 或者 我应该怎样获取当前控件 信息的大小 谢诸君
...全文
393 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
tingtings324 2017-08-29
  • 打赏
  • 举报
回复
所以 来个人回复 就给分结了
tingtings324 2017-08-29
  • 打赏
  • 举报
回复
很尴尬, 文档说明是 指定在其中填入文本缓冲区的回调函数。 此回调函数调用重复,直到用完的输出流。自以为就是异步的,后来尝试输出线程id 发现就是在一个线程里面执行 所以还是同步的 那么久不存在什么问题了 ...

703

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder ActiveX/COM/DCOM
社区管理员
  • ActiveX/COM/DCOM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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