Funzione WdfDeviceWdmDispatchIrpToIoQueue (wdfdevice.h)
[Si applica a KMDF e UMDF]
Il metodo WdfDeviceWdmDispatchIrpToIoQueue inoltra l'IRP a una coda di I/O specificata.
Sintassi
NTSTATUS WdfDeviceWdmDispatchIrpToIoQueue(
[in] WDFDEVICE Device,
[in] PIRP Irp,
[in] WDFQUEUE Queue,
[in] ULONG Flags
);
Parametri
[in] Device
Handle per un oggetto dispositivo framework.
[in] Irp
Puntatore a una struttura IRP.
[in] Queue
Handle per un oggetto coda del framework.
[in] Flags
OR bit per bit di flag tipizzato di WDF_DISPATCH_IRP_TO_IO_QUEUE_FLAGS.
Valore restituito
Il metodo WdfDeviceWdmDispatchIrpToIoQueue restituisce un valore NTSTATUS fornito dal framework o dal driver in seguito all'elaborazione di IRP. Il driver deve usare questo valore restituito come valore restituito per evtDeviceWdmIrpDispatch o la funzione di callback EvtDeviceWdmIrpPreprocess che ha chiamato WdfDeviceWdmDispatchIrpToIoQueue.
Se un driver KMDF fornisce un handle di oggetto non valido, si verifica un controllo di bug. Se un driver UMDF fornisce un handle non valido, il processo host del driver termina.
Commenti
Un driver chiama WdfDeviceWdmDispatchIrpToIoQueue per specificare una coda di destinazione per un IRP in ingresso.
Il driver può chiamare questo metodo dalla routine di callback EvtDeviceWdmIrpPreprocess o dal callback EvtDeviceWdmIrpDispatch .
Se il driver chiama WdfDeviceWdmDispatchIrpToIoQueue dall'interno di una funzione di callback EvtDeviceWdmIrpPreprocess , il driver deve chiamare IoSkipCurrentIrpStackLocation o IoCopyCurrentIrpStackLocationToNext prima di chiamare WdfDeviceWdmDispatchIrpToIoQueue.
Per altre informazioni sulla specifica delle code per i runtime di integrazione non appena arrivano, vedere Invio di indirizzi IRP alle code di I/O.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Versione KMDF minima | 1.11 |
Versione UMDF minima | 2.17 |
Intestazione | wdfdevice.h (include Wdf.h) |
Libreria | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <= DISPATCH_LEVEL |
Regole di conformità DDI | DriverCreate(kmdf), FwdIrpToIoQueueValid(kmdf) |