Condividi tramite


MINIPORT_ENABLE_INTERRUPT funzione di callback (ndis.h)

NDIS può chiamare il gestore MiniportEnableInterruptEx di un driver miniport per abilitare gli interrupt a scopo di diagnostica e risoluzione dei problemi.

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

Sintassi

MINIPORT_ENABLE_INTERRUPT MiniportEnableInterrupt;

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

Parametri

[in] MiniportInterruptContext

Handle a un blocco di informazioni di contesto. Il driver miniport ha fornito questo handle nel parametro MiniportInterruptContext che il driver miniport passato al Funzione NdisMRegisterInterruptEx .

Valore restituito

nessuno

Osservazioni

Un driver miniport deve fornire un gestore MiniportEnableInterruptEx se il driver chiama la funzione NdisMRegisterInterruptEx per registrare un interrupt.

I driver Miniport devono disabilitare e abilitare gli interrupt come illustrato nelle pagine di riferimento MiniportInterrupt e MiniportInterruptDpc .

NDIS chiama MiniportEnableInterruptEx e Funzioni MiniportDisableInterruptEx per abilitare e disabilitare gli interrupt a scopo di diagnostica e risoluzione dei problemi. In genere , MiniportEnableInterruptEx e MiniportDisableInterruptEx accedono alle risorse del driver miniport condivise dalla funzione MiniportInterrupt . Di conseguenza, NDIS chiama questi gestori in DIRQL.

Esempi

Per definire una funzione MiniportEnableInterruptEx , è 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 MiniportEnableInterruptEx denominata "MyEnableInterruptEx", usare il tipo MINIPORT_ENABLE_INTERRUPT come illustrato nell'esempio di codice seguente:

MINIPORT_ENABLE_INTERRUPT MyEnableInterruptEx;

Implementare quindi la funzione come segue:

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

Il tipo di funzione MINIPORT_ENABLE_INTERRUPT è 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 MINIPORT_ENABLE_INTERRUPT 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 Vedere la sezione Osservazioni

Vedi anche

MiniportDisableInterruptEx

MiniportInterrupt

MiniportInterruptDPC

NDIS_MINIPORT_INTERRUPT_CHARACTERISTICS

NdisMRegisterInterruptEx