Funzione WdfRequestSetInformation (wdfrequest.h)
[Si applica a KMDF e UMDF]
Il metodo WdfRequestSetInformation imposta le informazioni sullo stato di completamento per una richiesta di I/O specificata.
Sintassi
void WdfRequestSetInformation(
[in] WDFREQUEST Request,
[in] ULONG_PTR Information
);
Parametri
[in] Request
Handle per un oggetto richiesta del framework.
[in] Information
Informazioni sullo stato di completamento definite dal driver per la richiesta.
Valore restituito
nessuno
Osservazioni
Se il driver fornisce un handle di oggetto non valido, si verifica un controllo di bug.
I driver basati su framework usano il metodo WdfRequestSetInformation per fornire informazioni specifiche del driver associate al completamento di una richiesta di I/O, ad esempio il numero di byte trasferiti. Altri driver possono ottenere queste informazioni chiamando WdfRequestGetInformation.
I driver possono anche specificare informazioni sullo stato di completamento chiamando WdfRequestCompleteWithInformation.
Per altre informazioni su WdfRequestSetInformation, vedere Completamento delle richieste di I/O.
Esempio
L'esempio di codice seguente imposta le informazioni di completamento della richiesta basate sul valore del codice di controllo I/O ricevuto da una funzione di callback EvtIoDeviceControl .
VOID
MyEvtIoDeviceControl(
IN WDFQUEUE Queue,
IN WDFREQUEST Request,
IN size_t OutputBufferLength,
IN size_t InputBufferLength,
IN ULONG IoControlCode
)
{
switch (IoControlCode) {
case MY_IOCTL_CODE_1:
WdfRequestSetInformation(
Request,
VALUE_1
);
status = STATUS_SUCCESS;
break;
case MY_IOCTL_CODE_2:
WdfRequestSetInformation(
Request,
VALUE_2
);
status = STATUS_SUCCESS;
break;
case MY_IOCTL_CODE_3:
WdfRequestSetInformation(
Request,
VALUE_3
);
status = STATUS_SUCCESS;
break;
default:
status = STATUS_INVALID_DEVICE_REQUEST;
break;
}
WdfRequestComplete(
Request,
status
);
}
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) |