Compartir a través de


Función IoCsqInitialize (wdm.h)

El IoCsqInitialize rutina inicializa la tabla de distribución de cola irP segura para cancelación del controlador.

Sintaxis

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
);

Parámetros

[out] Csq

Puntero a la estructura de IO_CSQ que se va a inicializar IoCsqInitialize.

[in] CsqInsertIrp

Puntero a la función de irP definida por el controlador CsqInsertIrp para la cola irP segura para cancelar el controlador.

[in] CsqRemoveIrp

Puntero a la función de CsqRemoveIr p definida por el controlador para la función IRP segura para cancelar el controlador.

[in] CsqPeekNextIrp

Puntero a la función de CsqPeekNextIr p definida por el controlador para la cola irP segura para cancelar el controlador.

[in] CsqAcquireLock

Puntero a la función de CsqAcquireLock definida por el controlador para la cola irP segura para cancelar el controlador.

[in] CsqReleaseLock

Puntero a la función de CsqReleaseLock definida por el controlador para la cola irP segura para cancelar el controlador.

[in] CsqCompleteCanceledIrp

Puntero a la función de CsqCompleteCanceledIr p definida por el controlador para la cola irP segura para cancelar el controlador.

Valor devuelto

Esta rutina devuelve STATUS_SUCCESS correcto o el código de error NTSTATUS adecuado en caso de error.

Observaciones

La rutina IoCsqInitialize inicializa una estructura de IO_CSQ que describe la cola irP segura para cancelación de un controlador. Los controladores también pueden usar ioCsqInitializeEx para crear una cola IRP con funcionalidades extendidas. Para obtener más información, consulte Cancel-Safe colas de IRP.

Tenga en cuenta que ioCsqrutinas xxx usan el DriverContext[3] miembro del IRP para contener información de contexto de IRP. Los controladores que usan estas rutinas para poner en cola los IRP deben dejar ese miembro sin usar.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible en Windows XP y versiones posteriores del sistema operativo Windows. Los controladores que también deben funcionar para Windows 2000 y Windows 98/Me pueden vincular a Csq.lib para usar la rutina.
de la plataforma de destino de Universal
encabezado de wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL Cualquier nivel

Consulte también

CsqAcquireLock

CsqCompleteCanceledIrp

CsqInsertIrp

CsqInsertIrpEx

CsqPeekNextIrp

CsqReleaseLock

CsqRemoveIrp

IO_CSQ

IoCsqInitializeEx

ioCsqInsertIrp

ioCsqInsertIrpEx

ioCsqRemoveIrp

IoCsqRemoveNextIrp