我最近开发了一个使用
WPF和C#for
Windows Desktop的TCP客户端 – 服务器应用程序.
现在,我正在考虑将其移植到Windows 8 Metro App.
但是,似乎System.Net.Sockets命名空间不存在于Metro Apps的SDK中.
(所以我不能使用TcpListener,TcpClient等)
我也找不到一个有效的例子.
是否可以将TCP-IP服务器创建为Windows 8 Metro App(使用一些不同的方法)?
是否有任何第三方库(免费和开源,最好)可以实现这一目标?
请帮我.
提前致谢.
最佳答案 建议使用
StreamSocket类.
这是来自MSDN的Example.
套接字通过TCP提供发送和接收,StreamSocketListener将侦听传入的TCP连接.
这是我的想法:
首先,我们需要一个StreamSocketListener实例.
private StreamSocketListener _listener = new StreamSocketListener();
然后启动侦听器连接一个连接接收事件处理程序并绑定服务名称.
_listener.ConnectionReceived += listenerConnectionReceived;
await _listener.BindServiceNameAsync("localServiceName");
If the localServiceName parameter is an empty string, then the system
will select the local TCP port on which to bind. 07002
现在我们必须重温连接:
void listenerConnectionReceived(StreamSocketListener sender, StreamSocketListenerConnectionReceivedEventArgs args)
{
Console.WriteLine(string.Format("Recive connection from {0}", args.Socket.Information.RemoteHostName.DisplayName));
}
顺便说一句:我做了很多研究,没有时间(和Windows 8 METRO开发环境)来提出我的想法.希望我能很快得到这个.这真让我烦恼. (德语/英语);)