全局客户端/服务器C#

时间:2016-04-03 19:54:32

标签: c# tcpclient

如何全局访问服务器?
在代码中,服务器是我们的本地ip。在路由器上,我创建Wan虚拟服务器,但我无法从全球网络发送消息。 我需要从全局客户端发送消息。我怎么能节省客户端IP? 预先感谢!我希望你理解我的演讲。

//Server
TcpListener Server = null;

try
{
    Int32 port = 9595;
    int MaxProc = Environment.ProcessorCount * 4;
    Console.Write(GetIp()+":"+port.ToString());
    Console.Write("\nCount proc * 4:"+MaxProc.ToString());

    ThreadPool.SetMaxThreads(MaxProc, MaxProc);
    ThreadPool.SetMinThreads(2, 2);



    IPAddress LocalIp = IPAddress.Parse(GetIp());

    int count = 0;
    Server = new TcpListener(LocalIp,port);
    Server.Start();
    int max, countmax;
    while(true)
    {
        Console.Write("\nWaiting for a connection... ");

        ThreadPool.QueueUserWorkItem(ProcessMsg,Server.AcceptTcpClient());
        ThreadPool.GetAvailableThreads(out max, out countmax);

        Console.Write("\n Max:" + max.ToString() + "--Count:" + countmax.ToString());

        count++;
        Console.Write("\nConnection#"+count.ToString());
    }


//Client

Int32 port = 9595;
TcpClient client = new TcpClient(server, port);
Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);

NetworkStream stream = client.GetStream();

stream.Write(data, 0, data.Length);

0 个答案:

没有答案