2009-10-13 39 views
5

tôi là tạo ra một IStream như sau:Cách lấy độ dài của IStream? C++

IStream* stream; 
result = CreateStreamOnHGlobal(0, TRUE, &stream); 

Sau đó, tôi có một đối tượng CImage mà tôi lưu vào dòng này:

image->Save(stream, Gdiplus::ImageFormatBMP); 

tôi cần để có được kích thước của byte ghi vào đây IStream.

Tôi làm cách nào để thực hiện việc này?

Không có độ dài hoặc điều gì đó như thế này trong IStream ...

cảm ơn!

Trả lời

4

Hoặc bạn có thể sử dụng:

ULARGE_INTEGER liSize; 
    IStream_Size(pStream, &liSize); 

chức năng khác mà bạn có thể tìm thấy hữu ích trong bối cảnh này:

IStream_Reset(pStream);   // reset seek position to beginning 
    IStream_Read(pStream, mem, size); 
Các vấn đề liên quan