2

我想使用 Windows.Networking.Sockets.DatagramSocket 在我的 winRT 应用程序的端口 50000 上收听多播组 239.192.168.22。这是我的代码片段:

class UdpSocketAnstraction : IDisposable
{
    DatagramSocket socket;

    public UdpSocketAnstraction()
    {
        this.socket = new DatagramSocket();
        this.socket.MessageReceived += socket_MessageReceived;
    }

    public async Task Open()
    {
        await this.socket.BindServiceNameAsync("50000");
        this.socket.JoinMulticastGroup(new HostName("239.192.168.22"));
    }
}

JoinMulticastGroup 抛出 UnauthorizedAccessException ,但没有解释原因。

我不知道这个套接字是否使用不当,或者我是否必须在我的窗户上允许某些东西,或者其他什么?

4

1 回答 1

2

在 Package.appxmanifest 文件中添加“Internet(客户端和服务器)”功能。双击它并转到声明选项卡。

于 2012-12-23T21:13:43.387 回答