PeerGraphUpdateRecord 函数 (p2p.h)

PeerGraphUpdateRecord 函数更新对等图中的记录,然后将记录充值到对等图中的每个节点。

语法

NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerGraphUpdateRecord(
  [in] HGRAPH       hGraph,
  [in] PPEER_RECORD pRecord
);

parameters

[in] hGraph

对等图的句柄。

[in] pRecord

指向包含记录新数据的 PEER_RECORD 结构的指针。

返回值

如果函数调用成功,则返回值S_OK。 否则,它将返回以下值之一。

返回代码 说明
E_INVALIDARG
其中一个参数无效。
PEER_E_GRAPH_NOT_READY
对等图从未同步过。 在同步图形之前,无法更新记录。
PEER_E_INVALID_GRAPH
对等图的句柄无效。
PEER_E_NOT_INITIALIZED
必须先通过调用 PeerGraphStartup 初始化对等图,然后才能使用此函数。
PEER_E_RECORD_NOT_FOUND
找不到指定的记录。

注解

可以修改 PEER_RECORD 结构的以下成员:

  • pwzAttributes
  • ftExpiration - 到期时间只能增加
  • data
  • pwzLastModified - 如果未提供任何值,则默认填充

示例

此代码片段演示如何更新记录。

// dwFlags is updated to automatically refresh the record if it is about to expire.
    record.dwFlags = PEER_RECORD_FLAG_AUTOREFRESH;
    // The record data is updated with the string contained in pwzUserData.
    record.data.cbData = (ULONG) wcslen(pwzUserData) * sizeof(WCHAR);
    record.data.pbData = (PBYTE) pwzUserData;

    HRESULT hr = PeerGraphUpdateRecord(hGraph, &record;);

    if (FAILED(hr))
    {
        // Insert your code to handle the error here.
    }
    else
    {
        // Insert your application specific code here.
    }

要求

   
最低受支持的客户端 具有 SP2 的 Windows XP [仅限桌面应用],具有 SP1 的 Windows XP 与高级网络包 forWindows XP
最低受支持的服务器 无受支持的版本
目标平台 Windows
标头 p2p.h
Library P2PGraph.lib
DLL P2PGraph.dll

请参阅

PEER_RECORD