structure NDIS_FILTER_DRIVER_CHARACTERISTICS (ndis.h)
Pour spécifier ses caractéristiques de pilote, un pilote de filtre initialise une structure NDIS_FILTER_DRIVER_CHARACTERISTICS et la transmet à NDIS.
Syntaxe
typedef struct _NDIS_FILTER_DRIVER_CHARACTERISTICS {
NDIS_OBJECT_HEADER Header;
UCHAR MajorNdisVersion;
UCHAR MinorNdisVersion;
UCHAR MajorDriverVersion;
UCHAR MinorDriverVersion;
ULONG Flags;
NDIS_STRING FriendlyName;
NDIS_STRING UniqueName;
NDIS_STRING ServiceName;
SET_OPTIONS_HANDLER SetOptionsHandler;
FILTER_SET_FILTER_MODULE_OPTIONS_HANDLER SetFilterModuleOptionsHandler;
FILTER_ATTACH_HANDLER AttachHandler;
FILTER_DETACH_HANDLER DetachHandler;
FILTER_RESTART_HANDLER RestartHandler;
FILTER_PAUSE_HANDLER PauseHandler;
FILTER_SEND_NET_BUFFER_LISTS_HANDLER SendNetBufferListsHandler;
FILTER_SEND_NET_BUFFER_LISTS_COMPLETE_HANDLER SendNetBufferListsCompleteHandler;
FILTER_CANCEL_SEND_HANDLER CancelSendNetBufferListsHandler;
FILTER_RECEIVE_NET_BUFFER_LISTS_HANDLER ReceiveNetBufferListsHandler;
FILTER_RETURN_NET_BUFFER_LISTS_HANDLER ReturnNetBufferListsHandler;
FILTER_OID_REQUEST_HANDLER OidRequestHandler;
FILTER_OID_REQUEST_COMPLETE_HANDLER OidRequestCompleteHandler;
FILTER_CANCEL_OID_REQUEST_HANDLER CancelOidRequestHandler;
FILTER_DEVICE_PNP_EVENT_NOTIFY_HANDLER DevicePnPEventNotifyHandler;
FILTER_NET_PNP_EVENT_HANDLER NetPnPEventHandler;
FILTER_STATUS_HANDLER StatusHandler;
FILTER_DIRECT_OID_REQUEST_HANDLER DirectOidRequestHandler;
FILTER_DIRECT_OID_REQUEST_COMPLETE_HANDLER DirectOidRequestCompleteHandler;
FILTER_CANCEL_DIRECT_OID_REQUEST_HANDLER CancelDirectOidRequestHandler;
FILTER_SYNCHRONOUS_OID_REQUEST_HANDLER SynchronousOidRequestHandler;
FILTER_SYNCHRONOUS_OID_REQUEST_COMPLETE_HANDLER SynchronousOidRequestCompleteHandler;
} NDIS_FILTER_DRIVER_CHARACTERISTICS, *PNDIS_FILTER_DRIVER_CHARACTERISTICS;
Membres
Header
Structure NDIS_OBJECT_HEADER pour la structure des caractéristiques du pilote de filtre (NDIS_FILTER_DRIVER_CHARACTERISTICS). Définissez le membre Type de la structure que l’en-tête spécifie sur NDIS_OBJECT_TYPE_FILTER_DRIVER_CHARACTERISTICS.
Pour indiquer la version de la structure NDIS_FILTER_DRIVER_CHARACTERISTICS, définissez le membre Revision sur l’une des valeurs suivantes :
NDIS_FILTER_CHARACTERISTICS_REVISION_3
Ajout des membres SynchronousOidRequestHandler et SynchronousOidRequestCompleteHandler pour NDIS 6.80.
Définissez le membre Size sur NDIS_SIZEOF_FILTER_DRIVER_CHARACTERISTICS_REVISION_3.
NDIS_FILTER_CHARACTERISTICS_REVISION_2
Ajout des membres DirectOidRequestHandler, DirectOidRequestCompleteHandler et CancelDirectOidRequestHandler pour NDIS 6.1.
Définissez le membre Size sur NDIS_SIZEOF_FILTER_DRIVER_CHARACTERISTICS_REVISION_2.
NDIS_FILTER_CHARACTERISTICS_REVISION_1
Version d’origine.
Définissez le membre Size sur NDIS_SIZEOF_FILTER_DRIVER_CHARACTERISTICS_REVISION_1.
MajorNdisVersion
Version principale de NDIS que le pilote 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 |
MajorDriverVersion
Réservé au numéro de version principal du pilote de filtre. Les pilotes de filtre peuvent spécifier n’importe quelle valeur dont ils ont besoin.
MinorDriverVersion
Réservé au numéro de version secondaire du pilote de filtre. Les pilotes de filtre peuvent spécifier n’importe quelle valeur dont ils ont besoin.
Flags
Réservé à NDIS.
FriendlyName
Chaîne Unicode qui représente la description lisible par l’utilisateur du pilote de filtre.
UniqueName
Chaîne Unicode qui représente le nom unique du pilote de filtre. Cette chaîne doit être un GUID, placé dans des accolades, par exemple « {5cbf81bd-5055-47cd-9055-a76b2b4e3697} ». Ce GUID doit correspondre à celui de l’entrée de fichier INF NetCfgInstanceId dans le fichier INF du pilote de filtre. Pour plus d’informations, consultez Paramètres de fichier INF pour les pilotes de filtre.
ServiceName
Chaîne Unicode qui représente le nom de service du pilote de filtre. Cette chaîne doit être le nom de service de la directive AddService dans le fichier INF du pilote de filtre. Pour plus d’informations, consultez Paramètres de fichier INF pour les pilotes de filtre.
SetOptionsHandler
Spécifie le point d’entrée de la fonction FilterSetOptions de l’appelant.
SetFilterModuleOptionsHandler
Point d’entrée de l’appelant Fonction FilterSetModuleOptions .
AttachHandler
Point d’entrée de la fonction FilterAttach de l’appelant.
DetachHandler
Point d’entrée de la fonction FilterDetach de l’appelant.
RestartHandler
Point d’entrée de la fonction FilterRestart de l’appelant.
PauseHandler
Point d’entrée de la fonction FilterPause de l’appelant.
SendNetBufferListsHandler
Point d’entrée de l’appelant Fonction FilterSendNetBufferLists . Pour contourner cette fonction, définissez ce membre sur NULL.
SendNetBufferListsCompleteHandler
Point d’entrée de l’appelant Fonction FilterSendNetBufferListsComplete . Pour contourner cette fonction, définissez ce membre sur NULL.
CancelSendNetBufferListsHandler
Point d’entrée de l’appelant Fonction FilterCancelSendNetBufferLists . Pour contourner cette fonction, définissez ce membre sur NULL.
ReceiveNetBufferListsHandler
Point d’entrée de l’appelant Fonction FilterReceiveNetBufferLists . Pour contourner cette fonction, définissez ce membre sur NULL.
ReturnNetBufferListsHandler
Point d’entrée de l’appelant Fonction FilterReturnNetBufferLists . Pour contourner cette fonction, définissez ce membre sur NULL.
OidRequestHandler
Point d’entrée de la fonction FilterOidRequest de l’appelant. Pour contourner cette fonction, définissez ce membre sur NULL.
OidRequestCompleteHandler
Point d’entrée de l’appelant Fonction FilterOidRequestComplete . Pour contourner cette fonction, définissez ce membre sur NULL.
CancelOidRequestHandler
Point d’entrée de l’appelant Fonction FilterCancelOidRequest . Pour contourner cette fonction, définissez ce membre sur NULL.
DevicePnPEventNotifyHandler
Point d’entrée de l’appelant Fonction FilterDevicePnPEventNotify . Pour contourner cette fonction, définissez ce membre sur NULL.
NetPnPEventHandler
Point d’entrée de la fonction FilterNetPnPEvent de l’appelant. Pour contourner cette fonction, définissez ce membre sur NULL.
StatusHandler
Point d’entrée de la fonction FilterStatus de l’appelant. Pour contourner cette fonction, définissez ce membre sur NULL.
DirectOidRequestHandler
Point d’entrée de l’appelant Fonction FilterDirectOidRequest . Pour contourner cette fonction, définissez ce membre sur NULL.
DirectOidRequestCompleteHandler
Point d’entrée de l’appelant Fonction FilterDirectOidRequestComplete . Pour contourner cette fonction, définissez ce membre sur NULL.
CancelDirectOidRequestHandler
Point d’entrée de l’appelant Fonction FilterCancelDirectOidRequest . Pour contourner cette fonction, définissez ce membre sur NULL.
SynchronousOidRequestHandler
Point d’entrée de la fonction FilterSynchronousOidRequest de l’appelant. Pour contourner cette fonction, définissez ce membre sur NULL.
SynchronousOidRequestCompleteHandler
Point d’entrée de la fonction FilterSynchronousOidRequestComplete de l’appelant. Pour contourner cette fonction, définissez ce membre sur NULL.
Remarques
Un pilote de filtre appelle le Fonction NdisFRegisterFilterDriver pour inscrire ses caractéristiques, y compris les points d’entrée par défaut pour ses fonctions de pilote de filtre (FilterXxx). Le pilote de filtre initialise une structure NDIS_FILTER_DRIVER_CHARACTERISTICS et transmet un pointeur vers cette structure dans le paramètre FilterCharacteristics de NdisFRegisterFilterDriver.
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
FilterCancelDirectOidRequest FilterCancelSendNetBufferLists FilterDirectOidRequestComplete FilterSendNetBufferListsCompleteParamètres de fichier INF pour les pilotes de filtre
Initialisation d’un pilote de filtre
NDIS_FILTER_PARTIAL_CHARACTERISTICSCommentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour