Partager via


MÉTHODE IMDSPDirectTransfer ::TransferToDevice (mswmdm.h)

La méthode TransferToDevice est appelée par Windows Media Gestionnaire de périphériques pour déléguer le contenu de transfert de contenu au fournisseur de services. La source peut être spécifiée sous forme de fichier ou d’interface d’opération.

Syntaxe

HRESULT TransferToDevice(
  [in]  LPCWSTR        pwszSourceFilePath,
  [in]  IWMDMOperation *pSourceOperation,
  [in]  UINT           fuFlags,
  [in]  LPWSTR         pwszDestinationName,
  [in]  IWMDMMetaData  *pSourceMetaData,
  [in]  IWMDMProgress  *pTransferProgress,
  [out] IMDSPStorage   **ppNewObject
);

Paramètres

[in] pwszSourceFilePath

Nom du fichier source. La valeur contenue dans ce paramètre doit être ignorée si WMDM_CONTENT_OPERATIONINTERFACE est spécifié.

[in] pSourceOperation

Pointeur d’interface d’opération qui sert de source. La valeur contenue dans ce paramètre doit être ignorée, sauf si WMDM_CONTENT_OPERATIONINTERFACE est spécifié.

[in] fuFlags

Indicateurs qui affectent le comportement de cette méthode. Le paramètre fuFlags doit être l’une des valeurs suivantes.

Valeur Description
WMDM_CONTENT_FILE La source est un fichier.
WMDM_CONTENT_FOLDER La source est un dossier.
WMDM_FILE_CREATE_OVERWRITE Remplacez le fichier de destination s’il existe déjà.

[in] pwszDestinationName

Le contenu doit être transféré vers l’appareil portant ce nom. Ce paramètre est obligatoire.

[in] pSourceMetaData

Pointeur d’interface de métadonnées. L’objet de métadonnées contient les propriétés source. Ce paramètre est facultatif.

[in] pTransferProgress

Interface de rappel de progression. Le fournisseur de services doit mettre à jour les informations pendant la progression du transfert. Ce paramètre est facultatif.

[out] ppNewObject

Objet de stockage nouvellement créé. Ce paramètre est facultatif. Cela peut être NULL si l’appelant n’a pas besoin d’avoir le nouvel objet retourné.

Valeur retournée

Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.

Code de retour Description
S_OK
S_OK
E_INVALIDARG
Une des conditions suivantes est vraie :
  1. PwszSourceFileName et pSourceOperation sont tous deux spécifiés ;

  2. pwszDestinationName n’est pas spécifié ;

  3. fuFlags n’est pas valide.

HRESULT_FROM_WIN32(ERROR_DISK_FULL)
Espace insuffisant sur le disque.
HRESULT_FROM_WIN32(ERROR_FILE_EXISTS)
Le fichier existe déjà et WMDM_FILE_CREATE_OVERWRITE n’a pas été spécifié. Si l’appareil autorise les noms de fichiers en double, cela peut être acceptable et cette erreur n’a pas besoin d’être retournée.
HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED)
Le transfert du contenu spécifié n’est pas pris en charge sur l’appareil.

Remarques

Windows Media Gestionnaire de périphériques requêtes pour l’interface IMDSPDirectTransfer lors de chaque transfert.

Si le fournisseur de services prend en charge l’interface IMDSPDirectTransfer, Windows Media Gestionnaire de périphériques délègue simplement le transfert de contenu au fournisseur de services. Dans ce cas, Windows Media Gestionnaire de périphériques ne traite pas le contenu avant de l’envoyer au fournisseur de services. Le fournisseur de services obtient le contrôle total de la source.

Si le fournisseur de services ne prend pas en charge l’interface IMDSPDirectTransfer, Windows Media Gestionnaire de périphériques traite les fichiers sources et envoie des paquets d’octets au fournisseur de services. En outre, pour le contenu protégé, Windows Media Gestionnaire de périphériques appelle le fournisseur de contenu sécurisé pour traiter le contenu avant de l’envoyer au fournisseur de services.

Si IMDSPDirectTransfer est pris en charge, Windows Media Gestionnaire de périphériques délègue la gestion du contenu au fournisseur de services. Cela offre une flexibilité au fournisseur de services pour la gestion du contenu. Dans ce cas, le fournisseur de services est responsable de la gestion du contenu protégé.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête mswmdm.h
Bibliothèque Mssachlp.lib

Voir aussi

IMDSPDirectTransfer Interface

IMDSPObject ::Close

IMDSPObject ::Open

IMDSPObject ::Write

IWMDMMetaData Interface

IWMDMOperation Interface

IWMDMProgress Interface

IWMDMStorageControl, interface