다음을 통해 공유


PeerGraphListen 함수(p2p.h)

PeerGraphListen 함수는 피어 그래프가 들어오는 연결에 대한 수신 대기를 시작해야 했음을 나타냅니다.

구문

NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerGraphListen(
  [in] HGRAPH hGraph,
  [in] DWORD  dwScope,
  [in] DWORD  dwScopeId,
  [in] WORD   wPort
);

매개 변수

[in] hGraph

수신 대기할 피어 그래프를 지정합니다.

[in] dwScope

수신 대기할 IPv6 scope 지정합니다. 유효한 값은 다음 표에서 식별됩니다. scope 대한 자세한 내용은 링크-로컬 및 Site-Local 주소를 참조하세요.

의미
PEER_GRAPH_SCOPE_GLOBAL
범위에는 인터넷이 포함됩니다.
PEER_GRAPH_SCOPE_SITELOCAL
범위는 사이트(예: 회사 인트라넷)로 제한됩니다.
PEER_GRAPH_SCOPE_LINKLOCAL
범위는 로컬 서브넷으로 제한됩니다.

[in] dwScopeId

수신 대기할 IPv6 scope ID를 지정합니다. 지정된 scope 모든 인터페이스에서 수신 대기하도록 0을 지정합니다.

참고dwScopePEER_GRAPH_SCOPE_SITELOCAL 또는PEER_GRAPH_SCOPE_LINKLOCAL 경우 scope ID 0(0)이 허용되지 않습니다.
 

[in] wPort

수신 대기할 포트를 지정합니다. 동적 포트를 사용하도록 0을 지정합니다. 0(0)을 지정한 경우 PeerGraphGetNodeInfo 를 사용하여 데이터를 검색합니다.

반환 값

작업이 성공하면 S_OK 반환합니다. 그렇지 않으면 함수는 다음 표에서 식별된 값 중 하나를 반환합니다.

반환 코드 설명
E_INVALIDARG
매개 변수 중 하나가 잘못되었습니다.
E_OUTOFMEMORY
지정된 작업을 수행하기에 충분한 메모리가 없습니다.
PEER_E_GRAPH_NOT_READY
그래프가 동기화된 적이 없습니다. 피어 그래프가 동기화될 때까지 애플리케이션이 수신 대기할 수 없습니다.
PEER_E_INVALID_GRAPH
피어 그래프에 대한 핸들이 잘못되었습니다.
PEER_E_NOT_INITIALIZED
이 함수를 사용하기 전에 PeerGraphStartup을 호출하여 그래프를 초기화해야 합니다.

설명

직접 연결을 허용하려면 노드가 PEER_GRAPH_EVENT_DIRECT_CONNECTION 이벤트를 구독해야 합니다.

이 함수를 호출하려면 먼저 애플리케이션에서 PeerGraphCreate 또는 PeerGraphOpen을 호출해야 합니다.

참고 피어 그래프를 처음 열면 노드가 피어 그래프에 연결되고 동기화될 때까지 PeerGraphListen 에 대한 모든 호출이 실패합니다.
 
모든 피어 그래프가 동일한 프로세스에 있는 경우 애플리케이션은 서로 다른 피어 그래프에 대해 동일한 포트 ID를 지정할 수 있습니다.

예제

다음 코드 조각은 PeerGraphListen 함수를 사용하는 방법을 보여줍니다.

    // g_hGraph is a handle to the Graph obtained from a previous successful call to PeerGraphCreate or PeerGraphOpen.
    // dwScope should be set to the same scope used to create the graph.  This example assumes the graph was created in the Global scope.
    // g_usPort is the port to use for Graphing.  Use zero to obtain a port dynamically.
    HRESULT hr = PeerGraphListen(g_hGraph, PEER_GRAPH_SCOPE_GLOBAL, 0, g_usPort);

    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

추가 정보

PeerGraphConnect

PeerGraph만들기

PeerGraphGetNodeInfo

PeerGraphOpen