Windows 10 IoT核心版(rpi3)上的套接字通信

时间:2020-07-15 10:50:30

标签: sockets uwp windows-10-iot-core file-sharing

我正在尝试从运行Windows 10物联网核心的树莓派共享一些文件。我使用的是Microsoft解释的StreamSocketListener:https://docs.microsoft.com/en-us/windows/uwp/networking/sockets

我的代码如下:

private async void Testserver()
        {
            try
            {
                streamSocketListener = new StreamSocketListener();


                await streamSocketListener.BindServiceNameAsync("9000");
                streamSocketListener.ConnectionReceived += StreamSocketListener_ConnectionReceived;
            }
            catch
            {
                textb.Text = "server not started";
            }
        }

        private async void StreamSocketListener_ConnectionReceived(StreamSocketListener sender, StreamSocketListenerConnectionReceivedEventArgs args)
        {
            string response = "HELLO WORLD!";
            using (Stream outputStream = args.Socket.OutputStream.AsStreamForWrite())
            {
                using (var streamWriter = new StreamWriter(outputStream))
                {
                    await streamWriter.WriteLineAsync(response);
                    await streamWriter.FlushAsync();
                }
            }
        } 

现在,当我尝试打到192.168.1.18:9000时,它至少应该触发ConnectionReceived事件,它不是,因为我在那里添加了断点。

除了StreamSocketListner之外,还有没有更简单的方法可以在本地网络中发送文本文件?

1 个答案:

答案 0 :(得分:0)

出于安全原因,默认情况下无法访问端口9000。您需要使用以下命令在防火墙中为此端口添加规则。

netsh advfirewall firewall add rule name="File Access" dir=in protocol=TCP localport=9000 remoteip=any action=Allow