Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
[Si applica a KMDF e UMDF]
Il metodo WdfRequestFormatRequestUsingCurrentType formatta una richiesta di I/O specificata in modo che il driver possa inoltrare destinazione di I/O locale del driver.
Sintassi
VOID WdfRequestFormatRequestUsingCurrentType(
[in] WDFREQUEST Request
);
Parametri
[in] Request
Handle per un oggetto richiesta framework ricevuto dal driver da una delle code di I/O.
Valore restituito
Nessuno
Osservazioni
Se il driver fornisce un handle di oggetto non valido, si verifica un controllo di bug.
Quando il driver riceve una richiesta di I/O, a volte si vuole che il driver inoltra la richiesta, non modificata, alla destinazione di I/O locale. Per inoltrare tale richiesta, il driver deve:
- Chiamare WdfRequestFormatRequestUsingCurrentType per formattare l'oggetto richiesta in modo che il framework possa passare la richiesta alla destinazione I/O locale del driver.
- Chiamare WdfRequestSend per inviare la richiesta alla destinazione di I/O.
Esempi
L'esempio di codice seguente è un EvtIoDefault funzione di callback che inoltra ogni richiesta di I/O ricevuta, senza modifiche, alla destinazione di I/O locale del dispositivo.
VOID
MyEvtIoDefault(
WDFQUEUE Queue,
WDFREQUEST Request
)
{
WDF_REQUEST_SEND_OPTIONS options;
NTSTATUS status;
WdfRequestFormatRequestUsingCurrentType(Request);
WDF_REQUEST_SEND_OPTIONS_INIT(
&options,
WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET
);
ret = WdfRequestSend (
Request,
WdfDeviceGetIoTarget(WdfIoQueueGetDevice(Queue)),
&options
);
if (!ret) {
status = WdfRequestGetStatus(Request);
WdfRequestComplete(
Request,
status
);
}
return;
}
Fabbisogno
| Requisito | Valore |
|---|---|
| piattaforma di destinazione | Universale |
| versione minima di KMDF | 1.0 |
| versione minima di UMDF | 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), RequestFormattedValid(kmdf) |