次の方法で共有


MgmRegisterMProtocol 関数 (mgm.h)

MgmRegisterMProtocol 関数は、マルチキャスト グループ マネージャーに登録するためにクライアントによって使用されます。 登録が完了すると、マルチキャスト グループ マネージャーはクライアントにハンドルを返します。 クライアントは、後続の MGM 関数呼び出しでこのハンドルを指定する必要があります。

構文

DWORD MgmRegisterMProtocol(
  [in]  PROUTING_PROTOCOL_CONFIG prpiInfo,
  [in]  DWORD                    dwProtocolId,
  [in]  DWORD                    dwComponentId,
  [out] HANDLE                   *phProtocol
);

パラメーター

[in] prpiInfo

クライアントへのコールバックへのポインターを含む ROUTING_PROTOCOL_CONFIG 構造体へのポインター。

[in] dwProtocolId

クライアントの ID を指定します。 ID はクライアントごとに一意です。

[in] dwComponentId

クライアントの特定のインスタンスのコンポーネント ID を指定します。 このパラメーターは、クライアントのインスタンスを一意に識別するために dwProtocolId と共に使用されます。

[out] phProtocol

入力時に、クライアントはハンドルへのポインターを指定する必要があります。

出力時に、 phProtocol は クライアントの登録ハンドルを受け取ります。 このハンドルは、マルチキャスト グループ マネージャーへの後続の呼び出しで使用する必要があります。

戻り値

関数が成功した場合、戻り値はNO_ERROR。

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

意味
ERROR_ALREADY_EXISTS
同じプロトコル ID とコンポーネント ID を持つエントリが既に存在するため、指定されたクライアントを登録できません。
ERROR_CAN_NOT_COMPLETE
この関数の呼び出しを完了できませんでした。
ERROR_NOT_ENOUGH_MEMORY
この操作を完了するのに十分なメモリがありません。
 
 

注釈

プロトコルの登録は、マルチキャスト ルーティング プロトコルが実行する必要がある最初の操作です。 登録後、ルーティング プロトコルは、グループ メンバーシップを追加または削除する前に、適切なインターフェイスの所有権を取得する必要があります。

特定の時点でインターフェイスの所有権を取得できるのは、1 つのルーティング プロトコルのみです。 複数のルーティング プロトコルをマルチキャスト グループ マネージャーに登録できます。各プロトコルは異なるインターフェイスを所有しています。

要件

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

こちらもご覧ください

MgmDeRegisterMProtocol

MgmTakeInterfaceOwnership

ROUTING_PROTOCOL_CONFIG