共用方式為


mgmGetNextMfe 函式 (mgm.h)

MgmGetNextMfe 函式會擷取一或多個 MFE。 路由表管理員會從指定 MFE 後面的 MFE 開始擷取 MFE。 函式可以擷取零、一或多個 MFE。 傳回的 MFE 數目取決於 MFE 的大小,以及呼叫函式時用戶端所提供的緩衝區大小。

緩衝區中傳回的數據會先依群組排序,然後再依群組內的來源排序。

語法

DWORD MgmGetNextMfe(
  [in]      PMIB_IPMCAST_MFE pimmStart,
  [in, out] PDWORD           pdwBufferSize,
  [in, out] PBYTE            pbBuffer,
  [in, out] PDWORD           pdwNumEntries
);

參數

[in] pimmStart

MIB_IPMCAST_MFE 結構的指標,指定從何處開始擷取 MFE。 MIB_IPMCAST_MFE 結構的 dwSource 和 dwGroup 成員會識別 MFE。 指定先前呼叫 MgmGetFirstMfeMgmGetNextMfe 所傳回的最後一個 MFE 來源和群組。

[in, out] pdwBufferSize

在輸入時, pdwBufferSizeDWORD 大小的記憶體位置指標,其中包含 pbBuffer 的大小,以位元組為單位。

在輸出上,如果傳回值是 ERROR_INSUFFICIENT_BUFFER,pdwBufferSize 會收到最小大小 pbBuffer 必須是保留 MFE;否則, pdwBufferSize 的值會保持不變。

[in, out] pbBuffer

在輸入時,客戶端必須提供緩衝區的指標。

在輸出上, pbBuffer 包含一或多個 MFE。 每個 MFE 都是 MIB_IPMCAST_MFE 結構。

[in, out] pdwNumEntries

在輸入時,客戶端必須提供 DWORD 大小的記憶體位置指標。

在輸出時, pdwNumEntries 會接收 pbBuffer 中包含的 MFE 數目。

傳回值

如果函式成功,傳回值會NO_ERROR。

如果函式失敗,傳回值就是下列其中一個錯誤碼。

意義
ERROR_CAN_NOT_COMPLETE
無法完成此函式的呼叫。
ERROR_INSUFFICIENT_BUFFER
指定的緩衝區太小,甚至一個 MFE。 客戶端應該檢查 pdwBufferSize 的值,以瞭解擷取一個 MFE 所需的最小緩衝區大小。
ERROR_MORE_DATA
有更多 MFE 可供使用。
ERROR_NO_MORE_ITEMS
沒有其他 MFE 可供使用。 傳回零個或多個 MFE;檢查 pdwNumEntries 的值,以確認傳回多少 MFE。

備註

此函式用來繼續循序擷取 MFE;使用 MgmGetFirstMfe 來啟動擷取程式。

一般而言,若要擷取 MFE,請先呼叫 MgmGetFirstMfe。 然後,呼叫 MgmGetNextMfe 一或多次,直到沒有更多 MFE 傳回為止。 對 MgmGetNextMfe 的每個呼叫都應該在先前呼叫 MgmGetNextMfe 傳回的最後一個 MFE 之後開始, (或對 MgmGetFirstMfe 的初始呼叫) 。 若要這樣做,用戶端會在先前呼叫傳回的緩衝區中指定最後一個來源和群組。

注意pbBuffer 所指向的緩衝區大小下限不是固定的;每個 MFE 都不同。 使用 sizeof (MIB_IPMCAST_MFE) 宏來判斷緩衝區中傳回的每個 MFE 大小。
 

規格需求

需求
最低支援的用戶端 都不支援
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 mgm.h
程式庫 Rtm.lib
Dll Rtm.dll

另請參閱

MIB_IPMCAST_MFE

MgmGetFirstMfe

MgmGetMfe