日期:2014-05-19  浏览次数:20855 次

数据传诵
bool   done   =   false;
                        TcpListener   listener   =   new   TcpListener(port);
                        listener.Start();
                        while   (!done)
                        {
                                Console.WriteLine( "Wait   for   connection... ");
                                TcpClient   client   =   listener.AcceptTcpClient();
                                Console.WriteLine( "Connection   accepted. ");
                                NetworkStream   ns   =   client.GetStream();
                                byte[]   byteTime   =   Encoding.UTF8.GetBytes( "你好! ");
                                try
                                {
                                        ns.Write(byteTime,   0,   byteTime.Length);
                                        ns.Close();
                                        client.Close();
                                }
                                catch   (Exception   e)
                                {
                                        Console.WriteLine(e.ToString());
                                }
                        }
                        listener.Stop();
我把这段代码写在窗体里面.运行的时候,窗体就不显示了.我发现是TcpClient   client   =   listener.AcceptTcpClient();加上之后窗体就不显示了。问下,这是怎么回事?我怎样才能显示窗体还能实现数据发送的功能?

------解决方案--------------------
listener.AcceptTcpClient();是接收客户端的连接,在没有客户端来连接前它会等待
一般将它放在一个新开线程中

《程序员秘书》--源代码--网络,有FTP服务器端、FTP客户端、TCP网络聊天、远程文件传输等等
详见:http://www.psec.net.cn