Я хочу сделать проверку:
Я использую NuGet simpleTCP в C #.
Как сначала проверить клиента перед тем, как что-либо делать?
Если сервер запущен и найден илисоединение установлено: Показ MessageBox: Да
Если не подключен: Показ MessageBox: НЕТ
Сервер:
using System;
using System.Text;
using System.Windows.Forms;
using SimpleTCP;
namespace TCPIPDeom
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
SimpleTcpServer server;
private void Form1_Load(object sender, EventArgs e)
{
server = new SimpleTcpServer();
server.Delimiter = 0x13;//enter
server.StringEncoder = Encoding.UTF8;
server.DataReceived += Server_DataRecived;
}
private void Server_DataRecived(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...";
//IPAddress ip = IPAddress.Parse(txtHost.Text);
System.Net.IPAddress ip = System.Net.IPAddress.Parse(txtHost.Text);
server.Start(ip, Convert.ToInt32(txtPort.Text));
}
private void btnStop_Click(object sender, EventArgs e)
{
if (server.IsStarted)
server.Stop();
}
}
}
Клиент:
using SimpleTCP;
using System;
using System.Text;
using System.Windows.Forms;
namespace Client
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
SimpleTcpClient client;
private void btnConnect_Click(object sender, EventArgs e)
{
btnConnect.Enabled = false;
if()
{
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_DataRecived;
}
private void Client_DataRecived(object sender, SimpleTCP.Message e)
{
txtStatus.Invoke((MethodInvoker)delegate ()
{
txtStatus.Text += e.MessageString;
});
}
private void btnSend_Click(object sender, EventArgs e)
{
client.WriteLineAndGetReply(txtMessage.Text, TimeSpan.FromSeconds(3));
}
}
}