📄 imessagesender.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
using System.Net;
using System.Net.Sockets;
using System.IO;
namespace mychat1
{
public interface IMessageSender
{
bool Connect(IPAddress ip, int port); // 连接到服务端
bool SendMessage(Message msg); // 发送用户
void SignOut(); // 注销系统
}
public class MessageSender : IMessageSender
{
TcpClient client;
Stream streamToServer;
// 连接至远程
public bool Connect(IPAddress ip, int port)
{
try
{
client = new TcpClient();
client.Connect(ip, port);
streamToServer = client.GetStream(); // 获取连接至远程的流
return true;
}
catch
{
return false;
}
}
// 发送消息
public bool SendMessage(Message msg)
{
try
{
lock (streamToServer)
{
byte[] buffer = Encoding.Unicode.GetBytes(msg.ToString());
streamToServer.Write(buffer, 0, buffer.Length);
return true;
}
}
catch
{
return false;
}
}
// 注销
public void SignOut()
{
if (streamToServer != null)
streamToServer.Dispose();
if (client != null)
client.Close();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -