IStorage::EnumElements

Returns an enumerator object that can be used to enumerate the storage and stream objects contained within this storage object.

HRESULT EnumElements(

DWORD reserved1,
//Reserved; must be zero
void * reserved2,
//Reserved; must be NULL
DWORD reserved3,
//Reserved; must be zero
IEnumSTATSTG ** ppenum
//Location for IEnumSTATSTG
);

Parameters

reserved1

[in]Reserved for future use; must be zero.

reserved2

[in]Reserved for future use; must be NULL.

reserved3

[in]Reserved for future use; must be zero.

ppenum

[out]Points to the location where the new enumerator object should be returned.

Return Values

S_OK

The enumerator object was successfully returned.

STG_E_INSUFFICIENTMEMORY

The enumerator object could not be created due to lack of memory.

STG_E_INVALIDPARAMETER

One of the parameters was not valid.

STG_E_REVERTED

The object has been invalidated by a revert operation above it in the transaction tree.

Comments

The enumerator object returned by this method implements the IEnumSTATSTG interface, one of the standard enumerator interfaces that contain the Next, Reset, Clone, and Skip methods. IEnumSTATSTG enumerates the data stored in an array of STATSTG structures.

The storage object must be open in read mode to allow the enumeration of its elements.

The order in which the elements are enumerated and whether the enumerator is a snapshot or always reflects the current state of the storage object, depends on the IStorage implementation. The OLE-provided compound file implementation takes a snapshot.

See Also

IEnumXXXX, IEnumSTATSTG, STATSTG

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database