ITransferSource::MoveItem-Methode (shobjidl_core.h)

Verschiebt das Element innerhalb des Volumes/Namespaces und gibt das IShellItem an seinem neuen Speicherort zurück.

Syntax

HRESULT MoveItem(
  [in]  IShellItem            *psi,
  [in]  IShellItem            *psiParentDst,
  [in]  LPCWSTR               pszNameDst,
        TRANSFER_SOURCE_FLAGS flags,
  [out] IShellItem            **ppsiNew
);

Parameter

[in] psi

Typ: IShellItem*

Ein Zeiger auf das zu verschiebende IShellItem .

[in] psiParentDst

Typ: IShellItem*

Ein Zeiger auf das IShellItem , das das neue übergeordnete Element am Ziel darstellt.

[in] pszNameDst

Typ: LPCWSTR

Zeiger auf einen Puffer mit NULL-Beendigung, der den Zielpfad enthält.

flags

Typ: TRANSFER_SOURCE_FLAGS

Flags, die den Dateivorgang steuern. Mindestens eine der TRANSFER_SOURCE_FLAGS Konstanten.

[out] ppsiNew

Typ: IShellItem**

Wenn diese Methode erfolgreich zurückgibt, enthält die Adresse eines Zeigers auf das IShellItem an seinem neuen Speicherort.

Rückgabewert

Typ: HRESULT

Gibt S_OK zurück, wenn die Verschiebung erfolgreich war. In diesem Fall zeigt ppsiNew auf die Adresse des neuen Elements. Weitere mögliche Rückgabewerte, sowohl Erfolgs- als auch Fehlercodes, umfassen Folgendes:

Rückgabecode Beschreibung
COPYENGINE_S_USER_IGNORED
Das Zielelement ist bereits vorhanden und wurde nicht überschrieben. In diesem Fall ist ppsiNewNULL , und der Aufrufer sollte das Quellelement löschen.
COPYENGINE_S_MERGE
Das Zielelement ist bereits vorhanden, und der Benutzer hat ausgewählt, die Quell- und Zielordner zusammenzuführen. In diesem Fall zeigt ppsiNew auf einen NULL-Wert , und der Aufrufer sollte das Quellelement löschen.
E_NOINTERFACE
Wenn es sich bei dem zu verschiebenden Element um einen Ordner handelt, sollte der Aufrufer einen Verschiebungsvorgang in einen Kopier- und Löschvorgang konvertieren.
ERROR_NOT_SAME_DEVICE
Der Aufrufer sollte einen Verschiebungsvorgang in einen Kopier- und Löschvorgang konvertieren. Dieser Fehler wird als HRESULT_FROM_WIN32(ERROR_NOT_SAME_DEVICE)angezeigt.
ERROR_FILE_EXISTS
Beim Verschieben eines Ordners sollte der Aufrufer den Verschiebungsvorgang in einen Kopier- und Löschvorgang konvertieren. Das Zielelement muss ITransferDestination unterstützen. Dieser Fehler wird als HRESULT_FROM_WIN32(ERROR_FILE_EXISTS)angezeigt.
ERROR_ALREADY_EXISTS
Beim Verschieben eines Ordners sollte der Aufrufer den Verschiebungsvorgang in einen Kopier- und Löschvorgang konvertieren. Das Zielelement muss ITransferDestination unterstützen. Dieser Fehler wird als HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS)angezeigt.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile shobjidl_core.h (einschließlich Shobjidl.h)