IStream::Stat
Retrieves the STATSTG structure for this stream.
HRESULT Stat(
STATSTG * pstatstg,
|
//Location for STATSTG structure
|
DWORD grfStatFlag
|
//Values taken from the STATFLAG enumeration
|
);
|
|
Parameters
-
pstatstg
-
[out] Points to a STATSTG structure where this method
places information about this stream object. This pointer is NULL if an error
occurs.
-
grfStatFlag
-
[in] Specifies that this method does not return some of the fields in the STATSTG
structure, thus saving a memory allocation operation. Values are taken from
the STATFLAG enumeration.
Return Value
-
S_OK
-
The STATSTG structure was successfully returned at the
specified location.
-
E_PENDING
-
Asynchronous Storage only: Part or all of the stream’s data is currently
unavailable. For more information see
IFillLockBytes and
Asynchronous Storage.
-
STG_E_ACCESSDENIED
-
The caller does not have sufficient permissions for accessing statistics for
this storage object.
-
STG_E_INSUFFICIENTMEMORY
-
The STATSTG structure was not returned due to a lack of memory.
-
STG_E_INVALIDFLAG
-
The value for the grfStateFlag parameter is not valid.
-
STG_E_INVALIDPOINTER
-
The pStatStg pointer is not valid.
-
STG_E_REVERTED
-
The object has been invalidated by a revert operation above it in the
transaction tree.
Remarks
IStream::Stat retrieves a pointer to the
STATSTG structure that contains information about this
open stream. When this stream is within a structured storage and
IStorage::EnumElements is called, it
creates an enumerator object with the
IEnumSTATSTG interface on it, which can be called to
enumerate the storages and streams through the STATSTG structures associated
with each of them.
See Also
IStream - Compound File
Implementation, STATFLAG,
STATSTG