佚名通过本文主要向大家介绍了istream,istream是什么意思,c istream,istream用法,std istream等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: IStream写失败
描述:
解决方案1:
描述:
IStreamPtr pStream获取指针时返回hr为0
strBuffer为CString类型,字符串比较长
ULONG cbLen = strBuffer.GetLength();
HRESULT hr = pStream->Write(&cbLen, sizeof(ULONG), NULL);
if(FAILED(hr))
return FALSE;
hr = pStream->Write(strBuffer.GetBuffer(strBuffer.GetLength()), strBuffer.GetLength(), NULL);
strBuffer.ReleaseBuffer();
if(FAILED(hr))
return FALSE;
pStream.Release();
pStg.Release();//根存储
return True; //断点处
查看hr均为0,在断点处用DocView查看流中内容没有改变(pStream没有内容时写入成功,但有内容时写入后查看数据未被改变)
这是怎么回事啊?大家帮我分析分析,谢了先!
解决方案1:
没有提交吧
pStream->Commit();
pStg->Commit();
#define S_OK ((HRESULT)0x00000000L)
成功的情况下 hr 肯定等于 0,
至于没有写入数据,这个不大清楚