次の方法で共有


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 が指定する構造体の Type メンバーをNDIS_OBJECT_TYPE_PROTOCOL_DRIVER_CHARACTERISTICSに設定します。

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS構造体のバージョンを示すには、Revision メンバーを次のいずれかの値に設定します。

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_2

NDIS 6.1 の DirectOidRequestCompleteHandler メンバーを追加しました。

[サイズ] メンバーを [NDIS_SIZEOF_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_2] に設定します。

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS_REVISION_1

NDIS 6.0 の元のバージョン。

[サイズ] メンバーを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 用に予約されています。 プロトコル ドライバーでは、このメンバーを 0 に設定する必要があります。

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 に 設定します。

注釈

プロトコル ドライバーは、 を呼び出します。プロトコル ドライバー関数 (ProtocolXxx) の既定のエントリ ポイントなど、その特性を登録する NdisRegisterProtocolDriver 関数。 プロトコル ドライバーは、NDIS_PROTOCOL_DRIVER_CHARACTERISTICS構造体を初期化し、NdisRegisterProtocolDriverProtocolCharacteristics パラメーターでこの構造体へのポインターを渡します。

要件

要件
サポートされている最小のクライアント NDIS 6.0 以降でサポートされています。
Header ndis.h (Ndis.h を含む)

こちらもご覧ください

NdisRegisterProtocolDriver

ProtocolBindAdapterEx

ProtocolCloseAdapterCompleteEx ProtocolDirectOidRequestComplete

ProtocolNetPnPEvent

ProtocolOidRequestComplete

ProtocolOpenAdapterCompleteEx ProtocolReceiveNetBufferLists ProtocolSendNetBufferListsComplete

ProtocolSetOptions

ProtocolStatusEx

ProtocolUnbindAdapterEx

ProtocolUninstall