Partager via


PeerPnrpStartResolve, fonction (p2p.h)

La fonction PeerPnrpStartResolve démarre une opération de résolution de noms d’homologue asynchrone.

Syntaxe

NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerPnrpStartResolve(
  [in]           PCWSTR      pcwzPeerName,
  [in, optional] PCWSTR      pcwzCloudName,
  [in, optional] ULONG       cMaxEndpoints,
  [in]           HANDLE      hEvent,
  [out]          HRESOLUTION *phResolve
);

Paramètres

[in] pcwzPeerName

Pointeur vers une chaîne terminée à zéro qui contient le nom d’homologue pour lequel les adresses de point de terminaison seront obtenues.

[in, optional] pcwzCloudName

Pointeur vers une chaîne terminée à zéro qui contient le nom du cloud PNRP sous lequel résoudre le nom de l’homologue. Si la valeur est NULL, la résolution est effectuée pour tous les clouds. Si PEER_PNRP_ALL_LINK_CLOUDS, la résolution est effectuée pour tous les clouds locaux de liaison. Lorsque « GLOBAL_ » est spécifié, la résolution a lieu dans le cloud global.

[in, optional] cMaxEndpoints

Nombre maximal de points de terminaison à retourner pour le nom de l’homologue.

[in] hEvent

Gérez l’événement signalé lorsqu’un point de terminaison d’homologue est résolu pour le nom d’homologue fourni et qu’il est prêt à être consommé en appelant PeerPnrpGetEndpoint. Cet événement est signalé pour chaque point de terminaison découvert par le service PNRP. Si PEER_NO_MORE est retourné par un appel à PeerPnrpGetEndpoint, tous les points de terminaison ont été trouvés pour cet homologue.

[out] phResolve

Gérez cette demande de résolution de noms d’homologue. Ce handle doit être fourni à PeerPnrpEndResolve une fois les événements de résolution déclenchés et les points de terminaison obtenus avec les appels correspondants à PeerPnrpGetEndpoint, ou si l’opération échoue.

Valeur retournée

Si l’appel de fonction réussit, la valeur de retour est S_OK. Sinon, elle retourne l’une des valeurs suivantes.

Code de retour Description
E_INVALIDARG
L’un des paramètres n’est pas valide.
E_OUTOFMEMORY
La mémoire est insuffisante pour effectuer l’opération spécifiée.

Remarques

PeerPnrpStartResolve crée un handle pour une opération de résolution de noms d’homologue asynchrone.

Chaque fois qu’un point de terminaison est trouvé, le handle d’événement fourni dans hEvent est signalé et PeerPnrpGetEndpoint doit être appelé avec le handle phResolve par l’application pour obtenir ce point de terminaison.

Le dernier événement spécifie le code d’erreur PEER_E_NO_MORE, indiquant que tous les points de terminaison correspondant au nom d’homologue fourni à PeerPnrpStartResolve ont été trouvés. À ce stade, l’application doit fermer le handle avec un appel à PeerPnrpEndResolve.

Un handle doit être résolu dans un processus distinct du processus dans lequel il a été inscrit. Si un handle est inscrit et résolu dans le même processus, il ne sera pas reconnu.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP avec SP2 [applications de bureau uniquement],Windows XP avec SP1 avec le Pack de mise en réseau avancé pour Windows XP
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête p2p.h
Bibliothèque P2P.lib
DLL P2P.dll

Voir aussi

PeerPnrpEndResolve

PeerPnrpGetEndpoint

PeerPnrpResolve