Funzione SerCxProgressTransmit (sercx.h)
Il metodo SerCxProgressTransmit segnala lo stato di avanzamento dell'operazione di scrittura (trasmissione) corrente.
Sintassi
NTSTATUS SerCxProgressTransmit(
[in] WDFDEVICE Device,
[in] ULONG BytesTransmitted,
[in] SERCX_STATUS TransmitStatus
);
Parametri
[in] Device
Handle WDFDEVICE per l'oggetto dispositivo framework che rappresenta il controller seriale.
[in] BytesTransmitted
Numero di byte di dati copiati dal chiamante dal buffer di trasmissione ottenuto dalla chiamata più recente al metodo SerCxRetrieveTransmitBuffer.
[in] TransmitStatus
Stato corrente dell'operazione di trasmissione. Impostare questo parametro su uno dei valori seguenti:
- SerCxStatusSuccess
- SerCxStatusCancelled
Valore restituito
SerCxProgressTransmit restituisce STATUS_SUCCESS se ha esito positivo. I valori restituiti di errore possibili includono i codici di stato seguenti.
Codice restituito | Descrizione |
---|---|
|
Il valore |
|
Il metodo è stato chiamato in irQL errato; o l'handle WDFDEVICE non è valido; o il driver non ha ottenuto un buffer di output per questa operazione di trasmissione. |
|
L'operazione di trasmissione è già stata annullata. |
Osservazioni
Il driver del controller seriale chiama questo metodo per segnalare lo stato di avanzamento di un'operazione di scrittura 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 la chiamata SerCxProgressTransmit non completa tutte le operazioni in sospeso per l'operazione di scrittura, il chiamante deve chiamare SerCxRetrieveTransmitBuffer di nuovo per ottenere un nuovo descrittore del buffer e continuare a trasmettere i dati.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile a partire da Windows 8. |
piattaforma di destinazione | Universale |
intestazione |
sercx.h |
IRQL | <= DISPATCH_LEVEL |