次の方法で共有


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。

関数が失敗した場合、戻り値は次のいずれかのエラー コードになります。

意味
ERROR_ALREADY_EXISTS
指定されたインターフェイスは、別のルーティング プロトコルによって既に所有されています。
ERROR_CAN_NOT_COMPLETE
この関数の呼び出しを完了できませんでした。
ERROR_INVALID_PARAMETER
クライアントへのハンドルが無効です。
ERROR_NOT_ENOUGH_MEMORY
この操作を完了するのに十分なメモリがありません。
 
 

注釈

クライアントは、それ自体をマルチキャスト グループ マネージャーに登録した後、グループ メンバーシップ エントリを追加する前に、インターフェイスの所有権を取得する必要があります。

要件

要件
サポートされている最小のクライアント サポートなし
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー mgm.h
Library Rtm.lib
[DLL] Rtm.dll

こちらもご覧ください

MgmGetProtocolOnInterface

MgmRegisterMProtocol

MgmReleaseInterfaceOwnership