NDIS_PROTOCOL_DRIVER_CHARACTERISTICS-Struktur (ndis.h)
Um seine Treibereigenschaften anzugeben, initialisiert ein Protokolltreiber eine NDIS_PROTOCOL_DRIVER_CHARACTERISTICS-Struktur und übergibt sie an NDIS.
Syntax
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;
Member
Header
Die NDIS_OBJECT_HEADER-Struktur für die NDIS_PROTOCOL_DRIVER_CHARACTERISTICS-Struktur . Legen Sie das Type-Element der Struktur, die Header angibt, auf NDIS_OBJECT_TYPE_PROTOCOL_DRIVER_CHARACTERISTICS fest.
Um die Version der NDIS_PROTOCOL_DRIVER_CHARACTERISTICS-Struktur anzugeben, legen Sie den Revisionsmember auf einen der folgenden Werte fest:
NDIS_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_2
Das DirectOidRequestCompleteHandler-Element für NDIS 6.1 wurde hinzugefügt.
Legen Sie das Element Größe auf NDIS_SIZEOF_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_2 fest.
NDIS_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_1
Ursprüngliche Version für NDIS 6.0.
Legen Sie das Element Größe auf NDIS_SIZEOF_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_1 fest.
MajorNdisVersion
Die Hauptversion der NDIS-Bibliothek, die der Protokolltreiber 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 |
87 | NDIS 6.87 |
88 | NDIS 6.88 |
89 | NDIS 6.89 |
MajorDriverVersion
Reserviert für die Hauptversionsnummer des Protokolltreibers. Protokolltreiber können jeden wert angeben, den sie benötigen.
MinorDriverVersion
Reserviert für die Nebenversionsnummer des Protokolltreibers. Protokolltreiber können jeden wert angeben, den sie benötigen.
Flags
Das folgende Flag wird in NDIS 6.89 und höher unterstützt:
Wert | Bedeutung |
---|---|
NDIS_PROTOCOL_DRIVER_UDP_RSC_NOT_SUPPORTED 0x00000008 | Der Treiber deaktiviert die URO-Unterstützung. |
In NDIS 6.88 und niedriger sind Flags für NDIS reserviert. Protokolltreiber sollten diesen Member auf 0 festlegen.
Name
Eine Unicode-Zeichenfolge, die der Dienstname des Protokolltreibers ist.
SetOptionsHandler
Der Einstiegspunkt für die ProtocolSetOptions-Funktion .
BindAdapterHandlerEx
Der Einstiegspunkt für die ProtocolBindAdapterEx-Funktion .
UnbindAdapterHandlerEx
Der Einstiegspunkt für die ProtocolUnbindAdapterEx-Funktion .
OpenAdapterCompleteHandlerEx
Der Einstiegspunkt für die ProtocolOpenAdapterCompleteEx-Funktion .
CloseAdapterCompleteHandlerEx
Der Einstiegspunkt für die ProtocolCloseAdapterCompleteEx-Funktion .
NetPnPEventHandler
Der Einstiegspunkt der ProtocolNetPnPEvent-Funktion des Aufrufers.
UninstallHandler
Der Einstiegspunkt der ProtocolUninstall-Funktion des Aufrufers, falls vorhanden, oder NULL.
OidRequestCompleteHandler
Der Einstiegspunkt des Aufrufers ProtocolOidRequestComplete-Funktion .
StatusHandlerEx
Der Einstiegspunkt der ProtocolStatusEx-Funktion des Aufrufers, falls vorhanden, oder NULL.
ReceiveNetBufferListsHandler
Der Einstiegspunkt für die ProtocolReceiveNetBufferLists-Funktion .
SendNetBufferListsCompleteHandler
Der Einstiegspunkt für die ProtocolSendNetBufferListsComplete-Funktion .
DirectOidRequestCompleteHandler
Der Einstiegspunkt des Aufrufers ProtocolDirectOidRequestComplete-Funktion . Dies ist eine optionale Funktion. Legen Sie diesen Einstiegspunkt auf NULL fest, wenn der Protokolltreiber die direkte OID-Anforderungsschnittstelle nicht unterstützt.
Hinweise
Ein Protokolltreiber ruft die NdisRegisterProtocolDriver-Funktion , um ihre Merkmale zu registrieren, einschließlich der Standardeinstiegspunkte für ihre Protokolltreiberfunktionen (ProtocolXxx). Der Protokolltreiber initialisiert eine NDIS_PROTOCOL_DRIVER_CHARACTERISTICS-Struktur und übergibt einen Zeiger auf diese Struktur im ProtocolCharacteristics-Parameter von NdisRegisterProtocolDriver.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt in NDIS 6.0 und höher. |
Kopfzeile | ndis.h (einschließlich Ndis.h) |