使用IStream的write方法 碰到的问题?

iamluda 2008-05-30 06:08:57
IStream的write方法如下:

HRESULT Write(
void const* pv,     //要写入数据的缓冲区
ULONG cb,         //需要写入的字节数
ULONG * pcbWritten   //实际写入的字节数
);


在使用IStream的write方法 时,发现个别情况下 实际写入的字节数与需要写入的字节数,不相等.在这种情况下,该如何处理?为什么会出现实际写入的字节数与需要写入的字节数不相等的情况.

请问 朋友们碰到这种情况没有?

...全文
204 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
vocanicy 2008-06-01
  • 打赏
  • 举报
回复
关键在于你实现IStream接口的对象是什么?

Windows下很多IO都是需要检查返回实际字节的

举个例子,如果实现这个IStream接口的是个SOCKET对象,那么发送就有可能小于要发送的字节数。
iamluda 2008-06-01
  • 打赏
  • 举报
回复
谢谢 楼上的朋友。

出现这种现象的原因是什么?你碰到过这钟现象吗?
dbger 2008-05-31
  • 打赏
  • 举报
回复
将后面没写入的数据再写一遍。

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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