Compartilhar via


Função KeInsertQueueDpc (wdm.h)

A rotina KeInsertQueueDpc enfileira um DPC para execução.

Sintaxe

BOOLEAN KeInsertQueueDpc(
  [in, out]      PRKDPC                 Dpc,
  [in, optional] PVOID                  SystemArgument1,
  [in, optional] __drv_aliasesMem PVOID SystemArgument2
);

Parâmetros

[in, out] Dpc

Ponteiro para a estrutura KDPC do objeto DPC. Essa estrutura deve ter sido inicializada por KeInitializeDpc ou KeInitializeThreadedDpc.

[in, optional] SystemArgument1

Especifica dados de contexto determinados pelo driver. Esse valor é passado como o parâmetro SystemArgument1 para a rotina CustomDpc ou CustomThreadedDpc do objeto DPC.

[in, optional] SystemArgument2

Especifica dados de contexto determinados pelo driver. Esse valor é passado como o parâmetro SystemArgument2 para a rotina CustomDpc ou CustomThreadedDpc do objeto DPC.

Retornar valor

Se o objeto DPC especificado não estiver atualmente em uma fila DPC, KeInsertQueueDpc enfileirará o DPC e retornará TRUE.

Comentários

Se o objeto DPC especificado já tiver sido enfileirado, nenhuma operação será executada, exceto para retornar FALSE. Caso contrário, o objeto DPC será inserido em uma fila DPC. Para obter mais informações sobre filas DPC, consulte Organização de Filas DPC.

Observe que um objeto DPC específico e a função que ele representa podem ser enfileirados para execução apenas uma vez em qualquer momento específico.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível a partir do Windows 2000.
Plataforma de Destino Universal
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Qualquer nível
Regras de conformidade de DDI HwStorPortProhibitedDIs(storport), MarkingQueuedIrps(wdm)

Confira também

CustomDpc

CustomThreadedDpc

KeInitializeDpc

KeRemoveQueueDpc