Funzione IoCsqInitializeEx (wdm.h)
La routine IoCsqInitializeEx inizializza la tabella dispatch per una coda IRP annullata.
Sintassi
NTSTATUS IoCsqInitializeEx(
[out] PIO_CSQ Csq,
[in] PIO_CSQ_INSERT_IRP_EX CsqInsertIrp,
[in] PIO_CSQ_REMOVE_IRP CsqRemoveIrp,
[in] PIO_CSQ_PEEK_NEXT_IRP CsqPeekNextIrp,
[in] PIO_CSQ_ACQUIRE_LOCK CsqAcquireLock,
[in] PIO_CSQ_RELEASE_LOCK CsqReleaseLock,
[in] PIO_CSQ_COMPLETE_CANCELED_IRP CsqCompleteCanceledIrp
);
Parametri
[out] Csq
Puntatore alla struttura IO_CSQ da inizializzare IoCsqInitializeEx.
[in] CsqInsertIrp
Puntatore alla funzione di csqInsertIrpEx definita dal driver per la coda IRP annullata del driver.
[in] CsqRemoveIrp
Puntatore alla funzione csqRemoveIrp definita dal driver per la coda IRP annullata del driver.
[in] CsqPeekNextIrp
Puntatore alla funzione di definita dal driver CsqPeekNextIrp per la coda IRP annulla-sicura del driver.
[in] CsqAcquireLock
Puntatore alla funzione di csqAcquireLock definita dal driver per la coda IRP annullata del driver.
[in] CsqReleaseLock
Puntatore alla funzione csqReleaseLock definita dal driver per la coda IRP di annullamento sicura del driver.
[in] CsqCompleteCanceledIrp
Puntatore alla funzione di csqCompleteCanceledIrp definita dal driver per la coda IRP annullata del driver.
Valore restituito
IoCsqInitializeEx restituisce STATUS_SUCCESS in caso di esito positivo o il codice di errore appropriato in caso di errore.
Osservazioni
Le routine IoCsqInitialize e IoCsqInitializeEx inizializzano una struttura di IO_CSQ che descrive la coda IRP di annullamento di un driver. È possibile usare IoCsqInitializeEx per specificare una coda IRP con funzionalità estese anziché una specificata da IoCsqInitialize:
- Il driver implementa una routine csqInsertIrpEx anziché una routine CsqInsertIrp. CsqInsertIrpEx accetta un parametro aggiuntivo InsertContext. Quando il driver chiama IoCsqInsertIrpEx per inserire l'IRP, specifica il valore passato come InsertContext.
- IoCsqInsertIrpEx restituisce il valore restituito di CsqInsertIrpEx. I driver possono utilizzare il valore restituito per indicare se un'operazione di inserimento ha avuto esito positivo o negativo.
Si noti che routine IoCsqXxx utilizzano il DriverContextmembro [3] dell'IRP per contenere le informazioni sul contesto IRP. I driver che usano queste routine per accodare i runtime di integrazione devono lasciare inutilizzati il membro.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile in Windows Server 2003 e versioni successive del sistema operativo Windows. La routine è disponibile anche nella libreria Csq.lib fornita con Windows Driver Kit (WDK) e Driver Development Kit (DDK) per Windows Server 2003. I driver che devono funzionare anche in Windows XP, Windows 2000 e Windows 98/Me possono invece collegarsi a Csq.lib per usare la routine. |
piattaforma di destinazione | Universale |
intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
libreria | NtosKrnl.lib |
dll | NtosKrnl.exe |
IRQL | Qualsiasi livello |