Condividi tramite


Funzione NdisRegisterProtocolDriver (ndis.h)

Un driver di protocollo chiama la funzione NdisRegisterProtocolDriver per registrare le funzioni ProtocolXxx con NDIS.

Sintassi

NDIS_STATUS NdisRegisterProtocolDriver(
  [in, optional] NDIS_HANDLE                           ProtocolDriverContext,
  [in]           PNDIS_PROTOCOL_DRIVER_CHARACTERISTICS ProtocolCharacteristics,
  [out]          PNDIS_HANDLE                          NdisProtocolHandle
);

Parametri

[in, optional] ProtocolDriverContext

Handle per un'area di contesto allocata dal driver in cui il driver mantiene le informazioni sullo stato e sulla configurazione.

[in] ProtocolCharacteristics

Puntatore a un oggetto NDIS_PROTOCOL_DRIVER_CHARACTERISTICS struttura creata e inizializzata dal driver del protocollo con i relativi punti di ingresso della funzione ProtocolXxx.

[out] NdisProtocolHandle

Puntatore a una variabile handle fornita dal chiamante. NDIS scrive un handle in questa variabile che identifica in modo univoco il driver che sta registrando. Il driver deve salvare questo handle per l'uso nelle successive chiamate di funzione NdisXxx.

Valore restituito

NdisRegisterProtocolDriver restituisce uno dei valori di stato seguenti:

Codice restituito Descrizione
NDIS_STATUS_SUCCESS

NdisRegisterProtocolDriver restituisce NDIS_STATUS_SUCCESS se ha registrato il driver di protocollo.

NDIS_STATUS_BAD_VERSION
La versione specificata nel membro MajorNdisVersion della struttura in ProtocolCharacteristics non è valida.
NDIS_STATUS_BAD_CHARACTERISTICS
Alcuni membri della struttura nella ProtocolCharacteristics parametro non sono validi.
NDIS_STATUS_RESOURCES

NdisRegisterProtocolDriver non è riuscito a causa di risorse insufficienti.

NDIS_STATUS_FAILURE

NdisRegisterProtocolDriver restituisce NDIS_STATUS_FAILURE se non si applica nessuno dei valori precedenti.

Osservazioni

Un driver di protocollo chiama la funzione NdisRegisterProtocolDriver dalla routine DriverEntry. Per altre informazioni su driver DriverEntry, vedere DriverEntry dei driver del protocollo NDIS.

I driver che chiamano NdisRegisterProtocolDriver devono essere preparati per una chiamata immediata a una delle relative funzioni ProtocolXxx.

Ogni driver di protocollo esporta un set di funzioni ProtocolXxx configurando NDIS_PROTOCOL_DRIVER_CHARACTERISTICS struttura e chiamata di NdisRegisterProtocolDriver. NDIS copia questa struttura nella risorsa di archiviazione interna della libreria NDIS.

Per consentire ai driver di protocollo di registrare i servizi facoltativi, NDIS chiama la funzione ProtocolSetOptions nel contesto di NdisRegisterProtocolDriver.

I driver di protocollo chiamano il funzione NdisDeregisterProtocolDriver per rilasciare le risorse precedentemente allocate con NdisRegisterProtocolDriver.

Fabbisogno

Requisito Valore
client minimo supportato Supportato in NDIS 6.0 e versioni successive.
piattaforma di destinazione Desktop
intestazione ndis.h (include Ndis.h)
libreria Ndis.lib
IRQL PASSIVE_LEVEL
regole di conformità DDI Irql_Protocol_Driver_Function (ndis)

Vedere anche

DriverEntry dei driver del protocollo NDIS

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS

NdisDeregisterProtocolDriver

NdisSetOptionalHandlers