FILTER_CANCEL_DIRECT_OID_REQUEST funzione di callback (ndis.h)

NDIS chiama la funzione FilterCancelDirectOidRequest del driver di filtro per annullare una richiesta OID diretta.

Nota È necessario dichiarare la funzione usando il tipo di FILTER_CANCEL_DIRECT_OID_REQUEST . Per altre informazioni, vedere la sezione Esempi seguenti.
 

Sintassi

FILTER_CANCEL_DIRECT_OID_REQUEST FilterCancelDirectOidRequest;

void FilterCancelDirectOidRequest(
  [in] NDIS_HANDLE FilterModuleContext,
  [in] PVOID RequestId
)
{...}

Parametri

[in] FilterModuleContext

Handle per l'area di contesto per il modulo di filtro di destinazione di questa richiesta. Il driver di filtro creato e inizializzato questa area di contesto nella funzione FilterAttach .

[in] RequestId

Identificatore di annullamento per la richiesta. Questo identificatore specifica le richieste OID dirette che corrispondono a questo valore nel membro RequestId della struttura NDIS_OID_REQUEST .

Valore restituito

nessuno

Osservazioni

FilterCancelDirectOidRequest è una funzione facoltativa. Se un driver di filtro non usa richieste OID dirette, può impostare il punto di ingresso per questa funzione su NULL quando chiama l'oggetto Funzione NdisFRegisterFilterDriver .

Quando NDIS chiama FilterCancelDirectOidRequest, il driver di filtro deve tentare di chiamare Funzione NdisFDirectOidRequestComplete non appena possibile.

Se un driver di filtro non accoda richieste OID dirette, il driver non è necessario per fornire una funzione FilterCancelDirectOidRequest . Se il driver di filtro non specifica un punto di ingresso FilterCancelDirectOidRequest , NDIS chiama la funzione di richiesta OID annulla del driver sottostante.

NDIS chiama la funzione FilterCancelDirectOidRequest quando l'origine della richiesta annulla la richiesta.

Se l'elaborazione della richiesta non è ancora completa in un driver di filtro, il driver chiama la funzione NdisFDirectOidRequestComplete con lo stato impostato su NDIS_STATUS_REQUEST_ABORTED.

Se il driver di filtro ha inoltrato la richiesta a un driver sottostante e l'elaborazione non è ancora completata, il driver di filtro chiama il Funzione NdisFCancelDirectOidRequest con il parametro OidRequest impostato sul valore inviato al driver sottostante.

NDIS chiama FilterCancelDirectOidRequest in IRQL <= DISPATCH_LEVEL.

Esempi

Per definire una funzione FilterCancelDirectOidRequest , è prima necessario fornire una dichiarazione di funzione che identifica il tipo di funzione che si sta definendo. Windows fornisce un set di tipi di funzione per i driver. La dichiarazione di una funzione usando i tipi di funzione consente l'analisi del codice per i driver, il verifica driver statico (SDV) e altri strumenti di verifica trovano errori ed è un requisito per la scrittura di driver per il sistema operativo Windows.

Ad esempio, per definire una funzione FilterCancelDirectOidRequest denominata "MyCancelDirectOidRequest ", usare il tipo di FILTER_CANCEL_DIRECT_OID_REQUEST come illustrato in questo esempio di codice:

FILTER_CANCEL_DIRECT_OID_REQUEST MyCancelDirectOidRequest;

Implementare quindi la funzione come indicato di seguito:

_Use_decl_annotations_
VOID
 MyCancelDirectOidRequest(
    NDIS_HANDLE  FilterModuleContext,
    PVOID  RequestId
    )
  {...}

Il tipo di funzione FILTER_CANCEL_DIRECT_OID_REQUEST è definito nel file di intestazione Ndis.h. Per identificare in modo più accurato gli errori durante l'esecuzione degli strumenti di analisi del codice, assicurarsi di aggiungere l'annotazione Use_decl_annotations alla definizione della funzione. L'annotazione Use_decl_annotations garantisce che vengano usate le annotazioni applicate al tipo di funzione FILTER_CANCEL_DIRECT_OID_REQUEST nel file di intestazione. Per altre informazioni sui requisiti per le dichiarazioni di funzione, vedere Dichiarazione di funzioni tramite tipi di ruolo per i driver NDIS.

Per informazioni su Use_decl_annotations, vedere Annotazione del comportamento della funzione.

Requisiti

Requisito Valore
Client minimo supportato Supportato in NDIS 6.1 e versioni successive.
Piattaforma di destinazione Windows
Intestazione ndis.h (includere Ndis.h)
IRQL <= DISPATCH_LEVEL
Regole di conformità DDI SpinLock(ndis), SpinLockBalanced(ndis), SpinLockDpr(ndis)

Vedi anche

FilterAttach

NDIS_OID_REQUEST

NdisFCancelDirectOidRequest

NdisFDirectOidRequestComplete

NdisFRegisterFilterDriver