2

我已经使用此示例socketAsyncEventArgs完成了服务器

在视觉工作室 2010 和 .net 4.0 中。

现在我正在尝试使用 StreamSocket 从 Windows 8 应用程序连接到它,但我收到“访问被拒绝”消息。这是客户端代码:

private StreamSocket streamSocket;
    public string Server = "192.168.0.101";
    public int Port = 9900;

    public async void Connect()
    {
        streamSocket = new StreamSocket();
        Connect();
        try
        {
            await streamSocket.ConnectAsync(
                new Windows.Networking.HostName(Server),
                Port.ToString()); // getting Acces Denied here

            DataReader reader = new DataReader(streamSocket.InputStream);
            reader.InputStreamOptions = InputStreamOptions.Partial;
            while (true)
            {
                var bytesAvailable = await reader.LoadAsync(1000);
                var byteArray = new byte[bytesAvailable];
                reader.ReadBytes(byteArray);

            }
        }
        catch (Exception e)
        {
            MessageBox(e.StackTrace);
        }
    }

如何解决问题?还有其他方法可以使用此服务器发送和接收消息吗?

4

1 回答 1

12

您可能还会在错误消息中看到以下内容:

WinRT information: A network capability is required to access this network resource

这是因为您需要向应用程序添加允许您访问本地网络的功能。双击Package.appxmanifest项目中的文件。单击Capabilities选项卡。将Private Networks (Client & Server)功能添加到您的项目中。

于 2012-11-10T12:43:32.977 回答