Funzione IoCsqInitialize (wdm.h)
La routine IoCsqInitialize inizializza la tabella di invio della coda IRP di annullamento sicura del driver.
Sintassi
NTSTATUS IoCsqInitialize(
[out] PIO_CSQ Csq,
[in] PIO_CSQ_INSERT_IRP 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 IoCsqInitialize.
[in] CsqInsertIrp
Puntatore alla funzione CsqInsertIrp definita dal driver per la coda IRP annullata.
[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
Questa routine restituisce STATUS_SUCCESS in caso di esito positivo o il codice di errore NTSTATUS appropriato in caso di errore.
Commenti
La routine IoCsqInitialize inizializza una struttura IO_CSQ che descrive la coda IRP sicura per l'annullamento di un driver. I driver possono anche usare IoCsqInitializeEx per creare una coda IRP con funzionalità estese. Per altre informazioni, vedere Cancel-Safe IRP Queues.For more information, see Cancel-Safe IRP Queues.
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 XP e versioni successive del sistema operativo Windows. I driver che devono funzionare anche per 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 |