Compartilhar via


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

O NDIS pode chamar um manipulador MiniportDisableInterruptEx de um driver de miniport para desabilitar interrupções para fins de diagnóstico e solução de problemas.

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

Sintaxe

MINIPORT_DISABLE_INTERRUPT MiniportDisableInterrupt;

void MiniportDisableInterrupt(
  [in] NDIS_HANDLE MiniportInterruptContext
)
{...}

Parâmetros

[in] MiniportInterruptContext

Um identificador para um bloco de informações de contexto. O driver de miniporto forneceu esse identificador no parâmetro MiniportInterruptContext que o driver de miniporto passou para o Função NdisMRegisterInterruptEx .

Retornar valor

Nenhum

Comentários

Um driver de miniporto deve fornecer um manipulador MiniportDisableInterruptEx se o driver chamar a função NdisMRegisterInterruptEx para registrar uma interrupção.

Os drivers de miniport devem desabilitar e habilitar interrupções, conforme explicado nas páginas de referência MiniportInterrupt e MiniportInterruptDpc .

O NDIS chama o MiniportEnableInterruptEx e
Funções MiniportDisableInterruptEx para habilitar e desabilitar interrupções para fins de diagnóstico e solução de problemas. Normalmente, MiniportEnableInterruptEx e MiniportDisableInterruptEx acessam recursos de driver de miniport que são compartilhados pela função MiniportInterrupt . Portanto, o NDIS chama esses manipuladores no DIRQL.

Exemplos

Para definir uma função MiniportDisableInterruptEx , 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 gravar drivers para o sistema operacional Windows.

Por exemplo, para definir uma função MiniportDisableInterruptEx chamada "MyDisableInterruptEx", use o tipo MINIPORT_DISABLE_INTERRUPT conforme mostrado neste exemplo de código:

MINIPORT_DISABLE_INTERRUPT MyDisableInterruptEx;

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

_Use_decl_annotations_
VOID
 MyDisableInterruptEx(
    NDIS_HANDLE  MiniportInterruptContext
    )
  {...}

O tipo de função MINIPORT_DISABLE_INTERRUPT é definido no arquivo de cabeçalho Ndis.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 MINIPORT_DISABLE_INTERRUPT 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 Com suporte no NDIS 6.0 e posterior.
Plataforma de Destino Windows
Cabeçalho ndis.h (inclua Ndis.h)
IRQL Consulte a seção Comentários

Confira também

MiniportEnableInterruptEx

MiniportInterrupt

MiniportInterruptDPC

NDIS_MINIPORT_INTERRUPT_CHARACTERISTICS

NdisMRegisterInterruptEx