IStream::Stat

This method retrieves the STATSTG structure for this stream object.

At a Glance

Header file: Objidl.h
Windows CE versions: 2.0 and later

Syntax

HRESULT Stat( STATSTG * pstatstg, DWORD grfStartFlag );

Parameters

pstatstg

[out] Pointer 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 members in the STATSTG structure, thus saving a memory allocation operation. Values are taken from the STATFLAG enumeration.

Return Value

One of the values described in the following table is returned.

Value Description
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.
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.