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

O NDIS chama a função MiniportCancelOidRequest de um driver de miniport para cancelar uma solicitação OID.

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

Sintaxe

MINIPORT_CANCEL_OID_REQUEST MiniportCancelOidRequest;

void MiniportCancelOidRequest(
  [in] NDIS_HANDLE MiniportAdapterContext,
  [in] PVOID RequestId
)
{...}

Parâmetros

[in] MiniportAdapterContext

Um identificador para uma área de contexto que o driver de miniporto alocou em sua função MiniportInitializeEx . O driver de miniporta usa essa área de contexto para manter informações de estado para um adaptador de miniporto.

[in] RequestId

Um identificador de cancelamento para a solicitação. Esse identificador especifica as estruturas de NDIS_OID_REQUEST que estão sendo canceladas.

Retornar valor

Nenhum

Comentários

Um driver especifica o ponto de entrada MiniportCancelOidRequest quando ele chama o Função NdisMRegisterMiniportDriver .

Quando o NDIS chama MiniportCancelOidRequest, o driver de miniport deve tentar chamar a função NdisMOidRequestComplete assim que possível.

Os parâmetros de solicitação são definidos na estrutura NDIS_OID_REQUEST em OidRequest .

O NDIS chama MiniportCancelOidRequest quando o originador da solicitação cancela a solicitação ou quando o tempo limite, especificado no membro Timeout , expira.

Se o processamento da solicitação ainda não estiver concluído em um driver de miniporto, o driver chamará a função NdisMOidRequestComplete com o status definido como NDIS_STATUS_REQUEST_ABORTED.

Se o processamento da solicitação ainda não estiver concluído em um driver intermediário e a solicitação tiver sido propagada para um driver subjacente, o driver intermediário chamará a função NdisCancelOidRequest com o parâmetro OidRequest definido como o valor que ele enviou para o driver subjacente.

O NDIS chama MiniportCancelOidRequest em IRQL <= DISPATCH_LEVEL.

Exemplos

Para definir uma função MiniportCancelOidRequest , 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 MiniportCancelOidRequest chamada "MyCancelOidRequest", use o tipo MINIPORT_CANCEL_OID_REQUEST conforme mostrado neste exemplo de código:

MINIPORT_CANCEL_DIRECT_OID_REQUEST MyCancelOidRequest;

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

_Use_decl_annotations_
VOID
 MyCancelRequest(
    NDIS_HANDLE  MiniportAdapterContext,
    PVOID  RequestId
    )
  {...}

O tipo de função MINIPORT_CANCEL_OID_REQUEST é 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_CANCEL_OID_REQUEST 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 <= DISPATCH_LEVEL

Confira também

MiniportInitializeEx

NDIS_OID_REQUEST

NdisCancelOidRequest

NdisMOidRequestComplete

NdisMRegisterMiniportDriver