次の方法で共有


NDK 対応ミニポート ドライバーの初期化

ネットワーク ダイレクト カーネル (NDK) をサポートするミニポート ドライバーは、他のミニポート ドライバーと同じ方法で初期化されます。 ただし、追加の NDKPI エントリ ポイントも登録する必要があります。

DriverEntry 関数

すべてのミニポート ドライバーの DriverEntry 関数は、NDIS_MINIPORT_DRIVER_CHARACTERISTICS 構造体を初期化し、次のページで説明するように NdisMRegisterMiniportDriver に渡します。

NDK 対応ミニポート ドライバーは、NDIS_MINIPORT_DRIVER_CHARACTERISTICS 構造体を初期化するときに、次の操作を行う必要があります。

MiniportSetOptions 関数

NDIS は、ミニポート ドライバーの DriverEntry 関数が返された直後に、MiniportSetOptions 関数を呼び出します。 ミニポート ドライバーの NdisMRegisterMiniportDriver への呼び出しのコンテキスト内で MiniportSetOptions 関数を呼び出します。

MiniportSetOptions 関数では、NDK 対応ミニポート ドライバーは、その NDK 機能を登録し、「オプション ミニポート ドライバー サービスの構成」の説明に従って、次の必要な NDKPI 関数エントリ ポイントを登録します。

これらの関数の NDKPI エントリ ポイントを登録するために、ミニポート ドライバーの MiniportSetOptions 関数は、次の操作を行う必要があります。

  1. NDIS_NDK_PROVIDER_CHARACTERISTICS 構造体を初期化します。

    注: ヘッダー メンバーの説明に特に注意してください。 ミニポート ドライバーが NDK 対応ミニポート ドライバーとして自身を識別するには、このメンバーを正しく設定する必要があります。

  2. 関数のエントリ ポイントを構造体の OpenNDKAdapterHandler メンバーと CloseNDKAdapterHandler メンバーに格納します。

  3. NdisSetOptionalHandlers 関数を呼び出し、OptionalHandlers パラメーターに構造体を渡します。

Network Direct Kernel Provider Interface (NDKPI)