フィルター ドライバーの構成情報へのアクセス

NDIS は、フィルター ドライバー レジストリ パラメーターへのアクセスを提供する関数のセットをサポートしています。 フィルター ドライバーは、アタッチ操作または再起動操作中、または プラグ アンド プレイ (PnP) 通知を処理しているときに、これらのパラメーターにアクセスできます。 PnP 通知の詳細については、「フィルター モジュール PnP イベント通知」を参照してください。 フィルター モジュールのアタッチの詳細については、「フィルター モジュールのアタッチ」を参照してください。 再起動操作の詳細については、「フィルター モジュールの起動」を参照してください。

フィルター ドライバーは、レジストリ設定にアクセスする NdisOpenConfigurationEx 関数を呼び出します。 フィルター ドライバーが NdisFRegisterFilterDriver 関数を呼び出すことで、NDIS_CONFIGURATION_OBJECT 構造体の NdisHandle メンバーのハンドルを取得した場合、NdisOpenConfigurationEx 関数は、フィルター ドライバーの構成パラメーターが格納されているレジストリの場所へのハンドルを提供します。 フィルター ドライバーは、NdisFDeregisterFilterDriver 関数を呼び出すまで、構成ハンドルを使用できます。

フィルター ドライバーが FilterAttach 関数の NdisFilterHandle パラメーターから NdisHandle のハンドルを取得した場合、NdisOpenConfigurationEx は、フィルター モジュールの構成パラメーターが格納されているレジストリの場所へのハンドルを提供します。 フィルター ドライバーは、NDIS がフィルター モジュールをデタッチし、FilterDetach 関数が返されるまで、構成ハンドルを使用できます。 監視フィルター ドライバーが、NDIS_CONFIGURATION_OBJECT 構造体の Flags メンバーで NDIS_CONFIG_FLAG_FILTER_INSTANCE_CONFIGURATION フラグを指定した場合、ドライバーは、同じミニポート アダプター経由で構成されている複数のフィルター モジュールがある場合に、特定のフィルター モジュールのフィルター モジュール構成にアクセスできます。 フィルター ドライバーの変更には、このフラグを使用できません。

ドライバーは、構成情報へのアクセスを完了した後、NdisCloseConfiguration 関数を呼び出して、構成ハンドルと関連リソースを解放する必要があります。