Compartilhar via


Função PeerPnrpResolve (p2p.h)

A função PeerPnrpResolve obtém os endereços de ponto de extremidade registrados para um nome de par específico.

Sintaxe

NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerPnrpResolve(
  [in]           PCWSTR                   pcwzPeerName,
  [in, optional] PCWSTR                   pcwzCloudName,
  [in, out]      ULONG                    *pcEndpoints,
  [out]          PPEER_PNRP_ENDPOINT_INFO *ppEndpoints
);

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 de 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, o resolve será executado em todas as nuvens. Se PEER_PNRP_ALL_LINK_CLOUDS, o resolve será executado em todas as nuvens locais de link. Quando "GLOBAL_", resolve só ocorrerá na nuvem global.

[in, out] pcEndpoints

O número máximo de pontos de extremidade a serem retornados em ppEndpoints. Após o retorno, esse parâmetro contém o número real de pontos de extremidade em ppEndpoints.

[out] ppEndpoints

Ponteiro para uma lista de estruturas de PEER_PNRP_ENDPOINT_INFO que contêm os pontos de extremidade para os quais o nome do par foi resolvido com êxito. Cada ponto de extremidade contém um ou mais endereços IP nos quais o nó par pode ser alcançado.

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
E_INVALIDARG
Um dos parâmetros não é válido.
E_OUTOFMEMORY
Não há memória suficiente para executar a operação especificada.

Comentários

Essa chamada é síncrona e será bloqueada até ser concluída. Para resolução de nome de par assíncrono, chame PeerPnrpStartResolve e obtenha o endereço do ponto de extremidade resolvido quando o evento fornecido for acionado.

Um identificador deve ser resolvido em um processo separado do processo em que foi registrado. Se um identificador for registrado e resolvido no mesmo processo, ele não será reconhecido.

Quando a resolução é executada para todas as nuvens, ela é emitida para cada nuvem simultaneamente. O método retornará assim que tiver recebido resultados suficientes de qualquer combinação de nuvens.

O tempo limite de resolve padrão usado internamente por esse método é de 30 segundos. Se um tempo limite específico for necessário, a função Asynchronous PeerPnrpStartResolve deverá ser usada.

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

Confira também

PeerPnrpStartResolve