FILTER_DETACH funzione di callback (ndis.h)

NDIS chiama la funzione FilterDetach di un driver di filtro per rilasciare tutte le risorse associate a un modulo di filtro.

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

Sintassi

FILTER_DETACH FilterDetach;

void FilterDetach(
  [in] NDIS_HANDLE FilterModuleContext
)
{...}

Parametri

[in] FilterModuleContext

Handle per l'area di contesto per il modulo di filtro che NDIS rimuove dallo stack di driver. Il driver di filtro ha creato e inizializzato questa area di contesto nella funzione FilterAttach .

Valore restituito

nessuno

Osservazioni

FilterDetach è una funzione obbligatoria. NDIS chiama FilterDetach per rimuovere un modulo di filtro da uno stack di driver. NDIS chiama FilterDetach quando il modulo di filtro si trova nello stato Sospeso .

FilterDetach libera le aree di contesto del driver e altre risorse (ad esempio i pool di buffer) per il modulo di filtro interessato.

Dopo che il driver di filtro viene restituito da FilterDetach, il modulo di filtro si trova nello stato Scollegato .

NDIS chiama FilterDetach in IRQL = PASSIVE_LEVEL.

Esempi

Per definire una funzione FilterDetach , è 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 con i tipi di funzione consente di eseguire l'analisi del codice per i driver, l'SDV ( Static Driver Verifier ) e altri strumenti di verifica rilevano gli errori ed è un requisito per la scrittura dei driver per il sistema operativo Windows.

Ad esempio, per definire una funzione FilterDetach denominata "MyDetach", usare il tipo FILTER_DETACH , come illustrato nell'esempio di codice seguente:

FILTER_DETACH MyDetach;

Implementare quindi la funzione come segue:

_Use_decl_annotations_
VOID
 MyDetach(
    NDIS_HANDLE  FilterModuleContext
    )
  {...}

Il tipo di funzione FILTER_DETACH è definito nel file di intestazione Ndis.h. Per identificare in modo più accurato gli errori quando si eseguono gli 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 utilizzate le annotazioni applicate al tipo di funzione FILTER_DETACH nel file di intestazione. Per altre informazioni sui requisiti per le dichiarazioni di funzione, vedere Dichiarazione di funzioni tramite tipi di ruolo di funzione per i driver NDIS.

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

Requisiti

Requisito Valore
Client minimo supportato Supportato in NDIS 6.0 e versioni successive.
Piattaforma di destinazione Windows
Intestazione ndis.h (include Ndis.h)
IRQL PASSIVE_LEVEL

Vedi anche

FilterAttach