Condividi tramite


Metodo IWMDMStorageControl::Read (mswmdm.h)

Il metodo Read copia l'archiviazione corrente nel computer.

Sintassi

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

Parametri

[in] fuMode

Modalità di elaborazione usata per l'operazione di lettura . Nella tabella seguente sono elencate le modalità di elaborazione che possono essere specificate nel parametro fuMode . È necessario specificare esattamente una delle prime due modalità e esattamente una delle ultime tre (WMDM_CONTENT). Se vengono specificati sia WMDM_MODE_BLOCK che WMDM_MODE_THREAD, viene usata la modalità di blocco.

Mode Descrizione
WMDM_MODE_BLOCK L'operazione viene eseguita usando l'elaborazione in modalità blocco. La chiamata non restituirà fino al termine dell'operazione.
WMDM_MODE_THREAD L'operazione viene eseguita usando l'elaborazione in modalità thread. La chiamata restituirà immediatamente e l'operazione viene eseguita in un thread in background.
WMDM_CONTENT_FILE Il chiamante richiede che Windows Media Gestione dispositivi leggere il file dal dispositivo portatile in un file sul disco rigido. Il chiamante deve indicare, nel parametro pwszFileName , il percorso completo e il nome del file.
WMDM_CONTENT_FOLDER Il chiamante richiede che Windows Media Gestione dispositivi leggere la cartella specificata, il contenuto della cartella e il contenuto di tutte le sottocartelle dal dispositivo portatile sul disco rigido. Il chiamante deve indicare il percorso completo della directory di destinazione nel disco rigido nel parametro pwszFileName . Attualmente non è supportato da alcun provider di servizi fornito da Microsoft.
WMDM_CONTENT_OPERATIONINTERFACE L'interfaccia IWMDMOperation implementata dall'applicazione viene usata per leggere i dati anziché passare un nome di file.

[in] pwszFile

Puntatore a un nome di file completo nel computer in cui il contenuto del dispositivo portatile viene copiato. Il nome del file deve includere un'estensione; l'estensione dalla risorsa di archiviazione corrente nel dispositivo non verrà usata. Se WMDM_CONTENT_OPERATIONINTERFACE viene specificato in fuMode, questo parametro viene ignorato.

[in] pProgress

Puntatore facoltativo a un'interfaccia IWMDMProgress implementata dall'applicazione per tenere traccia dello stato di avanzamento delle operazioni in corso.

[in] pOperation

Puntatore facoltativo a un'interfaccia IWMDMOperation , un set facoltativo di metodi usati per migliorare il trasferimento di contenuto da un dispositivo multimediale. Questo parametro deve essere NULL se WMDM_CONTENT_FILE o WMDM_CONTENT_FOLDER è specificato in fuMode.

Valore restituito

Il metodo restituisce un HRESULT. Tutti i metodi di interfaccia in Windows Media Gestione dispositivi possono restituire una delle classi di codici di errore seguenti:

  • Codici di errore COM standard
  • Codici di errore di Windows convertiti in valori HRESULT
  • Codici di errore di Windows Media Gestione dispositivi
Per un elenco completo dei codici di errore possibili, vedere Codici di errore.

Commenti

Questo metodo sovrascriverà automaticamente i file esistenti specificati da pwszFilename. Può avere esito positivo anche se

Se viene specificato il flag WMDM_MODE_THREAD, è necessario ottenere lo stato di completamento chiamando IWMDMProgress2::End2 o IWMDMProgress3::End3. Questi metodi assicureranno che l'operazione sia completata e restituirà anche un HRESULT con informazioni sull'esito positivo o negativo.

Se un'applicazione usa WMDM_MODE_THREAD e passa un parametro pProgress diverso da null, l'applicazione deve assicurarsi che l'oggetto a cui appartiene pProgress non venga eliminato fino al completamento dell'operazione di lettura, perché Windows Media Gestione dispositivi invierà notifiche di stato a questo oggetto. Questo oggetto può essere eliminato solo dopo la ricezione di una notifica End. Questa operazione comporta violazioni di accesso.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione mswmdm.h
Libreria Mssachlp.lib

Vedi anche

IWMDMDevice::GetStatus

Interfaccia IWMDMOperation

Interfaccia IWMDMProgress

Interfaccia IWMDMStorageControl

IWMDMStorageControl::Insert