Condividi tramite


Metodo ITransferSource::MoveItem (shobjidl_core.h)

Sposta l'elemento all'interno del volume/spazio dei nomi, restituendo IShellItem nella nuova posizione.

Sintassi

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

Parametri

[in] psi

Tipo: IShellItem*

Puntatore a IShellItem da spostare.

[in] psiParentDst

Tipo: IShellItem*

Puntatore a IShellItem che rappresenta il nuovo elemento padre nella destinazione.

[in] pszNameDst

Tipo: LPCWSTR

Puntatore a un buffer con terminazione Null che contiene il percorso di destinazione.

flags

Tipo: TRANSFER_SOURCE_FLAGS

Flag che controllano l'operazione file. Una o più costanti TRANSFER_SOURCE_FLAGS .

[out] ppsiNew

Tipo: IShellItem**

Quando questo metodo viene restituito correttamente, contiene un indirizzo di un puntatore all'oggetto IShellItem nella nuova posizione.

Valore restituito

Tipo: HRESULT

Restituisce S_OK se lo spostamento è riuscito. In tal caso , ppsiNew punta all'indirizzo del nuovo elemento. Altri valori restituiti possibili, sia codici di esito positivo che di errore, includono quanto segue:

Codice restituito Descrizione
COPYENGINE_S_USER_IGNORED
L'elemento di destinazione esiste già e non è stato sovrascritto. In questo caso , ppsiNew è NULL e il chiamante deve eliminare l'elemento di origine.
COPYENGINE_S_MERGE
L'elemento di destinazione esiste già e l'utente ha scelto di unire le cartelle di origine e di destinazione. In questo caso , ppsiNew punta a un valore NULL e il chiamante deve eliminare l'elemento di origine.
E_NOINTERFACE
Quando l'elemento spostato è una cartella, il chiamante deve convertire un'operazione di spostamento in un'operazione di copia ed eliminazione.
ERROR_NOT_SAME_DEVICE
Il chiamante deve convertire un'operazione di spostamento in un'operazione di copia ed eliminazione. Questo errore viene visualizzato come HRESULT_FROM_WIN32(ERROR_NOT_SAME_DEVICE).
ERROR_FILE_EXISTS
Quando si sposta una cartella, il chiamante deve convertire l'operazione di spostamento in un'operazione di copia ed eliminazione. L'elemento di destinazione deve supportare ITransferDestination. Questo errore viene visualizzato come HRESULT_FROM_WIN32(ERROR_FILE_EXISTS).
ERROR_ALREADY_EXISTS
Quando si sposta una cartella, il chiamante deve convertire l'operazione di spostamento in un'operazione di copia ed eliminazione. L'elemento di destinazione deve supportare ITransferDestination. Questo errore viene visualizzato come HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS).

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione shobjidl_core.h (include Shobjidl.h)