PeerPnrpStartResolve 함수는 비동기 피어 이름 확인 작업을 시작합니다.
구문
NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerPnrpStartResolve(
[in] PCWSTR pcwzPeerName,
[in, optional] PCWSTR pcwzCloudName,
[in, optional] ULONG cMaxEndpoints,
[in] HANDLE hEvent,
[out] HRESOLUTION *phResolve
);
매개 변수
[in] pcwzPeerName
엔드포인트 주소를 가져올 피어 이름을 포함하는 0으로 끝나는 문자열에 대한 포인터입니다.
[in, optional] pcwzCloudName
피어 이름을 resolve PNRP 클라우드의 이름을 포함하는 0으로 끝나는 문자열에 대한 포인터입니다. NULL인 경우 모든 클라우드에 대해 해상도가 수행됩니다. PEER_PNRP_ALL_LINK_CLOUDS 경우 모든 링크 로컬 클라우드에 대해 해상도가 수행됩니다. "GLOBAL_"을 지정하면 전역 클라우드에서 해결 방법이 발생합니다.
[in, optional] cMaxEndpoints
피어 이름에 대해 반환할 최대 엔드포인트 수입니다.
[in] hEvent
제공된 피어 이름에 대해 피어 엔드포인트가 확인되고 PeerPnrpGetEndpoint를 호출하여 사용할 준비가 되면 신호를 받은 이벤트에 대한 핸들입니다. 이 이벤트는 PNRP 서비스에서 검색된 모든 엔드포인트에 대해 신호를 받습니다. PeerPnrpGetEndpoint 호출에서 PEER_NO_MORE 반환되는 경우 해당 피어에 대한 모든 엔드포인트가 발견됩니다.
[out] phResolve
이 피어 이름 확인 요청에 대한 핸들입니다. 이 핸들은 해결 이벤트가 발생하고 PeerPnrpGetEndpoint 에 대한 해당 호출을 사용하여 엔드포인트를 가져온 후 또는 작업이 실패한 경우 PeerPnrpEndResolve에 제공해야 합니다.
반환 값
함수 호출이 성공하면 반환 값이 S_OK. 그렇지 않으면 다음 값 중 하나를 반환합니다.
| 반환 코드 | 설명 |
|---|---|
|
매개 변수 중 하나가 잘못되었습니다. |
|
지정된 작업을 수행하기에 충분한 메모리가 없습니다. |
설명
PeerPnrpStartResolve 는 비동기 피어 이름 확인 작업에 대한 핸들을 만듭니다.
엔드포인트를 찾을 때마다 hEvent에 제공된 이벤트 핸들이 신호를 받고, 해당 엔드포인트를 가져오려면 애플리케이션에서 phResolve 핸들을 사용하여 PeerPnrpGetEndpoint를 호출해야 합니다.
마지막 이벤트는 peerPnrpStartResolve 에 제공된 피어 이름에 해당하는 모든 엔드포인트가 발견되었음을 나타내는 PEER_E_NO_MORE 오류 코드를 지정합니다. 이때 애플리케이션은 PeerPnrpEndResolve를 호출하여 핸들을 닫아야 합니다.
핸들은 등록된 프로세스와 별도로 프로세스에서 확인되어야 합니다. 핸들이 등록되고 동일한 프로세스 내에서 확인되면 인식되지 않습니다.
요구 사항
| 요구 사항 | 값 |
|---|---|
| 지원되는 최소 클라이언트 | WINDOWS XP SP2 [데스크톱 앱만 해당], Windows XP용 고급 네트워킹 팩이 있는 WINDOWS XP SP1 |
| 지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
| 대상 플랫폼 | Windows |
| 헤더 | p2p.h |
| 라이브러리 | P2P.lib |
| DLL | P2P.dll |