NDIS_FILTER_DRIVER_CHARACTERISTICS-Struktur (ndis.h)

Um seine Treibereigenschaften anzugeben, initialisiert ein Filtertreiber eine NDIS_FILTER_DRIVER_CHARACTERISTICS-Struktur und übergibt sie an NDIS.

Syntax

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;

Member

Header

Die NDIS_OBJECT_HEADER-Struktur für die Struktur der Filtertreibereigenschaften (NDIS_FILTER_DRIVER_CHARACTERISTICS). Legen Sie das Type-Element der Struktur, die Header angibt, auf NDIS_OBJECT_TYPE_FILTER_DRIVER_CHARACTERISTICS fest.

Um die Version der NDIS_FILTER_DRIVER_CHARACTERISTICS-Struktur anzugeben, legen Sie den Revisionsmember auf einen der folgenden Werte fest:

NDIS_FILTER_CHARACTERISTICS_REVISION_3

Die Member SynchronousOidRequestHandler und SynchronousOidRequestCompleteHandler für NDIS 6.80 wurden hinzugefügt.

Legen Sie das Element Größe auf NDIS_SIZEOF_FILTER_DRIVER_CHARACTERISTICS_REVISION_3 fest.

NDIS_FILTER_CHARACTERISTICS_REVISION_2

Die Member DirectOidRequestHandler, DirectOidRequestCompleteHandler und CancelDirectOidRequestHandler für NDIS 6.1 wurden hinzugefügt.

Legen Sie das Element Größe auf NDIS_SIZEOF_FILTER_DRIVER_CHARACTERISTICS_REVISION_2 fest.

NDIS_FILTER_CHARACTERISTICS_REVISION_1

Originalversion.

Legen Sie das Element Größe auf NDIS_SIZEOF_FILTER_DRIVER_CHARACTERISTICS_REVISION_1 fest.

MajorNdisVersion

Die Hauptversion von NDIS, die der Treiber verwendet. Der aktuelle Wert ist 0x06.

MinorNdisVersion

Die nebenstehende NDIS-Version. Im Folgenden sind die verfügbaren Nebenversionswerteinstellungen aufgeführt.

Wert Bedeutung
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

Reserviert für die Hauptversionsnummer des Filtertreibers. Filtertreiber können jeden wert angeben, den sie benötigen.

MinorDriverVersion

Reserviert für die Nebenversionsnummer des Filtertreibers. Filtertreiber können jeden wert angeben, den sie benötigen.

Flags

Reserviert für NDIS.

FriendlyName

Eine Unicode-Zeichenfolge, die die lesbare Beschreibung des Filtertreibers darstellt.

UniqueName

Eine Unicode-Zeichenfolge, die den eindeutigen Namen für den Filtertreiber darstellt. Diese Zeichenfolge muss eine GUID sein, die in geschweifte Klammern eingeschlossen ist, z. B. "{5cbf81bd-5055-47cd-9055-a76b2b4e3697}". Diese GUID muss mit der in der INF-Dateieintrag NetCfgInstanceId in der INF-Datei des Filtertreibers übereinstimmen. Weitere Informationen finden Sie unter INF-Dateieinstellungen für Filtertreiber.

ServiceName

Eine Unicode-Zeichenfolge, die den Dienstnamen des Filtertreibers darstellt. Diese Zeichenfolge muss der Dienstname aus der AddService-Direktive in der INF-Datei des Filtertreibers sein. Weitere Informationen finden Sie unter INF-Dateieinstellungen für Filtertreiber.

SetOptionsHandler

Gibt den Einstiegspunkt der FilterSetOptions-Funktion des Aufrufers an.

SetFilterModuleOptionsHandler

Der Einstiegspunkt des Aufrufers FilterSetModuleOptions-Funktion .

AttachHandler

Der Einstiegspunkt der FilterAttach-Funktion des Aufrufers.

DetachHandler

