Metodo IStreamAsync::ReadAsync (shobjidl.h)
Legge le informazioni da un flusso in modo asincrono. Ad esempio, Shell implementa questa interfaccia sugli elementi di file durante il trasferimento asincrono.
Sintassi
HRESULT ReadAsync(
[out] void *pv,
[in] DWORD cb,
[out, optional] LPDWORD pcbRead,
[in] LPOVERLAPPED lpOverlapped
);
Parametri
[out] pv
Tipo: void*
Quando questo metodo viene restituito correttamente, restituisce un buffer con lunghezza di byte cb e contiene i byte di schedeRead delle informazioni dell'operazione di lettura.
[in] cb
Tipo: DWORD
Numero di byte da leggere dal flusso.
[out, optional] pcbRead
Tipo: LPDWORD
Puntatore a un valore DWORD che, quando questo metodo restituisce correttamente, indica il numero effettivo di byte letti nel buffer a cui punta pv. Questo valore può essere NULL.
[in] lpOverlapped
Tipo: LPOVERLAPPED
Puntatore a una struttura OVERLAPPED che contiene informazioni utilizzate nell'operazione di lettura asincrona.
Valore restituito
Tipo: HRESULT
Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
IStreamAsync::ReadAsync deve reimpostare l'evento specificato dal membro hEvent della struttura OVERLAPPED a uno stato non firmato quando inizia l'operazione di input/output (I/O).
Questo metodo è stato implementato in Shell come wrapper sottile per l'API ReadFile pubblica.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | shobjidl.h |