다음을 통해 공유


PeerGraphUpdateRecord 함수(p2p.h)

PeerGraphUpdateRecord 함수는 피어 그래프의 레코드를 업데이트한 다음, 피어 그래프의 각 노드에 레코드를 플러드합니다.

구문

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

매개 변수

[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.
    }

요구 사항

   
지원되는 최소 클라이언트 WINDOWS XP SP2 [데스크톱 앱만 해당],Windows XP SP1 및 고급 네트워킹 팩 forWindows XP
지원되는 최소 서버 지원되는 버전 없음
대상 플랫폼 Windows
헤더 p2p.h
라이브러리 P2PGraph.lib
DLL P2PGraph.dll

추가 정보

PEER_RECORD