PeerNameResolver.Resolve Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Résout un objet PeerName en un PeerNameRecord à l'aide du protocole PNRP.
Surcharges
Resolve(PeerName) |
Résout le PeerName spécifié dans tous les nuages connus de l'homologue appelant. |
Resolve(PeerName, Int32) |
Résout le nom d'homologue spécifié dans tous les nuages connus de l'homologue appelant, sans retourner plus que le nombre spécifié d'objets PeerNameRecord. |
Resolve(PeerName, Cloud) | |
Resolve(PeerName, Cloud, Int32) |
Résout le PeerName spécifié dans le Cloudspécifié, sans retourner plus que le nombre spécifié d'objets PeerNameRecord. |
Remarques
Cette méthode associe des noms d’homologues aux clouds. L’appel de la PeerNameResolver méthode est similaire à l’appel de la Resolve méthode pour chaque enregistrement de nom d’homologue dans .PeerNameRecordCollection Notez que l’utilisation de la méthode Resolve sur un enregistrement de nom d’homologue individuel n’invalide pas la résolution de plusieurs noms d’homologues.
Pour chaque Resolve méthode, il existe une méthode équivalente ResolveAsync . Ils sont identiques dans les paramètres qu’ils sont passés, sauf que la méthode ResolveAsync inclut un jeton système dans sa liste de paramètres pour la gestion asynchrone des événements.
Si le Cloud paramètre n’est pas fourni, la méthode utilise le Available raccourci pour renseigner les paramètres cloud. Si le maxRecords
paramètre est manquant, la valeur par défaut zéro entraîne la levée d’une ArgumentOutOfRangeException exception.
Cet événement est également déclenché si l’opération de résolution se termine par erreur ou est annulée.
Resolve(PeerName)
Résout le PeerName spécifié dans tous les nuages connus de l'homologue appelant.
public:
System::Net::PeerToPeer::PeerNameRecordCollection ^ Resolve(System::Net::PeerToPeer::PeerName ^ peerName);
public System.Net.PeerToPeer.PeerNameRecordCollection Resolve (System.Net.PeerToPeer.PeerName peerName);
member this.Resolve : System.Net.PeerToPeer.PeerName -> System.Net.PeerToPeer.PeerNameRecordCollection
Public Function Resolve (peerName As PeerName) As PeerNameRecordCollection
Paramètres
Retours
Un PeerNameRecordCollection qui contient tous les enregistrements de nom de l'homologue (représentés comme objets PeerNameRecord ) associés au nom d'homologue spécifié. Pour les noms d'homologue non sécurisés, le même PeerName peut être inscrit par des utilisateurs différents dans le même Cloud, et associés à des points de terminaison différents.
Exceptions
Le paramètre peerName
a la valeur null
.
Le nom d'homologue spécifié ne peut pas être résolu.
Exemples
L’exemple de code suivant montre comment résoudre un PeerName publié dans n’importe quel Cloud.
static void Main(string[] args)
{
try
{
if (args.Length != 1)
{
Console.WriteLine("Usage: PeerNameResolver.exe <PeerNameToResolve>");
return;
}
// create a resolver object to resolve a Peer Name that was previously published
PeerNameResolver resolver = new PeerNameResolver();
// The Peer Name to resolve must be passed as the first
// command line argument to the application
PeerName peerName = new PeerName(args[0]);
// Resolve the Peer Name
// This is a network operation and will block until the resolve completes
PeerNameRecordCollection results = resolver.Resolve(peerName);
// Display the data returned by the resolve operation
Console.WriteLine("Resolve operation complete.\n", peerName);
Console.WriteLine("Results for PeerName: {0}", peerName);
Console.WriteLine();
int count = 1;
foreach (PeerNameRecord record in results)
{
Console.WriteLine("Record #{0} results...", count);
Console.Write("Comment:");
if (record.Comment != null)
{
Console.Write(record.Comment);
}
Console.WriteLine();
Console.Write("Data:");
if (record.Data != null)
{
// Assumes the data blob associated with the PeerName
// is made up of ASCII characters
Console.Write(System.Text.Encoding.ASCII.GetString(record.Data));
}
Console.WriteLine();
Console.WriteLine("Endpoints:");
foreach (IPEndPoint endpoint in record.EndPointCollection)
{
Console.WriteLine("\t Endpoint:{0}", endpoint);
Console.WriteLine();
}
count++;
}
Console.ReadKey();
}
catch (Exception e)
{
Console.WriteLine("Error occurred while attempting to resolve the PeerName: {0}", e.Message);
Console.WriteLine(e.StackTrace);
// P2P is not supported on Windows Server 2003
if (e.InnerException != null)
{
Console.WriteLine("Inner Exception is {0}", e.InnerException);
}
}
}
Remarques
Cette méthode associe un nom d’homologue aux clouds. Tous les clouds sont interrogés pour .PeerName Si le nom de l’homologue ne peut pas être résolu ou est null
, un PeerToPeerException est levée.
Pour les noms d’homologues non sécurisés, le même nom peut être inscrit (et associé à différents points de terminaison) par différents homologues au sein du même cloud.
L’appel de la PeerNameResolver méthode est similaire à l’appel de la Resolve méthode pour chaque enregistrement de nom d’homologue dans .PeerNameRecordCollection Notez que l’utilisation de la méthode Resolve sur un enregistrement de nom d’homologue individuel n’invalide pas la résolution de plusieurs noms d’homologues.
Pour chaque Resolve méthode, il existe une méthode équivalente ResolveAsync . Leurs listes de paramètres sont identiques, sauf que la méthode ResolveAsync inclut un jeton système pour la gestion asynchrone des événements.
Si le Cloud paramètre n’est pas fourni, la méthode utilise le Available raccourci pour renseigner les paramètres cloud.
L’événement ResolveCompleted est déclenché si l’opération de résolution se termine par erreur ou est annulée.
Voir aussi
S’applique à
Resolve(PeerName, Int32)
Résout le nom d'homologue spécifié dans tous les nuages connus de l'homologue appelant, sans retourner plus que le nombre spécifié d'objets PeerNameRecord.
public:
System::Net::PeerToPeer::PeerNameRecordCollection ^ Resolve(System::Net::PeerToPeer::PeerName ^ peerName, int maxRecords);
public System.Net.PeerToPeer.PeerNameRecordCollection Resolve (System.Net.PeerToPeer.PeerName peerName, int maxRecords);
member this.Resolve : System.Net.PeerToPeer.PeerName * int -> System.Net.PeerToPeer.PeerNameRecordCollection
Public Function Resolve (peerName As PeerName, maxRecords As Integer) As PeerNameRecordCollection
Paramètres
- maxRecords
- Int32
Nombre maximal d'objets PeerNameRecord à obtenir de tous les objets Cloud pour le peerName
fourni.
Retours
PeerNameRecordCollection dont la taille est inférieure ou égale aux entrées maxRecords
. Cette collection contient des enregistrements de nom d'homologue associés au PeerName qui a été résolu.
Exceptions
Le paramètre peerName
a la valeur null
.
Le paramètre maxRecords
est inférieur ou égal à zéro.
Le nom d'homologue fourni ne peut pas être résolu.
Remarques
Cette méthode associe un nom d’homologue aux clouds. Tous les clouds sont interrogés pour le nom de l’homologue. Pour les noms d’homologues non sécurisés, le même nom d’homologue peut être inscrit par différents utilisateurs dans le même Cloud, et associé à des points de terminaison différents. Si le PeerName ne peut pas être résolu (par exemple, le nom de l’homologue n’est pas publié), un PeerToPeerException est levée.
Pour chaque Resolve méthode, il existe une méthode équivalente ResolveAsync . Leurs listes de paramètres sont identiques, sauf que la méthode ResolveAsync inclut un jeton système pour la gestion asynchrone des événements.
L’événement ResolveCompleted est déclenché si l’opération de résolution se termine par erreur ou est annulée.
S’applique à
Resolve(PeerName, Cloud)
public:
System::Net::PeerToPeer::PeerNameRecordCollection ^ Resolve(System::Net::PeerToPeer::PeerName ^ peerName, System::Net::PeerToPeer::Cloud ^ cloud);
public System.Net.PeerToPeer.PeerNameRecordCollection Resolve (System.Net.PeerToPeer.PeerName peerName, System.Net.PeerToPeer.Cloud cloud);
member this.Resolve : System.Net.PeerToPeer.PeerName * System.Net.PeerToPeer.Cloud -> System.Net.PeerToPeer.PeerNameRecordCollection
Public Function Resolve (peerName As PeerName, cloud As Cloud) As PeerNameRecordCollection
Paramètres
Retours
PeerNameRecordCollection qui contient tous les enregistrements de nom d'homologue (représentés comme objets PeerNameRecord ) associés au nom d'homologue spécifié. Pour les noms d'homologue non sécurisés, le même PeerName peut être inscrit par des utilisateurs différents dans le même Cloud, et associés à des points de terminaison différents.
Exceptions
Le paramètre peerName
a la valeur null
.
Le nom d'homologue fourni ne peut pas être résolu.
Remarques
Si le PeerName ne peut pas être résolu (autrement dit, le nom de l’homologue n’est pas publié), un PeerToPeerException est levée.
Pour les noms d’homologues non sécurisés, le même nom peut être inscrit (et associé à différents points de terminaison) par différents homologues au sein du même cloud.
Pour chaque Resolve méthode, il existe une méthode équivalente ResolveAsync . Leurs listes de paramètres sont identiques, sauf que la méthode ResolveAsync inclut un jeton système pour la gestion asynchrone des événements.
Si le Cloud paramètre est null
, utilise PeerNameResolver le Available raccourci pour remplir les Name, Scopeet ScopeId.
L’événement ResolveCompleted est déclenché si l’opération de résolution se termine par erreur ou est annulée.
S’applique à
Resolve(PeerName, Cloud, Int32)
Résout le PeerName spécifié dans le Cloudspécifié, sans retourner plus que le nombre spécifié d'objets PeerNameRecord.
public:
System::Net::PeerToPeer::PeerNameRecordCollection ^ Resolve(System::Net::PeerToPeer::PeerName ^ peerName, System::Net::PeerToPeer::Cloud ^ cloud, int maxRecords);
[System.Security.SecurityCritical]
public System.Net.PeerToPeer.PeerNameRecordCollection Resolve (System.Net.PeerToPeer.PeerName peerName, System.Net.PeerToPeer.Cloud cloud, int maxRecords);
[<System.Security.SecurityCritical>]
member this.Resolve : System.Net.PeerToPeer.PeerName * System.Net.PeerToPeer.Cloud * int -> System.Net.PeerToPeer.PeerNameRecordCollection
Public Function Resolve (peerName As PeerName, cloud As Cloud, maxRecords As Integer) As PeerNameRecordCollection
Paramètres
- maxRecords
- Int32
Nombre maximal d'objets d'enregistrement de nom d'homologue à obtenir du nuage spécifié pour le peerName
spécifié.
Retours
PeerNameRecordCollection dont la taille est inférieure ou égale aux entrées maxRecords
. Cette collection contient des enregistrements de nom d'homologue associés au PeerName qui a été résolu.
- Attributs
Exceptions
Le paramètre peerName
a la valeur null
.
Le paramètre maxRecords
est inférieur ou égal à zéro.
Le nom d'homologue fourni ne peut pas être résolu.
Remarques
Pour les noms d’homologues non sécurisés, le même nom peut être inscrit (et associé à différents points de terminaison) par différents homologues au sein du même cloud. Si le nom de l’homologue ne peut pas être résolu, un PeerToPeerException est levée.
Pour chaque Resolve méthode, il existe une méthode équivalente ResolveAsync . Leurs listes de paramètres sont identiques, sauf que la méthode ResolveAsync inclut un jeton système pour la gestion asynchrone des événements.
Si le Cloud paramètre est null
, utilise PeerNameResolver le Available raccourci pour remplir les Name, Scopeet ScopeId.
L’événement ResolveCompleted est déclenché si l’opération de résolution se termine par erreur ou est annulée.