Funzione SerCxProgressReceive (sercx.h)
Il metodo SerCxProgressReceive segnala lo stato di avanzamento dell'operazione di lettura (ricezione) corrente.
Sintassi
NTSTATUS SerCxProgressReceive(
[in] WDFDEVICE Device,
[in] ULONG BytesReceived,
[in] SERCX_STATUS ReceiveStatus
);
Parametri
[in] Device
Handle WDFDEVICE per l'oggetto dispositivo framework che rappresenta il controller seriale.
[in] BytesReceived
Numero di byte di dati caricati dal chiamante nel buffer di ricezione ottenuto dalla chiamata più recente al metodo SerCxRetrieveReceiveBuffer.
[in] ReceiveStatus
Stato corrente dell'operazione di ricezione. Impostare questo parametro su uno dei valori seguenti:
- SerCxStatusSuccess
- SerCxStatusCancelled
- SerCxStatusTimeout
Valore restituito
SerCxProgressReceive restituisce STATUS_SUCCESS se ha esito positivo. I valori restituiti di errore possibili includono i codici di stato seguenti.
Codice restituito | Descrizione |
---|---|
|
Il valore byte |
|
Il metodo è stato chiamato in irQL errato; o l'handle WDFDEVICE non è valido; o il driver non ha ottenuto un buffer di input per questa operazione di ricezione. |
|
L'operazione di ricezione è già stata annullata. |
Osservazioni
Il driver del controller seriale chiama questo metodo per segnalare lo stato di avanzamento di un'operazione di lettura in sospeso. In genere, il driver del controller seriale chiama questo metodo dal callback di completamento DMA (se il driver usa DMA per leggere i dati) o dalla funzione DPC di trasmissione/ricezione (se viene usato PIO).
Se il SerCxProgressReceive non completa tutte le operazioni in sospeso per l'operazione di lettura, il chiamante deve chiamare il metodo SerCxRetrieveReceiveBuffer per ottenere un nuovo descrittore del buffer e continuare a ricevere i dati.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile a partire da Windows 8. |
piattaforma di destinazione | Universale |
intestazione |
sercx.h |
IRQL | <= DISPATCH_LEVEL |