NdisSetOptionalHandlers 関数 (ndis.h)
NDIS ドライバーは、 NdisSetOptionalHandlers 関数を呼び出して、ドライバー関数のエントリ ポイントを設定または変更できます。
構文
NDIS_STATUS NdisSetOptionalHandlers(
NDIS_HANDLE NdisHandle,
PNDIS_DRIVER_OPTIONAL_HANDLERS OptionalHandlers
);
パラメーター
NdisHandle
ドライバーまたはドライバー インスタンスを識別する NDIS ハンドル。
プロトコル ドライバーの場合、これは ProtocolSetOptions 関数に渡される NdisDriverHandle 値、または NdisOpenAdapterEx 関数を呼び出して取得した NdisBindingHandle 値です。
ミニポート ドライバーの場合、これは、MiniportSetOptions 関数に渡される NdisDriverHandle 値です
フィルター ドライバーの場合、これは FilterSetOptions 関数に渡される NdisDriverHandle 値、または FilterAttach 関数に渡される NdisFilterHandle 値です。
OptionalHandlers
次のいずれかの NDIS 構造体へのポインター。
NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_CO_CLIENT_OPTIONAL_HANDLERS NDIS_FILTER_PARTIAL_CHARACTERISTICS NDIS_MINIPORT_CO_CHARACTERISTICS NDIS_MINIPORT_PNP_CHARACTERISTICSNDIS_MINIPORT_SS_CHARACTERISTICS
NDIS_NDK_PROVIDER_CHARACTERISTICS
NDIS_PROTOCOL_CO_CHARACTERISTICS NDIS_PROVIDER_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_PROVIDER_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS戻り値
NdisSetOptionalHandlers は、 次のいずれかの状態値を返します。
リターン コード | 説明 |
---|---|
|
NdisSetOptionalHandlers は、 ドライバーのエントリ ポイントを設定した場合、 NDIS_STATUS_SUCCESS を返します。 |
|
リソースが不足しているため、NdisSetOptionalHandlers が失敗しました。 |
|
ミニポート ドライバーが NDIS 6.0 以降をサポートすることを指定していないため、NdisSetOptionalHandlers が失敗しました。 ミニポート ドライバーは、 を呼び出すときに NDIS バージョンを指定します。 NdisMRegisterMiniportDriver 関数。 |
|
NdisSetOptionalHandlers は、 上記の値が適用されない場合、 NDIS_STATUS_FAILURE を返します。 |
注釈
NDIS ドライバーは、 NdisSetOptionalHandlers を呼び出して、既定のエントリ ポイントを上書きできます。 OptionalHandlers で渡される構造体の型は、ドライバーの種類によって異なります。
プロトコル ドライバーは、 ProtocolSetOptions 関数のコンテキストで NdisSetOptionalHandlersを 呼び出すことができます。 オプションとして、プロトコル ドライバーは、ProtocolBindAdapterEx 関数または から NdisSetOptionalHandlers を呼び出すことができます。プロトコル ドライバーが NdisOpenAdapterEx 関数の有効なハンドルを持った後の ProtocolOpenAdapterCompleteEx 関数。
この場合、有効な構造体は次のとおりです。
NDIS_PROTOCOL_CO_CHARACTERISTICS NDIS_CO_CLIENT_OPTIONAL_HANDLERS NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS2 つのチムニー オフロード構造の詳細については、 NDIS 6.0 TCP のチムニー オフロードに関するドキュメントを参照してください。
ミニポート ドライバーは 、MiniportSetOptions 関数のコンテキストで NdisSetOptionalHandlersを 呼び出します。
この場合、有効な構造体は次のとおりです。
NDIS_MINIPORT_CO_CHARACTERISTICS NDIS_MINIPORT_PNP_CHARACTERISTICSNDIS_MINIPORT_SS_CHARACTERISTICS
NDIS_NDK_PROVIDER_CHARACTERISTICS
NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS2 つのチムニー オフロード構造の詳細については、 NDIS 6.0 TCP のチムニー オフロードに関するドキュメントを参照してください。
フィルター ドライバーは、 FilterSetOptions 関数のコンテキストで NdisSetOptionalHandlersを 呼び出します。
現在の Windows バージョンには、オプションのフィルター ドライバー サービスはありません。
フィルター ドライバーは、フィルター モジュールの NdisSetOptionalHandlers を呼び出すことができます。 フィルター ドライバーは、 のコンテキストで NdisSetOptionalHandlers を呼び出します。 FilterSetModuleOptions 関数。
この場合、有効な構造体は次のとおりです。
NDIS_FILTER_PARTIAL_CHARACTERISTICSNDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS
NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS
NDIS_PROVIDER_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS
NDIS_PROVIDER_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS
4 つのチムニー オフロード構造の詳細については、 NDIS 6.0 TCP のチムニー オフロードに関するドキュメントを参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | NDIS 6.0 以降でサポートされています。 |
対象プラットフォーム | ユニバーサル |
Header | ndis.h (Ndis.h を含む) |
Library | Ndis.lib |
IRQL | PASSIVE_LEVEL |
DDI コンプライアンス規則 | Irql_Miscellaneous_Function(ndis) |