IStorage::SetElementTimes

Sets the modification, access, and creation times of the specified storage element, if supported by the underlying file system.

HRESULT SetElementTimes(
  const WCHAR * pwcsName,  //Points to name of element to be changed
  FILETIME const * pctime,  //New creation time for element, or NULL
  FILETIME const * patime,  //New access time for element, or NULL
  FILETIME const * pmtime  //New modification time for element, or 
                           // NULL
);
 

Parameters

pwcsName
[in] The name of the storage object element whose times are to be modified. If NULL, the time is set on the root storage rather than one of its elements.
pctime
[in] Either the new creation time for the element or NULL if the creation time is not to be modified.
patime
[in] Either the new access time for the element or NULL if the access time is not to be modified.
pmtime
[in] Either the new modification time for the element or NULL if the modification time is not to be modified.

Return Values

S_OK
The time values were successfully set.
E_PENDING
Asynchronous Storage only: Part or all of the element's data is currently unavailable. For more information see IFillLockBytes and Asynchronous Storage.
STG_E_ACCESSDENIED
The caller does not have sufficient permissions for changing the element.
STG_E_FILENOTFOUND
The element with the specified name does not exist.
STG_E_INSUFFICIENTMEMORY
The element was not changed due to a lack of memory.
STG_E_INVALIDNAME
Invalid value for the element name.
STG_E_INVALIDPOINTER
The pointer specified for the element was invalid.
STG_E_INVALIDPARAMETER
One of the parameters was invalid.
STG_E_TOOMANYOPENFILES
The element was not changed because there are too many open files.
STG_E_REVERTED
The storage object has been invalidated by a revert operation above it in the transaction tree.

Remarks

This method sets time statistics for the specified storage element within this storage object.

Not all file systems support all of the time values. This method sets those times that are supported and ignores the rest. Each of the time value parameters can be NULL; indicating that no modification should occur.

Call the IStorage::Stat method to retrieve these time values.

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, IStorage::Stat