Я пытаюсь узнать кое-что о P2P. Вот почему я пытаюсь запустить приведенный ниже пример кода на моем компьютере с ОС Windows 8.1:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net.PeerToPeer;
using System.Net.PeerToPeer.Collaboration;
namespace PeerChat
{
public class PeerChatApplication
{
private static PeerApplication PeerChatPeerApplication;
private static Guid PeerChatAppId = new Guid("2B6FFB9A-8BCD-4B2E-9958-090E2E6FB5D7");
private static string PeerChatDescription = "A sample peer networking application.";
static PeerChatApplication()
{
PeerChatPeerApplication = new PeerApplication(PeerChatAppId,
PeerChatDescription,
null,
System.Windows.Forms.Application.ExecutablePath,
null,
PeerScope.All);
}
public static void SignIn()
{
PeerCollaboration.SignIn(PeerScope.All);
}
public static void Register()
{
PeerApplicationCollection peerAppsColl = PeerCollaboration.GetLocalRegisteredApplications(PeerApplicationRegistrationType.AllUsers);
IEnumerable<PeerApplication> findPeerApp = from peerApp in PeerCollaboration.GetLocalRegisteredApplications(PeerApplicationRegistrationType.AllUsers)
where peerApp.Id == PeerChatAppId
select peerApp;
if (findPeerApp.Count<PeerApplication>() != 0)
PeerCollaboration.UnregisterApplication(PeerChatPeerApplication, PeerApplicationRegistrationType.AllUsers);
PeerCollaboration.RegisterApplication(PeerChatPeerApplication, PeerApplicationRegistrationType.AllUsers);
}
public static void UnRegister()
{
PeerCollaboration.UnregisterApplication(PeerChatPeerApplication, PeerApplicationRegistrationType.AllUsers);
}
}
}
Прежде всего, все, что вам нужно для входа и регистрации. Хорошо работает в Windows 7 (используя логин администратора).
В Windows 8.1 я получаю следующее исключение: «Инфраструктура Windows Peer-to-Peer не лицензирована для работы на этой платформе».
Означает ли это, что ОС Windows 8.1 не поддерживает P2P?