MgmTakeInterfaceOwnership 関数 (mgm.h)
MgmTakeInterfaceOwnership 関数は、インターフェイスで有効になっている場合、クライアント (ルーティング プロトコルなど) によって呼び出されます。
特定のインターフェイスの所有権を取得できるクライアントは、いつでも 1 つだけです。 この規則の唯一の例外は IGMP です。 IGMP は、インターフェイス上の別のクライアントと共存できます。
構文
DWORD MgmTakeInterfaceOwnership(
[in] HANDLE hProtocol,
[in] DWORD dwIfIndex,
[in] DWORD dwIfNextHopAddr
);
パラメーター
[in] hProtocol
MgmRegisterMProtocol の以前の呼び出しから取得したプロトコルを処理します。
[in] dwIfIndex
所有権を取得するインターフェイスのインデックスを指定します。
[in] dwIfNextHopAddr
dwIfIndex で指定されたインデックスに対応する次ホップのアドレスを指定します。 dwIfIndex パラメーターと dwIfNextHopIPAddr パラメーターは、ポイント対マルチポイント インターフェイスの次ホップを一意に識別します。 ポイント対マルチポイント インターフェイスは、1 つのインターフェイスが複数のネットワークに接続する接続です。 ポイント対マルチポイント インターフェイスの例としては、非ブロードキャスト マルチ アクセス (NBMA) インターフェイスと、すべてのダイヤルアップ クライアントが接続する内部インターフェイスがあります。
ブロードキャスト インターフェイス (イーサネット インターフェイスなど) またはポイントツーポイント インターフェイスの場合は、 dwIfIndex の値のみで識別されます。0 を指定します。
戻り値
関数が成功した場合、戻り値はNO_ERROR。
関数が失敗した場合、戻り値は次のいずれかのエラー コードになります。
値 | 意味 |
---|---|
|
指定されたインターフェイスは、別のルーティング プロトコルによって既に所有されています。 |
|
この関数の呼び出しを完了できませんでした。 |
|
クライアントへのハンドルが無効です。 |
|
この操作を完了するのに十分なメモリがありません。 |
注釈
クライアントは、それ自体をマルチキャスト グループ マネージャーに登録した後、グループ メンバーシップ エントリを追加する前に、インターフェイスの所有権を取得する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | サポートなし |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | mgm.h |
Library | Rtm.lib |
[DLL] | Rtm.dll |