IStream::Stat (Compact 2013)

3/26/2014

This method retrieves the STATSTG structure for this stream object.

Syntax

HRESULT Stat( 
  STATSTG* pstatstg, 
  DWORD grfStatFlag 
);

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] Value that specifies that this method does not return some of the members in the STATSTG structure. This saves a memory allocation operation.

    Values are taken from the STATFLAG enumeration.

Return Value

The following table shows the return values for this method.

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 the IStorage::EnumElements method is called, it creates an enumerator object with the IEnumSTATSTG interface on it. This can be called to enumerate the storages and streams through the STATSTG structures associated with each of them.

To determine whether the platform supports this interface, see Determining Supported COM APIs.

Requirements

Header

objidl.h,
objidl.idl

Library

ole32.lib,
uuid.lib

See Also

Reference

IStream