Funzione PeerPnrpResolve (p2p.h)
La funzione PeerPnrpResolve ottiene l'indirizzo endpoint (es) registrato per un nome peer specifico.
Sintassi
NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerPnrpResolve(
[in] PCWSTR pcwzPeerName,
[in, optional] PCWSTR pcwzCloudName,
[in, out] ULONG *pcEndpoints,
[out] PPEER_PNRP_ENDPOINT_INFO *ppEndpoints
);
Parametri
[in] pcwzPeerName
Puntatore a una stringa con terminazione zero contenente il nome peer per cui verranno ottenuti gli indirizzi dell'endpoint.
[in, optional] pcwzCloudName
Puntatore a una stringa con terminazione zero contenente il nome del cloud PNRP in cui risolvere il nome del peer. Se NULL, la risoluzione viene eseguita in tutti i cloud. Se PEER_PNRP_ALL_LINK_CLOUDS, la risoluzione viene eseguita in tutti i cloud locali di collegamento. Quando "GLOBAL_", la risoluzione verrà eseguita solo nel cloud globale.
[in, out] pcEndpoints
Numero massimo di endpoint da restituire in ppEndpoints. Al termine, questo parametro contiene il numero effettivo di endpoint in ppEndpoints.
[out] ppEndpoints
Puntatore a un elenco di strutture PEER_PNRP_ENDPOINT_INFO che contengono gli endpoint per cui il nome peer è stato risolto correttamente. Ogni endpoint contiene uno o più indirizzi IP in cui è possibile raggiungere il nodo peer.
Valore restituito
Se la chiamata di funzione ha esito positivo, il valore restituito viene S_OK. In caso contrario, restituisce uno dei valori seguenti.
Codice restituito | Descrizione |
---|---|
|
Uno dei parametri non è valido. |
|
Memoria insufficiente per eseguire l'operazione specificata. |
Commenti
Questa chiamata è sincrona e verrà bloccata fino al completamento. Per la risoluzione dei nomi peer asincroni, chiamare PeerPnrpStartResolve e ottenere l'indirizzo dell'endpoint risolto quando viene generato l'evento fornito.
Un handle deve essere risolto in un processo separato dal processo in cui è stato registrato. Se un handle viene registrato e risolto all'interno dello stesso processo, non verrà riconosciuto.
Quando viene eseguita la risoluzione per tutti i cloud, viene rilasciata contemporaneamente a ogni cloud. Il metodo restituirà non appena ha ricevuto risultati sufficienti da qualsiasi combinazione di nuvole.
Il timeout di risoluzione predefinito usato internamente da questo metodo è 30 secondi. Se è necessario un timeout specifico, deve essere usata la funzione PeerPnrpStartResolve asincrona.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP con SP2 [solo app desktop],Windows XP con SP1 con Advanced Networking Pack per Windows XP |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | p2p.h |
Libreria | P2P.lib |
DLL | P2P.dll |