Reads a specified number of bytes from the stream object into memory starting
at the current seek pointer.
| void * pv,
||//Pointer to buffer into which the stream is read
| ULONG cb,
||//Specifies the number of bytes to read
| ULONG * pcbRead
||//Pointer to location that contains actual number of bytes read
[in]Points to the buffer into which the stream is read. If an error occurs,
this value is NULL.
[in]Specifies the number of bytes of data to attempt to read from the stream
[out]Pointer to a location where this method writes the actual number of bytes
read from the stream object. You can set this pointer to NULL to indicate that
you are not interested in this value. In this case, this method does not
provide the actual number of bytes read.
Data was successfully read from the stream object.
The data could not be read from the stream object.
The caller does not have sufficient permissions for reading this stream object.
One of the pointer values is invalid.
The object has been invalidated by a revert operation above it in the
This method reads bytes from this stream object into memory. The stream object
must be opened in STGM_READ mode. This method adjusts the seek pointer by the
actual number of bytes read.
The number of bytes actually read is returned in the pcbRead
Notes to Callers
The actual number of bytes read can be fewer than the number of bytes
requested if an error occurs or if the end of the stream is reached during the read
The OLE-provided implementation of IStream
returns S_OK if the end of the stream was reached during the read. (This is
the same as the "end of file" behavior found in the MS-DOS FAT file system.
Some implementations might return an error if the end of the stream is reached
during the read. You must be prepared to deal with the error return or S_OK
return values on end of stream reads.
- Software for developers
Software for Android Developers
- More information resources
Unix Manual Pages