PGET_NEIGHBORS コールバック関数 (routprot.h)
ルーター マネージャーは 、GetNeighbors 関数を呼び出して、指定したインターフェイスを介して接続されたネットワークのクエリアを取得します。
PGET_NEIGHBORS型は、このコールバック関数へのポインターを定義します。 GetNeighbors は、アプリケーション定義関数名のプレースホルダーです。
構文
PGET_NEIGHBORS PgetNeighbors;
DWORD PgetNeighbors(
[in] DWORD InterfaceIndex,
[in] PDWORD NeighborList,
[in, out] PDWORD NeighborListSize,
[out] PBYTE InterfaceFlags
)
{...}
パラメーター
[in] InterfaceIndex
ルーティング プロトコルがクエリアを提供するインターフェイスのインデックスを指定します。
[in] NeighborList
配列 DWORD 変数へのポインター。 ルーティング プロトコルは、この配列にクエリアのアドレスを入力する必要があります。
ローカル コンピューターが、指定したインターフェイスを介して接続されているネットワークのクエリアである場合、ルーティング プロトコルでこの変数を入力する必要はありません。 代わりに、ルーティング プロトコルは NeighborListSize が指す値を 0 に設定する必要があります。 また、ルーティング プロトコルでは、InterfaceFlags パラメーターで返されるフラグにMRINFO_QUERIER_FLAGを追加する必要があります。
[in, out] NeighborListSize
入力時に、 DWORD 変数へのポインター。
出力時に、ルーティング プロトコルはこの変数に NeighborList パラメーターで返されるアドレスの長さ (バイト単位) を入力します。
[out] InterfaceFlags
次のフラグの 1 つ以上を受け取ります。 フラグは、指定されたインターフェイスを介して接続されているネットワーク上の他のコンピューターとのローカル コンピューターの関係を表します。
MRINFO_TUNNEL_FLAGMRINFO_PIM_FLAGMRINFO_DOWN_FLAG MRINFO_DISABLED_FLAGMRINFO_QUERIER_FLAGMRINFO_LEAF_FLAG
戻り値
関数が成功した場合、戻り値は NO_ERROR。
関数が失敗した場合、戻り値は次のいずれかのエラー コードになります。
値 | 説明 |
---|---|
|
ルーティング プロトコルが要求を完了できませんでした。 |
|
NeighborList が指すバッファーのサイズが、アドレスを保持するのに十分な大きさではありません。 必要なサイズは、NeighborListSize パラメーターが指す DWORD 変数で返されます。 |
|
InterfaceIndex パラメーターが無効です (たとえば、そのインデックスにインターフェイスが存在しません)。 |
注釈
この関数を実装する必要があるのは、マルチキャスト ルーティング プロトコルのみです。 非マルチキャスト ルーティング プロトコルでは、この関数のポインター値として NULL を 渡す必要 MPR_ROUTING_CHARACTERISTICS
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | サポートなし |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | routprot.h |