11、 新建一个Client类。并写上以下源代码(代码5附件)
在SocketFactory中加入StartClient函数
1public Connection StartClient(IPAddress ip,int port) 2 3{ 4 5 return Client.StartClient(ip,port); 6 7} 8
在SocketClient的Form1的Form1_Load中加入以下代码
并插入断点。开始调试执行。当执行取最后一句时。我们看到_connection已经连接成功。
好了,现在我们的客户端已经连接上服务器,并可以发送消息了。但现在我们还没有如何发送消息的方法。我们在SocketFactory中增加一个发消息的静态方法。并且声明一个编码类型的静态变量
public static System.Text.Encoding DefaultEncoding =
System.Text.Encoding.GetEncoding("GB2312");
public static void SendMessage(string message,Connection connection) {
byte[] buffer = DefaultEncoding.GetBytes(message);
connection.NetworkStream.Write(buffer,0,buffer.Length);
}
现在我们可以用这个函数发消息给服务器端了。
我们看到消息发送成功,但服务器端没有任何反应。这是因为我们还没有在服务器端侦听消息。在Server类中增加如下代码
加入开始侦听网络流的线程(代码6附件)
|