62,046
社区成员
发帖
与我相关
我的任务
分享
protected void Application_Start(object sender, EventArgs e)
{
try
{
TcpListener server = null;
Int32 port = 1232;
//设置TcpListener监听端口为1232.
IPAddress localAddr = IPAddress.Parse("192.168.1.3");
//创建 Server绑定到本机的2617端口;
server = new TcpListener(localAddr, port);
// 开始监听客户端的请求
server.Start();
HttpContext.Current.Application["XX"] = server;
//这里可以开启多个端口
//TcpListener server1 = null;
//Int32 port1 = 1252;
//IPAddress localAddr1 = IPAddress.Parse("192.168.1.3");
//server1 = new TcpListener(localAddr1, port1);
//server1.Start();
}
catch (System.Exception exp)
{
var str = exp.Message;
}
}
protected void Button1_Click(object sender, EventArgs e)
{
f_getDataFromServer();
}
private void f_getDataFromServer()
{
var server = (TcpListener)Application["XX"];
TcpClient client = null;
if (Application["client"] == null)
{
client = server.AcceptTcpClient();
Application["client"] = client;
}
else
{
client = (TcpClient)Application["client"];
}
var stream = client.GetStream();
var msg = System.Text.Encoding.UTF8.GetBytes(Guid.NewGuid().ToString());
try
{
stream.Write(msg, 0, msg.Length);
}
catch (System.Exception exp)
{
var errmsg = exp.Message;
if (errmsg == "无法将数据写入传输连接: 您的主机中的软件中止了一个已建立的连接。。")
{
Application.Remove("client");
f_getDataFromServer();
}
}
}