IStorage::RenameElement

Renames the specified substorage or stream in this storage object.

HRESULT RenameElement(
  const WCHAR * pwcsOldName,  //Points to the name of the element to 
                              // be changed
  const WCHAR * pwcsNewName  //Points to the new name for the 
                             // specified element
);
 

Parameters

pwcsOldName
[in] Points to a wide character string that contains the name of the substorage or stream to be changed.
pwcsNewName
[in] Points to a wide character string that contains the new name for the specified sustorage or stream.

Return Values

S_OK
The element was successfully renamed.
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 renaming the element.
STG_E_FILENOTFOUND
The element with the specified old name does not exist.
STG_E_FILEALREADYEXISTS
The element specified by the new name already exists.
STG_E_INSUFFICIENTMEMORY
The element was not renamed due to a lack of memory.
STG_E_INVALIDNAME
Invalid value for one of the names.
STG_E_INVALIDPOINTER
The pointer specified for the element was invalid.
STG_E_INVALIDPARAMETER
One of the parameters was invalid.
STG_E_REVERTED
The storage object has been invalidated by a revert operation above it in the transaction tree.
STG_E_TOOMANYOPENFILES
The element was not renamed because there are too many open files.

Remarks

IStorage::RenameElement renames the specified substorage or stream in this storage object. An element in a storage object cannot be renamed while it is open. The rename operation is subject to committing the changes if the storage is open in transacted mode.

The IStorage::RenameElement method is not guaranteed to work in low memory with storage objects open in transacted mode. It may work in direct mode.

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