共用方式為


NDIS_PROTOCOL_DRIVER_CHARACTERISTICS 結構 (ndis.h)

若要指定其驅動程式特性,通訊協定驅動程式會初始化 NDIS_PROTOCOL_DRIVER_CHARACTERISTICS 結構,並將其傳遞至 NDIS。

語法

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;

成員

Header

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS 結構的NDIS_OBJECT_HEADER結構。 設定 Header 指定要NDIS_OBJECT_TYPE_PROTOCOL_DRIVER_CHARACTERISTICS之結構的 Type 成員。

若要指出 NDIS_PROTOCOL_DRIVER_CHARACTERISTICS 結構的版本,請將 Revision 成員設定為下列其中一個值:

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_2

已新增 NDIS 6.1 的 DirectOidRequestCompleteHandler 成員。

Size 成員設定為 NDIS_SIZEOF_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_2。

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_1

NDIS 6.0 的原始版本。

Size 成員設定為 NDIS_SIZEOF_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_1。

MajorNdisVersion

通訊協定驅動程式所使用的 NDIS 連結庫主要版本。 目前的值為 0x06。

MinorNdisVersion

次要 NDIS 版本。 以下是可用的次要版本值設定。

意義
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

保留給通訊協定驅動程式的主要版本號碼。 通訊協定驅動程式可以指定它們所需的任何值。

MinorDriverVersion

保留給通訊協定驅動程式的次要版本號碼。 通訊協定驅動程式可以指定它們所需的任何值。

Flags

NDIS 6.89 和更新版本支援下列旗標:

意義
NDIS_PROTOCOL_DRIVER_UDP_RSC_NOT_SUPPORTED 0x00000008 驅動程式退出宣告 URO 支援。

在 NDIS 6.88 和更新版本中, 旗標 會保留給 NDIS。 通訊協定驅動程式應該將此成員設定為零。

Name

Unicode 字串,這是通訊協定驅動程式的服務名稱。

SetOptionsHandler

ProtocolSetOptions 函式的進入點。

BindAdapterHandlerEx

的進入點 ProtocolBindAdapterEx 函式。

UnbindAdapterHandlerEx

的進入點 ProtocolUnbindAdapterEx 函式。

OpenAdapterCompleteHandlerEx

的進入點 ProtocolOpenAdapterCompleteEx 函式。

CloseAdapterCompleteHandlerEx

的進入點 ProtocolCloseAdapterCompleteEx 函式。

NetPnPEventHandler

呼叫端 ProtocolNetPnPEvent 函式的進入點。

UninstallHandler

呼叫端 ProtocolUninstall 函式的進入點,如果有的話,則為 NULL

OidRequestCompleteHandler

呼叫端的進入點 ProtocolOidRequestComplete 函式

StatusHandlerEx

呼叫端 ProtocolStatusEx 函式的進入點,如果有的話,則為 NULL

ReceiveNetBufferListsHandler

的進入點 ProtocolReceiveNetBufferLists 函式

SendNetBufferListsCompleteHandler

的進入點 ProtocolSendNetBufferListsComplete 函式

DirectOidRequestCompleteHandler

呼叫端的進入點 ProtocolDirectOidRequestComplete 函式 。 這是選擇性函式。 如果通訊協定驅動程式不支援直接 OID 要求介面,請將此進入點設定為 NULL

備註

通訊協定驅動程式會呼叫 NdisRegisterProtocolDriver 函式可註冊其特性,包括通訊協定驅動程式函式的預設進入點 (ProtocolXxx) 。 通訊協議驅動程式會初始化NDIS_PROTOCOL_DRIVER_CHARACTERISTICS結構,並在 NdisRegisterProtocolDriverProtocolCharacteristics 參數中傳遞此結構的指標。

規格需求

需求
最低支援的用戶端 NDIS 6.0 和更新版本支援。
標頭 ndis.h (包括 Ndis.h)

另請參閱

NdisRegisterProtocolDriver

ProtocolBindAdapterEx

ProtocolCloseAdapterCompleteEx ProtocolDirectOidRequestComplete

ProtocolNetPnPEvent

ProtocolOidRequestComplete

ProtocolOpenAdapterCompleteEx ProtocolReceiveNetBufferLists ProtocolSendNetBufferListsComplete

ProtocolSetOptions

ProtocolStatusEx

ProtocolUnbindAdapterEx

ProtocolUninstall