Partager via


IWMDMStorageControl ::Read, méthode (mswmdm.h)

La méthode Read copie le stockage actuel sur l’ordinateur.

Syntaxe

HRESULT Read(
  [in] UINT           fuMode,
  [in] LPWSTR         pwszFile,
  [in] IWMDMProgress  *pProgress,
  [in] IWMDMOperation *pOperation
);

Paramètres

[in] fuMode

Mode de traitement utilisé pour l’opération Lecture . Le tableau suivant répertorie les modes de traitement qui peuvent être spécifiés dans le paramètre fuMode . Vous devez spécifier exactement l’un des deux premiers modes et l’un des trois derniers modes (WMDM_CONTENT). Si WMDM_MODE_BLOCK et WMDM_MODE_THREAD sont spécifiés, le mode bloc est utilisé.

Mode Description
WMDM_MODE_BLOCK L’opération est effectuée à l’aide du traitement en mode bloc. L’appel ne sera pas retourné tant que l’opération n’est pas terminée.
WMDM_MODE_THREAD L’opération est effectuée à l’aide du traitement en mode thread. L’appel est retourné immédiatement et l’opération est effectuée dans un thread d’arrière-plan.
WMDM_CONTENT_FILE L’appelant demande que Windows Media Gestionnaire de périphériques lire le fichier de l’appareil portable dans un fichier sur le disque dur. L’appelant doit indiquer, dans le paramètre pwszFileName , le chemin complet et le nom du fichier.
WMDM_CONTENT_FOLDER L’appelant demande que Windows Media Gestionnaire de périphériques lire le dossier spécifié, le contenu du dossier et le contenu des sous-dossiers de l’appareil portable sur le disque dur. L’appelant doit indiquer le chemin complet du répertoire cible sur le disque dur dans le paramètre pwszFileName . Cela n’est actuellement pris en charge par aucun fournisseur de services fourni par Microsoft.
WMDM_CONTENT_OPERATIONINTERFACE L’interface IWMDMOperation implémentée par l’application est utilisée pour lire des données, au lieu de transmettre un nom de fichier.

[in] pwszFile

Pointeur vers un nom de fichier complet sur l’ordinateur sur lequel le contenu de l’appareil portable est copié. Le nom de fichier doit inclure une extension ; l’extension du stockage actuel sur l’appareil ne sera pas utilisée. Si WMDM_CONTENT_OPERATIONINTERFACE est spécifié dans fuMode, ce paramètre est ignoré.

[in] pProgress

Pointeur facultatif vers une interface IWMDMProgress qui a été implémentée par l’application pour suivre la progression des opérations en cours.

[in] pOperation

Pointeur facultatif vers une interface IWMDMOperation , un ensemble facultatif de méthodes utilisées pour améliorer le transfert de contenu à partir d’un périphérique multimédia. Ce paramètre doit avoir la valeur NULL si WMDM_CONTENT_FILE ou WMDM_CONTENT_FOLDER est spécifié dans fuMode.

Valeur retournée

Cette méthode retourne un code HRESULT. Toutes les méthodes d’interface dans Windows Media Gestionnaire de périphériques peuvent retourner l’une des classes de codes d’erreur suivantes :

  • Codes d’erreur COM standard
  • Codes d’erreur Windows convertis en valeurs HRESULT
  • Codes d’erreur Gestionnaire de périphériques Windows Media
Pour obtenir une liste complète des codes d’erreur possibles, consultez Codes d’erreur.

Remarques

Cette méthode remplace automatiquement les fichiers existants spécifiés par pwszFilename. Il peut réussir même si

Si l’indicateur WMDM_MODE_THREAD est spécifié, vous devez obtenir l’achèvement status en appelant IWMDMProgress2 ::End2 ou IWMDMProgress3 ::End3. Ces méthodes garantissent que l’opération est terminée et retournent également un HRESULT avec des informations de réussite ou d’échec.

Si une application utilise WMDM_MODE_THREAD et transmet un paramètre pProgress non null, l’application doit s’assurer que l’objet auquel appartient pProgress n’est pas détruit tant que l’opération de lecture n’est pas terminée, car Windows Media Gestionnaire de périphériques envoie des notifications de progression à cet objet. Cet objet ne peut être détruit qu’après avoir reçu une notification De fin. Si vous ne le faites pas, vous obtiendrez des violations d’accès.

Configuration requise

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

Voir aussi

IWMDMDevice ::GetStatus

IWMDMOperation Interface

IWMDMProgress Interface

IWMDMStorageControl, interface

IWMDMStorageControl ::Insert