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 da IoCsqInitializeEx.
[in] CsqInsertIrp
Puntatore alla funzione CsqInsertIrpEx definita dal driver per la coda IRP annullabile del driver.
[in] CsqRemoveIrp
Puntatore alla funzione CsqRemoveIrp definita dal driver per la coda IRP annullata.
[in] CsqPeekNextIrp
Puntatore alla funzione CsqPeekNextIrp definita dal driver per la coda IRP annullabile del driver.
[in] CsqAcquireLock
Puntatore alla funzione CsqAcquireLock definita dal driver per la coda IRP annullata.
[in] CsqReleaseLock
Puntatore alla funzione CsqReleaseLock definita dal driver per la coda IRP annullabile del driver.
[in] CsqCompleteCanceledIrp
Puntatore alla funzione CsqCompleteCanceledIrp definita dal driver per la coda IRP annullabile del driver.
Valore restituito
IoCsqInitializeEx restituisce STATUS_SUCCESS in caso di esito positivo o il codice di errore appropriato in caso di errore.
Commenti
Le routine IoCsqInitialize e IoCsqInitializeEx inizializzano una struttura IO_CSQ che descrive la coda IRP annullata 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 le routine IoCsqXxx usano il membro DriverContext[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.
Requisiti
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 |