IStorage::Stat

Retrieves the STATSTG structure for this open storage object.

HRESULT Stat(
  STATSTG * pstatstg,  //Location for STATSTG structure
  DWORD grfStatFlag    //Values taken from the STATFLAG enumeration
);
 

Parameters

pstatstg
[out] On return, points to a STATSTG structure where this method places information about the open storage object. This parameter is NULL if an error occurs.
grfStatFlag
[in] Specifies that some of the fields in the STATSTG structure are not returned, thus saving a memory allocation operation. Values are taken from the STATFLAG enumeration.

Return Values

S_OK
The STATSTG structure was successfully returned at the specified location.
E_PENDING
Asynchronous Storage only: Part or all of the storage'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_INVALIDPARAMETER
One of the parameters was invalid.

Remarks

IStorage::Stat retrieves the STATSTG structure for the current storage. This structure contains statistical information about the storage. IStorage::EnumElements creates an enumerator object with the IEnumSTATSTG interface, though which you can enumerate the substorages and streams of a storage through the STATSTG structure of each.

QuickInfo

  Windows NT: Use version 3.1 or later.
  Windows: Use Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in objidl.h.

See Also

IStorage - Compound File Implementation, STATFLAG, STATSTG, IEnumSTATSTG, IStorage::SetClass, IStorage::SetElementTimes, IStorage::SetStateBits