Compartilhar via


PeerCollaboration.GetPeersNearMe Método

Definição

Retorna uma coleção de todos os pontos de extremidade PeerCollaboration conectados no momento na sub-rede do par de chamada.

public:
 static System::Net::PeerToPeer::Collaboration::PeerNearMeCollection ^ GetPeersNearMe();
[System.Security.SecurityCritical]
public static System.Net.PeerToPeer.Collaboration.PeerNearMeCollection GetPeersNearMe ();
[<System.Security.SecurityCritical>]
static member GetPeersNearMe : unit -> System.Net.PeerToPeer.Collaboration.PeerNearMeCollection
Public Shared Function GetPeersNearMe () As PeerNearMeCollection

Retornos

Um PeerNearMeCollection que contém todos os pontos de extremidade PeerCollaboration conectados o escopo “Ao meu Redor”.

Se os pares não forem descobertos na sub-rede, uma coleção de tamanho zero (0) será retornada.

Atributos

Exceções

O par não está conectado ao escopo “Ao meu Redor”.

Um valor inválido foi retornado quando este método tentou enumerar todos os pontos de extremidade Pessoas ao meu Redor conhecidos.

Exemplos

O exemplo de código a seguir ilustra como recuperar PeersNearMe como um PeerNearMeCollection:

//This function retrieves the peers near me as a PeerNearMeCollection.
public static PeerNearMeCollection GetPeersNearMe()
{
    PeerNearMeCollection peers = null;
    try
    {
        peers = PeerCollaboration.GetPeersNearMe();
        if (peers == null ||
            peers.Count == 0)
        {
            Console.WriteLine("There are no peers near me.");
        }
        foreach (PeerNearMe pnm in peers)
        {
            Console.WriteLine("Getting the peers near me: {0}, nickname {1}, isOnline {2}",
                pnm.ToString(),
                pnm.Nickname,
                pnm.IsOnline);
        }
    }
    catch (PeerToPeerException p2pEx)
    {
        Console.WriteLine("Could not obtain an enumeration of the peers near me: {0}", p2pEx.Message);
    }
    catch (InvalidOperationException ioEx)
    {
        Console.WriteLine("The application is no longer signed into the Peer Collaboration Infrastructure: {0}",
            ioEx.Message);
    }
    catch (Exception ex)
    {
        Console.WriteLine("Unexpected exception caught when trying to enumerate the peers near me: {0}",
            ex.Message);
    }

    return peers;
}

Comentários

O retorno de um totalmente preenchido PeerNearMeCollection por meio desse método pode exigir uma quantidade indeterminada de tempo após a entrada, dependendo da topologia de rede e da latência.

Chamar esse método requer um PermissionState de Unrestricted. Esse estado é criado quando a Peer sessão de colaboração é iniciada.

Aplica-se a