PeerGraphGetNextItem 函数 (p2p.h)
PeerGraphGetNextItem 函数获取通过调用以下函数创建的枚举中的下一项,这将返回对等枚举句柄:
语法
NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerGraphGetNextItem(
[in] HPEERENUM hPeerEnum,
[in, out] ULONG *pCount,
[out] PVOID **pppvItems
);
参数
[in] hPeerEnum
枚举的句柄。
[in, out] pCount
输入指定要获取的项数。
输出接收实际获取的项数。
注意 如果 pCount 为零 (0) 输出,则到达枚举的末尾。
[out] pppvItems
接收指向所请求项的指针数组。 数组中包含的指针数由 pCount 的输出值指定。 返回的实际数据取决于枚举的类型。 返回的结构类型如下: PEER_CONNECTION_INFO、 PEER_NODE_INFO 和 PEER_RECORD
返回值
如果函数调用成功,则返回值 S_OK。 否则,它将返回以下值之一。
返回代码 | 说明 |
---|---|
|
一个参数无效。 |
|
没有足够的内存来执行指定的操作。 |
|
必须先通过调用 PeerGraphStartup 初始化图形,然后才能使用此函数。 |
注解
不再需要数据时,通过调用 PeerGraphFreeData 释放 ppvItems。
应用程序可以请求获取一系列项。 函数返回 pCount 或更少的项。
示例
以下代码片段演示如何使用 PeerGraphGetNextItem 枚举对象,并在处理完枚举后结束枚举。
//PeerGraphGetNextItem snippet
// hPeerEnum is a handle to the enumeration obtained from a successful call to PeerGraphEnumConnections,
// PeerGraphEnumNodes, PeerGraphEnumRecords, or PeerGraphSearchRecords.
// Set count equal to the maximum number of items you want returned. To obtain a count of all the items
// in the enumeration, call PeerGraphGetItemCount.
// ppRecord is an array of pointers to PEER_RECORD objects. PEER_CONNECTION_INFO and PEER_NODE_INFO structures
// are also supported.
HRESULT hr = PeerGraphGetNextItem(hPeerEnum, &count, (PVOID *)&ppRecord);
if (FAILED(hr))
{
// Insert your code to handle the error here.
}
else
{
// Free the data obtained by PeerGraphGetNextItem.
PeerGraphFreeData(ppRecord);
}
// If you are done with the enumeration, free the handle to the enumeration.
PeerGraphEndEnumeration(hPeerEnum);
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 具有 SP2 的 Windows XP [仅限桌面应用],具有 SP1 的 Windows XP 与高级网络包 forWindows XP |
最低受支持的服务器 | 无受支持的版本 |
目标平台 | Windows |
标头 | p2p.h |
Library | P2PGraph.lib |
DLL | P2PGraph.dll |