Поделиться через


PeerCollaboration.GetPeersNearMe Метод

Определение

Возвращает коллекцию всех конечных точек инфраструктуры PeerCollaboration, выполнивших на данный момент вход в подсеть вызывающего однорангового узла.

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

Возвращаемое значение

Коллекция PeerNearMeCollection, содержащая все конечные точки инфраструктуры PeerCollaboration, выполнившие вход в область "Соседние пользователи".

Если в подсети не обнаружены одноранговые узлы, то возвращается коллекция размера нуль (0).

Атрибуты

Исключения

Одноранговый узел не выполнил вход в область "Соседние пользователи".

Возвращено недопустимое значение, когда данный метод пытался перечислить все известные конечные точки области "Соседние пользователи".

Примеры

В следующем примере кода показано, как получить PeersNearMe как 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;
}

Комментарии

Для возврата полностью заполненного PeerNearMeCollection с помощью этого метода может потребоваться неопределенное время после входа в систему в зависимости от топологии сети и задержки.

Для вызова этого метода требуется .PermissionStateUnrestricted Это состояние создается при запуске сеанса Peer совместной работы.

Применяется к