Partager via


structure NDIS_PROTOCOL_DRIVER_CHARACTERISTICS (ndis.h)

Pour spécifier ses caractéristiques de pilote, un pilote de protocole initialise une structure NDIS_PROTOCOL_DRIVER_CHARACTERISTICS et la transmet à NDIS.

Syntaxe

typedef struct _NDIS_PROTOCOL_DRIVER_CHARACTERISTICS {
  NDIS_OBJECT_HEADER                     Header;
  UCHAR                                  MajorNdisVersion;
  UCHAR                                  MinorNdisVersion;
  UCHAR                                  MajorDriverVersion;
  UCHAR                                  MinorDriverVersion;
  ULONG                                  Flags;
  NDIS_STRING                            Name;
  SET_OPTIONS_HANDLER                    SetOptionsHandler;
  BIND_HANDLER_EX                        BindAdapterHandlerEx;
  UNBIND_HANDLER_EX                      UnbindAdapterHandlerEx;
  OPEN_ADAPTER_COMPLETE_HANDLER_EX       OpenAdapterCompleteHandlerEx;
  CLOSE_ADAPTER_COMPLETE_HANDLER_EX      CloseAdapterCompleteHandlerEx;
  NET_PNP_EVENT_HANDLER                  NetPnPEventHandler;
  UNINSTALL_PROTOCOL_HANDLER             UninstallHandler;
  OID_REQUEST_COMPLETE_HANDLER           OidRequestCompleteHandler;
  STATUS_HANDLER_EX                      StatusHandlerEx;
  RECEIVE_NET_BUFFER_LISTS_HANDLER       ReceiveNetBufferListsHandler;
  SEND_NET_BUFFER_LISTS_COMPLETE_HANDLER SendNetBufferListsCompleteHandler;
  DIRECT_OID_REQUEST_COMPLETE_HANDLER    DirectOidRequestCompleteHandler;
} NDIS_PROTOCOL_DRIVER_CHARACTERISTICS, *PNDIS_PROTOCOL_DRIVER_CHARACTERISTICS;

Membres

Header

Structure NDIS_OBJECT_HEADER de la structure NDIS_PROTOCOL_DRIVER_CHARACTERISTICS . Définissez le membre Type de la structure que l’en-tête spécifie sur NDIS_OBJECT_TYPE_PROTOCOL_DRIVER_CHARACTERISTICS.

Pour indiquer la version de la structure NDIS_PROTOCOL_DRIVER_CHARACTERISTICS , définissez le membre Revision sur l’une des valeurs suivantes :

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_2

Ajout du membre DirectOidRequestCompleteHandler pour NDIS 6.1.

Définissez le membre Size sur NDIS_SIZEOF_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_2.

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_1

Version d’origine pour NDIS 6.0.

Définissez le membre Size sur NDIS_SIZEOF_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_1.

MajorNdisVersion

Version principale de la bibliothèque NDIS que le pilote de protocole utilise. La valeur actuelle est 0x06.

MinorNdisVersion

Version mineure de NDIS. Voici les paramètres de valeur de version mineure disponibles.

Valeur Signification
0 NDIS 6
20 NDIS 6.20
30 NDIS 6.30
40 NDIS 6.40
50 NDIS 6.50
51 NDIS 6.51
60 NDIS 6.60
70 NDIS 6.70
80 NDIS 6.80
81 NDIS 6.81
82 NDIS 6.82
83 NDIS 6.83
84 NDIS 6.84
85 % NDIS 6.85
86 NDIS 6.86
87 NDIS 6.87
88 NDIS 6.88
89 NDIS 6.89

MajorDriverVersion

Réservé au numéro de version principal du pilote de protocole. Les pilotes de protocole peuvent spécifier n’importe quelle valeur dont ils ont besoin.

MinorDriverVersion

Réservé au numéro de version secondaire du pilote de protocole. Les pilotes de protocole peuvent spécifier n’importe quelle valeur dont ils ont besoin.

Flags

L’indicateur suivant est pris en charge dans NDIS 6.89 et versions ultérieures :

Valeur Signification
NDIS_PROTOCOL_DRIVER_UDP_RSC_NOT_SUPPORTED 0x00000008 Refus du pilote de la prise en charge d’URO.

Dans NDIS 6.88 et versions ultérieures, les indicateurs sont réservés à NDIS. Les pilotes de protocole doivent définir ce membre sur zéro.

Name

Chaîne Unicode qui est le nom de service du pilote de protocole.

SetOptionsHandler

Point d’entrée de la fonction ProtocolSetOptions .

BindAdapterHandlerEx

Point d’entrée pour le Fonction ProtocolBindAdapterEx .

UnbindAdapterHandlerEx

Point d’entrée pour le Fonction ProtocolUnbindAdapterEx .

OpenAdapterCompleteHandlerEx

Point d’entrée pour le Fonction ProtocolOpenAdapterCompleteEx .

CloseAdapterCompleteHandlerEx

Point d’entrée pour le Fonction ProtocolCloseAdapterCompleteEx .

NetPnPEventHandler

Point d’entrée de la fonction ProtocolNetPnPEvent de l’appelant.

UninstallHandler

Point d’entrée de la fonction ProtocolUninstall de l’appelant, le cas échéant, ou NULL.

OidRequestCompleteHandler

Point d’entrée de l’appelant Fonction ProtocolOidRequestComplete .

StatusHandlerEx

Point d’entrée de la fonction ProtocolStatusEx de l’appelant, le cas échéant, ou NULL.

ReceiveNetBufferListsHandler

Point d’entrée pour le Fonction ProtocolReceiveNetBufferLists .

SendNetBufferListsCompleteHandler

Point d’entrée pour le Fonction ProtocolSendNetBufferListsComplete .

DirectOidRequestCompleteHandler

Point d’entrée de l’appelant Fonction ProtocolDirectOidRequestComplete . Il s’agit d’une fonction facultative. Définissez ce point d’entrée sur NULL si le pilote de protocole ne prend pas en charge l’interface de requête OID directe.

Remarques

Un pilote de protocole appelle le Fonction NdisRegisterProtocolDriver pour inscrire ses caractéristiques, y compris les points d’entrée par défaut pour ses fonctions de pilote de protocole (ProtocolXxx). Le pilote de protocole initialise une structure NDIS_PROTOCOL_DRIVER_CHARACTERISTICS et transmet un pointeur vers cette structure dans le paramètre ProtocolCharacteristics de NdisRegisterProtocolDriver.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge dans NDIS 6.0 et versions ultérieures.
En-tête ndis.h (inclure Ndis.h)

Voir aussi

NdisRegisterProtocolDriver

ProtocolBindAdapterEx

ProtocolCloseAdapterCompleteEx ProtocolDirectOidRequestComplete

ProtocolNetPnPEvent

ProtocolOidRequestComplete

ProtocoleOpenAdapterCompleteEx ProtocolReceiveNetBufferLists ProtocolSendNetBufferListsComplete

ProtocolSetOptions

ProtocolStatusEx

ProtocolUnbindAdapterEx

ProtocolUninstall