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 le 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 pour la structure NDIS_PROTOCOL_DRIVER_CHARACTERISTICS. Définissez le membre type de la structure qui 'en-tête spécifie la valeur NDIS_OBJECT_TYPE_PROTOCOL_DRIVER_CHARACTERISTICS.

Pour indiquer la version de la structure NDIS_PROTOCOL_DRIVER_CHARACTERISTICS, définissez le membre révision 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 de NDIS 6.0.

Définissez le membre taille sur NDIS_SIZEOF_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_1.

MajorNdisVersion

La version principale de la bibliothèque NDIS utilisée par le pilote de protocole. 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 Les pilotes opt-outs du support URO.

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

Name

Chaîne Unicode qui est le nom du 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 ProtocolOpenAdapterCompleteEx fonction.

CloseAdapterCompleteHandlerEx

Point d’entrée pour le ProtocolCloseAdapterCompleteEx fonction.

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 ProtocolReceiveNetBufferLists fonction.

SendNetBufferListsCompleteHandler

Point d’entrée pour le ProtocolSendNetBufferListsComplete fonction.

DirectOidRequestCompleteHandler

Point d’entrée de l’appelant ProtocolDirectOidRequestComplete fonction. 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 à cette structure dans le paramètre ProtocolCharacteristics de NdisRegisterProtocolDriver.

Exigences

Exigence Valeur
client minimum pris en charge Prise en charge dans NDIS 6.0 et versions ultérieures.
d’en-tête ndis.h (include Ndis.h)

Voir aussi

NdisRegisterProtocolDriver

ProtocolBindAdapterEx

ProtocolCloseAdapterCompleteEx ProtocolDirectOidRequestComplete

ProtocolNetPnPEvent

ProtocolOidRequestComplete

ProtocolOpenAdapterCompleteEx ProtocolReceiveNetBufferLists ProtocolSendNetBufferListsComplete

ProtocolSetOptions

ProtocolStatusEx

ProtocolUnbindAdapterEx

ProtocolUninstall