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
Un 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 dell'IRP. Il driver deve usare questo valore restituito come valore restituito per il EvtDeviceWdmIrpDispatch o il EvtDeviceWdmIrpPreprocess funzione di callback 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.
Osservazioni:
Un driver chiama WdfDeviceWdmDispatchIrpToIoQueue per specificare una coda di destinazione per un IRP in ingresso.
Il driver può chiamare questo metodo dal relativo EvtDeviceWdmIrpPreprocess routine di callback o dal relativo EvtDeviceWdmIrpDispatch callback.
Se il driver chiama WdfDeviceWdmDispatchIrpToIoQueue da un EvtDeviceWdmIrpPreprocess funzione di callback, Il driver deve chiamare IoSkipCurrentIrpStackLocation o IoCopyCurrentIrpStackLocationToNext prima di chiamare WdfDeviceWdmDispatchIrpToIoQueue.
Per altre informazioni sulla specifica delle code per i runtime di integrazione man mano che arrivano, vedere Invio di indirizzi DI runtime di integrazione alle code di I/O.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
versione minima di KMDF | 1.11 |
versione minima di UMDF | 2.17 |
intestazione | wdfdevice.h (include Wdf.h) |
Biblioteca | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <= LIVELLO_DI_INVIO |
regole di conformità DDI | DriverCreate(kmdf), FwdIrpToIoQueueValid(kmdf) |