Funzione WdfRequestSetCompletionRoutine (wdfrequest.h)
[Si applica a KMDF e UMDF]
Il metodo WdfRequestSetCompletionRoutine registra o deregista una routine di completamento per l'oggetto richiesta framework specificato.
Sintassi
void WdfRequestSetCompletionRoutine(
[in] WDFREQUEST Request,
[in, optional] PFN_WDF_REQUEST_COMPLETION_ROUTINE CompletionRoutine,
[in, optional] __drv_aliasesMem WDFCONTEXT CompletionContext
);
Parametri
[in] Request
Handle per un oggetto richiesta framework.
[in, optional] CompletionRoutine
Puntatore a una funzione di callback di CompletamentoRoutine , se il driver registra una routine di completamento o NULL del driver sta registrando una routine di completamento registrata in precedenza.
[in, optional] CompletionContext
Puntatore non tipizzato a informazioni di contesto definite dal driver che il framework passa alla funzione di callback di CompletamentoRoutine . Questo parametro è facoltativo e può essere NULL.
Valore restituito
nessuno
Osservazioni
Un controllo di bug si verifica se il driver fornisce un handle di oggetti non valido.
Se il driver inoltra le richieste di I/O, ma se si vuole che il driver venga avvisato quando un driver di livello inferiore completa la richiesta, il driver può fornire una funzione di callback Di completamentoRoutine e chiamare WdfRequestSetCompletionRoutine per registrare la funzione. Il framework chiama la funzione di callback dopo che un driver di livello inferiore completa la richiesta di I/O.
Per altre informazioni su WdfRequestSetCompletionRoutine, vedere Completamento delle richieste di I/O.
Esempio
Per un esempio di codice che usa WdfRequestSetCompletionRoutine, vedere WdfRequestSend.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Versione KMDF minima | 1.0 |
Versione UMDF minima | 2,0 |
Intestazione | wdfrequest.h (include Wdf.h) |
Libreria | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
Regole di conformità DDI | DriverCreate(kmdf), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), ReqCompletionRoutine(kmdf) |