Função PeerPnrpStartResolve (p2p.h)
A função PeerPnrpStartResolve inicia uma operação assíncrona de resolução de nome de par.
Sintaxe
NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerPnrpStartResolve(
[in] PCWSTR pcwzPeerName,
[in, optional] PCWSTR pcwzCloudName,
[in, optional] ULONG cMaxEndpoints,
[in] HANDLE hEvent,
[out] HRESOLUTION *phResolve
);
Parâmetros
[in] pcwzPeerName
Ponteiro para uma cadeia de caracteres terminada em zero que contém o nome do par para o qual os endereços do ponto de extremidade serão obtidos.
[in, optional] pcwzCloudName
Ponteiro para uma cadeia de caracteres terminada em zero que contém o nome da nuvem PNRP sob a qual resolve o nome do par. Se FOR NULL, a resolução será executada para todas as nuvens. Se PEER_PNRP_ALL_LINK_CLOUDS, a resolução será executada para todas as nuvens locais de link. Quando "GLOBAL_" é especificado, a resolução ocorre na nuvem global.
[in, optional] cMaxEndpoints
O número máximo de pontos de extremidade a serem retornados para o nome do par.
[in] hEvent
Manipule para o evento sinalizado quando um ponto de extremidade par é resolvido para o nome do par fornecido e está pronto para consumo chamando PeerPnrpGetEndpoint. Esse evento é sinalizado para cada ponto de extremidade descoberto pelo serviço PNRP. Se PEER_NO_MORE for retornado por uma chamada para PeerPnrpGetEndpoint, todos os pontos de extremidade serão encontrados para esse par.
[out] phResolve
Manipule para essa solicitação de resolução de nome de par. Esse identificador deve ser fornecido a PeerPnrpEndResolve depois que os eventos de resolução forem gerados e os pontos de extremidade forem obtidos com chamadas correspondentes para PeerPnrpGetEndpoint ou se a operação falhar.
Retornar valor
Se a chamada de função for bem-sucedida, o valor retornado será S_OK. Caso contrário, ele retornará um dos valores a seguir.
Código de retorno | Descrição |
---|---|
|
Um dos parâmetros não é válido. |
|
Não há memória suficiente para executar a operação especificada. |
Comentários
PeerPnrpStartResolve cria um identificador para uma operação assíncrona de resolução de nome de par.
Sempre que um ponto de extremidade é encontrado, o identificador de evento fornecido em hEvent é sinalizado e PeerPnrpGetEndpoint deve ser chamado com o identificador phResolve pelo aplicativo para obter esse ponto de extremidade.
O último evento especifica o código de erro PEER_E_NO_MORE, indicando que todos os pontos de extremidade correspondentes ao nome do par fornecido a PeerPnrpStartResolve foram encontrados. Neste momento, o aplicativo deve fechar o identificador com uma chamada para PeerPnrpEndResolve.
Um identificador deve ser resolvido em um processo separado do processo em que foi registrado. Se um identificador for registrado e resolvido dentro do mesmo processo, ele não será reconhecido.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP com SP2 [somente aplicativos da área de trabalho], Windows XP com SP1 com o Pacote de Rede Avançado para Windows XP |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | p2p.h |
Biblioteca | P2P.lib |
DLL | P2P.dll |