次の方法で共有


仮想ミニポートの初期化

仮想ミニポートの初期化を開始するために、中間ドライバーは NdisIMInitializeDeviceInstanceEx 関数を呼び出します。 中間ドライバーは通常、ProtocolBindAdapterEx 関数からこの呼び出しを行います。 中間ドライバーが NdisIMInitializeDeviceInstanceEx を呼び出し、プラグ アンド プレイ マネージャーが NDIS を要求して仮想デバイスを起動した後、NDIS はドライバーのミニポートInitializeEx 関数を呼び出します。

プラグ アンド プレイ マネージャーが NdisIMInitializeDeviceInstanceEx が返される前に仮想デバイスを起動する場合、MiniportInitializeEx への呼び出しは NdisIMInitializeDeviceInstanceEx のコンテキストに含めることができます。 中間ドライバーが複数の仮想ミニポートを提供する場合、ドライバーは、使用可能にする各仮想ミニポートの NdisIMInitializeDeviceInstanceEx を呼び出す必要があります。

NDIS は、MiniportInitParametersNDIS_MINIPORT_INIT_PARAMETERS 構造体の MiniportInitializeEx に初期化パラメーターを渡します。 構造体の IMDeviceInstanceContext メンバーは、仮想デバイスのコンテキスト領域へのポインターを指定します。 ドライバーは、DeviceContext パラメーターで NdisIMInitializeDeviceInstanceEx 関数にこのポインターを渡しました。

MiniportInitializeEx では、中間ドライバーは、仮想ミニポートを初期化するために必要な操作を実行します。 この初期化は、他のミニポート アダプターの初期化と同様です。