NDIS_FILTER_DRIVER_CHARACTERISTICS 構造体 (ndis.h)
ドライバーの特性を指定するには、フィルター ドライバーは、NDIS_FILTER_DRIVER_CHARACTERISTICS構造体を初期化し、NDIS に渡します。
構文
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;
メンバー
Header
フィルター ドライバーの特性構造の NDIS_OBJECT_HEADER 構造 (NDIS_FILTER_DRIVER_CHARACTERISTICS)。 Header が指定する構造体の Type メンバーをNDIS_OBJECT_TYPE_FILTER_DRIVER_CHARACTERISTICSに設定します。
NDIS_FILTER_DRIVER_CHARACTERISTICS構造体のバージョンを示すには、 Revision メンバーを次のいずれかの値に設定します。
NDIS_FILTER_CHARACTERISTICS_REVISION_3
NDIS 6.80 の SynchronousOidRequestHandler メンバーと SynchronousOidRequestCompleteHandler メンバーを追加しました。
[サイズ] メンバーを [NDIS_SIZEOF_FILTER_DRIVER_CHARACTERISTICS_REVISION_3] に設定します。
NDIS_FILTER_CHARACTERISTICS_REVISION_2
NDIS 6.1 の DirectOidRequestHandler、 DirectOidRequestCompleteHandler、 および CancelDirectOidRequestHandler メンバーを追加しました。
[サイズ] メンバーを [NDIS_SIZEOF_FILTER_DRIVER_CHARACTERISTICS_REVISION_2] に設定します。
NDIS_FILTER_CHARACTERISTICS_REVISION_1
元のバージョン。
[サイズ] メンバーを [NDIS_SIZEOF_FILTER_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_FILTER_DRIVER_UDP_RSC_NOT_SUPPORTED 0x00000008 | ドライバーによる URO サポートのオプトアウト。 |
NDIS 6.88 以下では、 フラグ は NDIS 用に予約されています。
FriendlyName
フィルター ドライバーのユーザーが判読できる説明を表す Unicode 文字列。
UniqueName
フィルター ドライバーの一意の名前を表す Unicode 文字列。 この文字列は、"{5cbf81bd-5055-47cd-9055-a76b2b4e3697}" などの中かっこで囲まれた GUID である必要があります。 この GUID は、フィルター ドライバーの INF ファイル内の NetCfgInstanceId INF ファイル エントリの GUID と一致する必要があります。 詳細については、「 フィルター ドライバーの INF ファイル設定」を参照してください。
ServiceName
フィルター ドライバーのサービス名を表す Unicode 文字列。 この文字列は、フィルター ドライバーの INF ファイルの AddService ディレクティブのサービス名である必要があります。 詳細については、「 フィルター ドライバーの INF ファイル設定」を参照してください。
SetOptionsHandler
呼び出し元の FilterSetOptions 関数のエントリ ポイントを指定します。
SetFilterModuleOptionsHandler
呼び出し元のエントリ ポイント FilterSetModuleOptions 関数。
AttachHandler
呼び出し元の FilterAttach 関数のエントリ ポイント。
DetachHandler
呼び出し元の FilterDetach 関数のエントリ ポイント。
RestartHandler
呼び出し元の FilterRestart 関数のエントリ ポイント。
PauseHandler
呼び出し元の FilterPause 関数のエントリ ポイント。
SendNetBufferListsHandler
呼び出し元のエントリ ポイント FilterSendNetBufferLists 関数。 この関数をバイパスするには、このメンバーを NULL に設定します。
SendNetBufferListsCompleteHandler
呼び出し元のエントリ ポイント FilterSendNetBufferListsComplete 関数。 この関数をバイパスするには、このメンバーを NULL に設定します。
CancelSendNetBufferListsHandler
呼び出し元のエントリ ポイント FilterCancelSendNetBufferLists 関数。 この関数をバイパスするには、このメンバーを NULL に設定します。
ReceiveNetBufferListsHandler
呼び出し元のエントリ ポイント FilterReceiveNetBufferLists 関数。 この関数をバイパスするには、このメンバーを NULL に設定します。
ReturnNetBufferListsHandler
呼び出し元のエントリ ポイント FilterReturnNetBufferLists 関数。 この関数をバイパスするには、このメンバーを NULL に設定します。
OidRequestHandler
呼び出し元の FilterOidRequest 関数のエントリ ポイント。 この関数をバイパスするには、このメンバーを NULL に設定します。
OidRequestCompleteHandler
呼び出し元のエントリ ポイント FilterOidRequestComplete 関数。 この関数をバイパスするには、このメンバーを NULL に設定します。
CancelOidRequestHandler
呼び出し元のエントリ ポイント FilterCancelOidRequest 関数。 この関数をバイパスするには、このメンバーを NULL に設定します。
DevicePnPEventNotifyHandler
呼び出し元のエントリ ポイント FilterDevicePnPEventNotify 関数。 この関数をバイパスするには、このメンバーを NULL に設定します。
NetPnPEventHandler
呼び出し元の FilterNetPnPEvent 関数のエントリ ポイント。 この関数をバイパスするには、このメンバーを NULL に設定します。
StatusHandler
呼び出し元の FilterStatus 関数のエントリ ポイント。 この関数をバイパスするには、このメンバーを NULL に設定します。
DirectOidRequestHandler
呼び出し元のエントリ ポイント FilterDirectOidRequest 関数。 この関数をバイパスするには、このメンバーを NULL に設定します。
DirectOidRequestCompleteHandler
呼び出し元のエントリ ポイント FilterDirectOidRequestComplete 関数。 この関数をバイパスするには、このメンバーを NULL に設定します。
CancelDirectOidRequestHandler
呼び出し元のエントリ ポイント FilterCancelDirectOidRequest 関数。 この関数をバイパスするには、このメンバーを NULL に設定します。
SynchronousOidRequestHandler
呼び出し元の FilterSynchronousOidRequest 関数のエントリ ポイント。 この関数をバイパスするには、このメンバーを NULL に設定します。
SynchronousOidRequestCompleteHandler
呼び出し元の FilterSynchronousOidRequestComplete 関数のエントリ ポイント。 この関数をバイパスするには、このメンバーを NULL に設定します。
注釈
フィルター ドライバーは、 を呼び出します。フィルター ドライバー関数 (FilterXxx) の既定のエントリ ポイントなど、その特性を登録する NdisFRegisterFilterDriver 関数。 フィルター ドライバーは、NDIS_FILTER_DRIVER_CHARACTERISTICS構造体を初期化し、NdisFRegisterFilterDriver の FilterCharacteristics パラメーターでこの構造体へのポインターを渡します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | NDIS 6.0 以降でサポートされています。 |
Header | ndis.h (Ndis.h を含む) |
こちらもご覧ください
FilterCancelDirectOidRequest FilterCancelSendNetBufferLists FilterDirectOidRequestComplete FilterSendNetBufferListsComplete NDIS_FILTER_PARTIAL_CHARACTERISTICSフィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示