The STATSTG structure contains statistical information about an open storage, stream, or byte array object. This structure is used in the IEnumSTATSTG, ILockBytes, IStorage, and IStream interfaces.

typedef struct tagSTATSTG {
LPOLESTR pwcsName; 
DWORD type;
FILETIME mtime; 
FILETIME ctime; 
FILETIME atime; 
DWORD grfMode; 
DWORD grfLocksSupported; 
CLSID clsid; 
DWORD grfStateBits; 
DWORD reserved; 


  • pwcsName
    Points to a NULL-terminated string containing the name. Space for this string is allocated by the method called and freed by the caller (refer to CoTaskMemFree). You can specify not to return this member by specifying the STATFLAG_NONAME value when you call a method that returns a STATSTG structure, except for calls to IEnumSTATSTG::Next, which provides no way to specify this value.
  • type
    Indicates the type of storage object. This is one of the values from the STGTY enumeration.
  • cbSize
    Specifies the size in bytes of the stream or byte array.
  • mtime
    Indicates the last modification time for this storage, stream, or byte array.
  • ctime
    Indicates the creation time for this storage, stream, or byte array.
  • atime
    Indicates the last access time for this storage, stream or byte array.
  • grfMode
    Indicates the access mode specified when the object was opened. This member is only valid in calls to Stat methods.
  • grfLocksSupported
    Indicates the types of region locking supported by the stream or byte array. See the LOCKTYPES enumeration for the values available. This member is not used for storage objects.
  • clsid
    Indicates the class identifier for the storage object; set to CLSID_NULL for new storage objects. This member is not used for streams or byte arrays.
  • grfStateBits
    Indicates the current state bits of the storage object, that is, the value most recently set by the IStorage::SetStateBits method. This member is not valid for streams or byte arrays.
  • reserved
    Reserved for future use.


Runs on Versions Defined in Include Link to
Windows CE OS 2.0 and later Objidl.h    

Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

See Also


 Last updated on Tuesday, July 13, 2004

© 1992-2000 Microsoft Corporation. All rights reserved.