Méthode IStreamAsync ::ReadAsync (shobjidl.h)
Lit les informations d’un flux de manière asynchrone. Par exemple, l’interpréteur de commandes implémente cette interface sur les éléments de fichier lors de leur transfert de manière asynchrone.
Syntaxe
HRESULT ReadAsync(
[out] void *pv,
[in] DWORD cb,
[out, optional] LPDWORD pcbRead,
[in] LPOVERLAPPED lpOverlapped
);
Paramètres
[out] pv
Type : void*
Lorsque cette méthode retourne correctement, retourne une mémoire tampon de longueur cb octets et contenant des octets pcbRead d’informations provenant de l’opération de lecture.
[in] cb
Type : DWORD
Nombre d’octets à lire à partir du flux.
[out, optional] pcbRead
Type : LPDWORD
Pointeur vers une valeur DWORD qui, lorsque cette méthode retourne correctement, indique le nombre réel d’octets lus à la mémoire tampon pointée par pv. Cette valeur peut être NULL.
[in] lpOverlapped
Type : LPOVERLAPPED
Pointeur vers une structure OVERLAPPED qui contient des informations utilisées dans l’opération de lecture asynchrone.
Valeur retournée
Type : HRESULT
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
IStreamAsync ::ReadAsync doit réinitialiser l’événement spécifié par le membre hEvent de la structure OVERLAPPED à un état non signé lorsqu’il commence l’opération d’entrée/sortie (E/S).
Cette méthode a été implémentée dans l’interpréteur de commandes en tant que wrapper mince autour de l’API ReadFile publique.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | shobjidl.h |