Funzione PeerPnrpStartResolve (p2p.h)
La funzione PeerPnrpStartResolve avvia un'operazione di risoluzione dei nomi peer asincrona.
Sintassi
NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerPnrpStartResolve(
[in] PCWSTR pcwzPeerName,
[in, optional] PCWSTR pcwzCloudName,
[in, optional] ULONG cMaxEndpoints,
[in] HANDLE hEvent,
[out] HRESOLUTION *phResolve
);
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 per tutti i cloud. Se PEER_PNRP_ALL_LINK_CLOUDS, la risoluzione viene eseguita per tutti i cloud locali di collegamento. Quando si specifica "GLOBAL_", la risoluzione viene eseguita nel cloud globale.
[in, optional] cMaxEndpoints
Numero massimo di endpoint da restituire per il nome peer.
[in] hEvent
Handle per l'evento segnalato quando un endpoint peer viene risolto per il nome peer fornito e pronto per l'utilizzo chiamando PeerPnrpGetEndpoint. Questo evento viene segnalato per ogni endpoint individuato dal servizio PNRP. Se PEER_NO_MORE viene restituito da una chiamata a PeerPnrpGetEndpoint, tutti gli endpoint sono stati trovati per tale peer.
[out] phResolve
Gestire questa richiesta di risoluzione dei nomi peer. Questo handle deve essere fornito a PeerPnrpEndResolve dopo la generazione degli eventi di risoluzione e gli endpoint vengono ottenuti con le chiamate corrispondenti a PeerPnrpGetEndpoint o se l'operazione ha esito negativo.
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
PeerPnrpStartResolve crea un handle per un'operazione di risoluzione dei nomi peer asincrona.
Ogni volta che viene trovato un endpoint, l'handle eventi fornito in hEvent viene segnalato e PeerPnrpGetEndpoint deve essere chiamato con l'handle phResolve dall'applicazione per ottenere tale endpoint.
L'ultimo evento specifica il codice di errore PEER_E_NO_MORE che indica che sono stati trovati tutti gli endpoint corrispondenti al nome peer fornito a PeerPnrpStartResolve . Al momento, l'applicazione deve chiudere l'handle con una chiamata a PeerPnrpEndResolve.
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.
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 |