다음을 통해 공유


PeerGraphOpen 함수(p2p.h)

PeerGraphOpen 함수는 로컬 노드 또는 원격 노드에서 이전에 만든 피어 그래프를 엽니다. 피어 그래프에 대한 핸들이 반환되지만 네트워크 연결이 설정되지 않았습니다.

구문

NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerGraphOpen(
  [in]  PCWSTR                   pwzGraphId,
  [in]  PCWSTR                   pwzPeerId,
  [in]  PCWSTR                   pwzDatabaseName,
  [in]  PPEER_SECURITY_INTERFACE pSecurityInterface,
  [in]  ULONG                    cRecordTypeSyncPrecedence,
  [in]  const GUID               *pRecordTypeSyncPrecedence,
  [out] HGRAPH                   *phGraph
);

매개 변수

[in] pwzGraphId

열 피어 그래프의 ID를 지정합니다. 이 식별자는 PeerGraphCreate 호출에 사용된 ID와 동일해야 합니다.

참고 잘못된(긴) 그래프 ID를 지정하는 피어는 그래프를 열고 성공적으로 연결할 수 있지만 레코드의 유효성을 검사할 수 없으므로 피어가 레코드를 그래프에 게시할 수 없습니다.
 

[in] pwzPeerId

그래프를 여는 피어의 고유 ID를 지정합니다.

참고 잘못된(긴) 그래프 ID를 지정하는 피어는 그래프를 열고 성공적으로 연결할 수 있지만 레코드의 유효성을 검사할 수 없으므로 피어가 레코드를 그래프에 게시할 수 없습니다.
 

[in] pwzDatabaseName

그래프를 처음 만들거나 열 때 이 피어 그래프와 연결된 데이터베이스의 이름을 지정합니다.

[in] pSecurityInterface

피어 그래프의 보안 공급자를 지정합니다. 이 매개 변수는 PeerGraphCreate에 대한 원래 호출에 지정된 pSecurityInterface와 동일한 값을 지정해야 합니다.

[in] cRecordTypeSyncPrecedence

pRecordTypeSyncPrecedence 매개 변수의 레코드 형식 수를 지정합니다.

[in] pRecordTypeSyncPrecedence

레코드 형식의 배열을 가리킵니다. 이 배열은 지정된 레코드 형식의 레코드가 동기화되는 순서를 지정합니다. 순서는 0에서 N까지일 수 있습니다. 여기서 0은 동기화할 첫 번째 레코드 유형입니다. 레코드 형식이 배열에 지정되지 않은 경우 배열에 지정된 형식이 동기화된 후 기본 순서로 동기화됩니다.

기본 순서를 사용하도록 NULL 을 지정합니다. cRecordTypeSyncPrecedence가 0인 경우 이 매개 변수는 NULL이어야 합니다.

[out] phGraph

열려 있는 피어 그래프에 대한 핸들을 받습니다. 이 핸들이 필요하지 않거나 필요하지 않은 경우 PeerGraphClose를 호출하여 해제합니다.

반환 값

기존 데이터베이스를 성공적으로 열면 S_OK 반환합니다. 그렇지 않으면 함수는 다음 값 중 하나를 반환합니다.

반환 코드 설명
E_INVALIDARG
매개 변수 중 하나가 잘못되었습니다.
E_OUTOFMEMORY
지정된 작업을 수행하기에 충분한 메모리가 없습니다.
PEER_S_GRAPH_DATA_CREATED
기존 데이터베이스를 찾을 수 없으며 새 데이터베이스가 성공적으로 만들어집니다. 기존 데이터베이스를 찾아 성공적으로 열면 S_OK 반환됩니다.
PEER_E_INVALID_GRAPH
피어 그래프에 대한 핸들이 잘못되었습니다.
PEER_E_NOT_INITIALIZED
이 함수를 사용하기 전에 PeerGraphStartup 호출을 사용하여 피어 그래프를 초기화해야 합니다.

설명

자체 SSP를 개발한 경우 교착 상태가 발생할 수 있으므로 애플리케이션에서 PeerGraphing API를 호출하여 그래프 데이터베이스의 데이터에 액세스해서는 안 됩니다. 대신 애플리케이션은 캐시된 정보 복사본을 확인해야 합니다.

PeerGraphOpen이 호출된 후 애플리케이션은 이벤트를 구독하거나 데이터베이스 또는 둘 다를 가져올 수 있습니다.

피어 그래프가 한 번 이상 동기화될 때까지는 많은 함수(예: PeerGraphListen 또는 레코드 관리 함수)를 사용할 수 없으며 이러한 함수에 대한 호출이 실패합니다. 피어 그래프는 다음 중 하나가 발생할 때 한 번 이상 동기화됩니다.

  • PeerGraphOpen 호출은 S_OK 반환합니다. 즉, 이미 동기화된 데이터베이스가 발견되었습니다.
  • PeerGraphCreate 함수가 호출되었습니다.
  • PEER_GRAPH_EVENT_STATUS_CHANGED 이벤트가 트리거되고 dwStatus 멤버의 PEER_GRAPH_STATUS_SYNCHRONIZED 플래그가 설정되었습니다.

요구 사항

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

추가 정보

PEER_SECURITY_INTERFACE

PeerGraphClose

PeerGraph만들기

PeerGraphListen