Der Einstiegspunkt der FilterDetach-Funktion des Aufrufers.

RestartHandler

Der Einstiegspunkt der FilterRestart-Funktion des Aufrufers.

PauseHandler

Der Einstiegspunkt der FilterPause-Funktion des Aufrufers.

SendNetBufferListsHandler

Der Einstiegspunkt des Aufrufers FilterSendNetBufferLists-Funktion . Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

SendNetBufferListsCompleteHandler

Der Einstiegspunkt des Aufrufers FilterSendNetBufferListsComplete-Funktion . Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

CancelSendNetBufferListsHandler

Der Einstiegspunkt des Aufrufers FilterCancelSendNetBufferLists-Funktion . Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

ReceiveNetBufferListsHandler

Der Einstiegspunkt des Aufrufers FilterReceiveNetBufferLists-Funktion . Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

ReturnNetBufferListsHandler

Der Einstiegspunkt des Aufrufers FilterReturnNetBufferLists-Funktion . Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

OidRequestHandler

Der Einstiegspunkt der FilterOidRequest-Funktion des Aufrufers. Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

OidRequestCompleteHandler

Der Einstiegspunkt des Aufrufers FilterOidRequestComplete-Funktion . Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

CancelOidRequestHandler

Der Einstiegspunkt des Aufrufers FilterCancelOidRequest-Funktion . Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

DevicePnPEventNotifyHandler

Der Einstiegspunkt des Aufrufers FilterDevicePnPEventNotify-Funktion . Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

NetPnPEventHandler

Der Einstiegspunkt der FilterNetPnPEvent-Funktion des Aufrufers. Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

StatusHandler

Der Einstiegspunkt der FilterStatus-Funktion des Aufrufers. Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

DirectOidRequestHandler

Der Einstiegspunkt des Aufrufers FilterDirectOidRequest-Funktion . Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

DirectOidRequestCompleteHandler

Der Einstiegspunkt des Aufrufers FilterDirectOidRequestComplete-Funktion . Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

CancelDirectOidRequestHandler

Der Einstiegspunkt des Aufrufers FilterCancelDirectOidRequest-Funktion . Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

SynchronousOidRequestHandler

Der Einstiegspunkt der FilterSynchronousOidRequest-Funktion des Aufrufers. Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

SynchronousOidRequestCompleteHandler

Der Einstiegspunkt der FilterSynchronousOidRequestComplete-Funktion des Aufrufers. Um diese Funktion zu umgehen, legen Sie diesen Member auf NULL fest.

Hinweise

Ein Filtertreiber ruft die NdisFRegisterFilterDriver-Funktion zum Registrieren seiner Merkmale, einschließlich der Standardeinstiegspunkte für seine Filtertreiberfunktionen (FilterXxx). Der Filtertreiber initialisiert eine NDIS_FILTER_DRIVER_CHARACTERISTICS-Struktur und übergibt einen Zeiger an diese Struktur im FilterCharacteristics-Parameter von NdisFRegisterFilterDriver.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt in NDIS 6.0 und höher.
Kopfzeile ndis.h (einschließlich Ndis.h)

Weitere Informationen

FilterAttach

FilterCancelDirectOidRequest

FilterCancelOidRequest

FilterCancelSendNetBufferLists

FilterDetach

FilterDevicePnPEventNotify

FilterDirectOidRequest

FilterDirectOidRequestComplete

FilterNetPnPEvent

FilterOidRequest

FilterOidRequestComplete

FilterPause

FilterReceiveNetBufferLists

FilterRestart

FilterReturnNetBufferLists

FilterSendNetBufferLists

FilterSendNetBufferListsComplete

FilterSetModuleOptions

FilterSetOptions

FilterStatus

INF-Dateieinstellungen für Filtertreiber

Initialisieren eines Filtertreibers

NDIS_FILTER_PARTIAL_CHARACTERISTICS

NDIS_OBJECT_HEADER

NdisFRegisterFilterDriver