Compartilhar via


NDIS_PD_ALLOCATE_QUEUE função de retorno de chamada (ndis.h)

A plataforma PacketDirect (PD) chama a função NdisPDAllocateQueue de um driver de miniporta compatível com PD para alocar uma fila.

Nota Você deve declarar a função usando o tipo NDIS_PD_ALLOCATE_QUEUE . Para obter mais informações, consulte a seção Exemplos a seguir.

 

Sintaxe

NDIS_PD_ALLOCATE_QUEUE NdisPdAllocateQueue;

NTSTATUS() NdisPdAllocateQueue(
  [in] NDIS_PD_PROVIDER_HANDLE ProviderHandle,
  [in] const NDIS_PD_QUEUE_PARAMETERS *QueueParameters,
       NDIS_PD_QUEUE **NdisPDQueue
)
{...}

Parâmetros

[in] ProviderHandle

Um identificador de provedor que identifica o objeto de provedor do driver de miniporta compatível com PD.

[in] QueueParameters

Todos os parâmetros associados à Fila. Para obter mais informações, consulte a estrutura NDIS_PD_QUEUE_PARAMETERS .

NdisPDQueue

Um ponteiro para a Fila que deve ser alocada. Para obter mais informações, consulte a estrutura NDIS_PD_QUEUE .

Retornar valor

Essa função retorna STATUS_SUCCESS quando é concluída com êxito, caso contrário, retorna o código de erro apropriado.

Comentários

Exemplos

Para definir uma função NdisPDAllocateQueue , primeiro você deve fornecer uma declaração de função que identifique o tipo de função que você está definindo. O Windows fornece um conjunto de tipos de função para drivers. Declarar uma função usando os tipos de função ajuda a Análise de Código para Drivers, SDV ( Verificador de Driver Estático ) e outras ferramentas de verificação a encontrar erros e é um requisito para escrever drivers para o sistema operacional Windows.

Por exemplo, para definir uma função NdisPDAllocateQueue chamada "MyPDAllocateQueue", use o tipo NDIS_PD_ALLOCATE_QUEUE conforme mostrado neste exemplo de código:

NDIS_PD_ALLOCATE_QUEUE MyPDAllocateQueue;

Em seguida, implemente sua função da seguinte maneira:

_Use_decl_annotations_
NTSTATUS
 MyPDAllocateQueue(
    NDIS_PD_PROVIDER_HANDLE  ProviderHandle,
    CONST NDIS_PD_QUEUE_PARAMETERS*  QueueParameters,
    NDIS_PD_QUEUE**  NdisPDQueue
    )
  {...}

O tipo de função NDIS_PD_ALLOCATE_QUEUE é definido no arquivo de cabeçalho Ntddndis.h. Para identificar erros com mais precisão ao executar as ferramentas de análise de código, adicione a anotação Use_decl_annotations à sua definição de função. A anotação Use_decl_annotations garante que as anotações aplicadas ao tipo de função NDIS_PD_ALLOCATE_QUEUE no arquivo de cabeçalho sejam usadas. Para obter mais informações sobre os requisitos para declarações de função, consulte Declarando funções usando tipos de função de função para drivers NDIS.

Para obter informações sobre Use_decl_annotations, consulte Anotando o comportamento da função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10
Servidor mínimo com suporte Windows Server 2016
Plataforma de Destino Windows
Cabeçalho ndis.h
IRQL PASSIVE_LEVEL