インターフェイス プロバイダーとしての登録
NDIS インターフェイス プロバイダーは、NDIS ネットワーク インターフェイスの情報を提供および管理するソフトウェア コンポーネントです。 たとえば、プロトコル ドライバー、MUX 中間ドライバー、NDIS はインターフェイス プロバイダーです。 (NDIS は、ミニポート ドライバーとフィルター ドライバーのプロキシ インターフェイス プロバイダーを提供します。ただし、ミニポート ドライバーとフィルター ドライバーは、インターフェイス プロバイダーにすることもできます)。各インターフェイス プロバイダーは、NdisIfRegisterProvider 関数を呼び出して、ネットワーク インターフェイス プロバイダーとして登録します。
NdisIfRegisterProvider の呼び出しに成功した場合、NdisIfRegisterProvider は、pNdisProviderHandle パラメーターによって指定されるアドレスでハンドルを返します。 呼び出し元は、後続の呼び出しでこのハンドルを使用します (たとえば、インターフェイスを登録します)。 ProviderCharacteristics パラメーターは、OID クエリおよび設定要求を処理するプロバイダーのエントリ ポイントを含む、NDIS_IF_PROVIDER_CHARACTERISTICS 構造をポイントします。 NDIS_IF_PROVIDER_CHARACTERISTICS には、次のクエリおよび設定関数が含まれています。
インターフェイス プロバイダーのクエリおよび設定ハンドラーについて詳しくは、「NDIS インターフェイス プロバイダーでの OID クエリおよび設定要求の処理」をご覧ください。
NDIS ドライバーは、ネットワーク インターフェイス プロバイダーとして登録を解除する NdisIfDeregisterProvider 関数を呼び出すことができます。 たとえば、NDIS ドライバーは、アンロードされるときにインターフェイス プロバイダーとして登録解除する必要があります。 インターフェイス プロバイダーは、NdisIfDeregisterProvider を呼び出す前に、インターフェイスが登録されていないことを確認する必要があります。 プロバイダーは、NdisIfDeregisterProvider を呼び出した後、NdisIfDeregisterProvider の NdisProviderHandle パラメーターで渡されたプロバイダー ハンドルを使用しないでください。