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 совместной работы.