Partager via


Méthode ITransferSource ::MoveItem (shobjidl_core.h)

Déplace l’élément dans le volume/espace de noms, en retournant l’objet IShellItem dans son nouvel emplacement.

Syntaxe

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

Paramètres

[in] psi

Type : IShellItem*

Pointeur vers l’objet IShellItem à déplacer.

[in] psiParentDst

Type : IShellItem*

Pointeur vers l’objet IShellItem qui représente le nouvel élément parent à la destination.

[in] pszNameDst

Type : LPCWSTR

Pointeur vers une mémoire tampon terminée par un caractère Null qui contient le chemin de destination.

flags

Type : TRANSFER_SOURCE_FLAGS

Indicateurs qui contrôlent l’opération de fichier. Une ou plusieurs constantes TRANSFER_SOURCE_FLAGS .

[out] ppsiNew

Type : IShellItem**

Lorsque cette méthode retourne correctement, contient l’adresse d’un pointeur vers iShellItem dans son nouvel emplacement.

Valeur retournée

Type : HRESULT

Retourne S_OK si le déplacement a réussi. Dans ce cas, ppsiNew pointe vers l’adresse du nouvel élément. Les autres valeurs de retour possibles, à la fois les codes de réussite et d’échec, sont les suivantes :

Code de retour Description
COPYENGINE_S_USER_IGNORED
L’élément de destination existe déjà et n’a pas été remplacé. Dans ce cas, ppsiNew a la valeur NULL et l’appelant doit supprimer l’élément source.
COPYENGINE_S_MERGE
L’élément de destination existe déjà et l’utilisateur a choisi de fusionner les dossiers source et de destination. Dans ce cas, ppsiNew pointe vers une valeur NULL et l’appelant doit supprimer l’élément source.
E_NOINTERFACE
Lorsque l’élément déplacé est un dossier, l’appelant doit convertir une opération de déplacement en opération de copie et de suppression.
ERROR_NOT_SAME_DEVICE
L’appelant doit convertir une opération de déplacement en opération de copie et de suppression. Cette erreur est considérée comme HRESULT_FROM_WIN32(ERROR_NOT_SAME_DEVICE).
ERROR_FILE_EXISTS
Lors du déplacement d’un dossier, l’appelant doit convertir l’opération de déplacement en opération de copie et de suppression. L’élément de destination doit prendre en charge ITransferDestination. Cette erreur est considérée comme HRESULT_FROM_WIN32(ERROR_FILE_EXISTS).
ERROR_ALREADY_EXISTS
Lors du déplacement d’un dossier, l’appelant doit convertir l’opération de déplacement en opération de copie et de suppression. L’élément de destination doit prendre en charge ITransferDestination. Cette erreur est considérée comme HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS).

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête shobjidl_core.h (incluez Shobjidl.h)