c# - C# TCP连接,客户端无法向服务器发送消息
问题描述
为什么我无法向服务器发送消息,有人可以帮助我吗?编程语言是 C#,我已经关闭了我的防火墙,但它仍然无法正常工作。
为什么我无法向服务器发送消息,有人可以帮助我吗?编程语言是 C#,我已经关闭了我的防火墙,但它仍然无法正常工作。
这是我的服务器
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using SimpleTCP;
namespace TCP
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
SimpleTcpServer server;
private void Form1_Load(object sender, EventArgs e)
{
server = new SimpleTcpServer();
server.Delimiter = 0x13;
server.StringEncoder = Encoding.UTF8;
server.DataReceived += Server_DataReceived;
}
private void Server_DataReceived(object sender, SimpleTCP.Message e)
{
txtStatus.Invoke((MethodInvoker)delegate ()
{
txtStatus.Text += e.MessageString;
e.ReplyLine(string.Format("You said: {0}", e.MessageString));
});
}
private void btnStart_Click(object sender, EventArgs e)
{
txtStatus.Text += "Server starting...";
System.Net.IPAddress ip = System.Net.IPAddress.Parse(txtHost.Text);
server = new SimpleTcpServer().Start(ip, Convert.ToInt32(txtPort.Text));
txtStatus.Text += Environment.NewLine + "Server connected!";
//server.Start(ip, Convert.ToInt32(txtPort.Text));
}
private void btnStop_Click(object sender, EventArgs e)
{
if (server.IsStarted)
server.Stop();
}
}
}
这是我的客户
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using SimpleTCP;
namespace Client
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
SimpleTcpClient client;
private void btnConnect_Click(object sender, EventArgs e)
{
btnConnect.Enabled = false;
//Connect to server
client.Connect(txtHost.Text, Convert.ToInt32(txtPort.Text));
}
private void Form1_Load(object sender, EventArgs e)
{
client = new SimpleTcpClient();
client.StringEncoder = Encoding.UTF8;
client.DataReceived += Client_DataReceived;
}
private void Client_DataReceived(object sender, SimpleTCP.Message e)
{
//Update message to txtStatus
txtStatus.Invoke((MethodInvoker)delegate ()
{
txtStatus.Text += e.MessageString;
});
}
private void btnSend_Click(object sender, EventArgs e)
{
client.WriteLineAndGetReply(txtMessage.Text, TimeSpan.FromSeconds(0));
}
}
}
我不知道我是否有连接问题或消息问题
解决方案
推荐阅读
- makefile - make: *** 没有规则来制作目标'build-x86_64'。停止。当我运行 make build-x86_64 时,我的操作系统出现错误
- javascript - 如何根据先前的下拉选择值填充下拉列表
- android - TabLayout - 带有图标的多行标签标题
- .net - 使用 Fluxor 的 Blazor State:ActionSubscriber 或 SubscribeToAction 哪个更好用?
- aws-lambda - 从java中的lambda函数调用多个aws服务
- angularjs - 如何在模态上显示带有 angularjs-materialize 的传单地图
- html - Django 全高模板
- wordpress - 如何在 WordPress 网站上免费接受 upi 付款?没有woocommerce
- regex - .html 页面的 301 重定向
- reactjs - 如何使用 face-api.js 提取表达式名称?