Méthode IPortableDeviceResources ::GetStream (portabledeviceapi.h)
La méthode GetStream obtient une interface IStream avec laquelle lire ou écrire les données de contenu dans un objet sur un appareil. L’interface récupérée vous permet de lire ou d’écrire dans les données de l’objet.
Syntaxe
HRESULT GetStream(
[in] LPCWSTR pszObjectID,
[in] REFPROPERTYKEY Key,
[in] const DWORD dwMode,
[in, out] DWORD *pdwOptimalBufferSize,
[out] IStream **ppStream
);
Paramètres
[in] pszObjectID
Pointeur vers une chaîne terminée par null qui contient l’ID d’objet de l’objet .
[in] Key
REFPROPERTYKEY qui spécifie la ressource à lire. Vous pouvez récupérer les clés de toutes les ressources de l’objet en appelant GetSupportedResources.
[in] dwMode
Un des modes d’accès suivants :
- STGM_READ (accès en lecture seule).)
- STGM_WRITE (accès en écriture seule.)
- STGM_READWRITE (accès en lecture/écriture).)
[in, out] pdwOptimalBufferSize
Pointeur facultatif vers un DWORD qui spécifie une estimation de la meilleure taille de mémoire tampon à utiliser lors de la lecture ou de l’écriture de données à l’aide de ppStream. Un pilote est nécessaire pour prendre en charge cette valeur.
[out] ppStream
Pointeur vers un pointeur d’interface IStream . Cette interface est utilisée pour lire et écrire des données dans l’objet . L’appelant doit libérer cette interface lorsqu’il a terminé avec elle.
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 |
|
Au moins l’un des arguments de pointeur requis était NULL. |
Remarques
Le flux récupéré ne peut pas lire le contenu d’un dossier de manière récursive. Pour copier toutes les ressources d’un objet, spécifiez WPD_RESOURCE_DEFAULT pour Key.
Si l’objet ne prend pas en charge les ressources, cette méthode retourne une erreur et ppStream a la valeur NULL.
Les applications doivent utiliser la taille de mémoire tampon retournée par pdwOptimalBufferSize lors de l’allocation de la mémoire tampon pour les opérations de lecture ou d’écriture.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | portabledeviceapi.h |
Bibliothèque | PortableDeviceGUIDs.lib |