服务器端代码:(为一个控制台程序)
1using System;
2using System.Collections.Generic;
3using System.ComponentModel;
4using System.Data;
5using System.Drawing;
6using System.Text;
7using System.Windows.Forms;
8using System.Net;
9using System.Net.Sockets;
10using System.IO;
11using System.Collections;
12
13namespace Clienttest
14{
15 public partial class Form1 : Form
16 {
17 private NetworkStream networkstream;
18 private StreamReader streamreader;
19 private StreamWriter streamwriter;
20 TcpClient myclient;
21 ArrayList sb;
22 public bool flag = false;
23 public Form1()
24 {
25 sb = new ArrayList();
26 InitializeComponent();
27 if (!flag)
28 this.Connect();
29 networkstream = myclient.GetStream();
30 streamreader = new StreamReader(networkstream);
31 streamwriter = new StreamWriter(networkstream);
32 this.ShowMessage();
33
34
35 }
36 protected void Connect()
37 {
38 try
39 {
40 sb.Add ("Connecting to server");
41 myclient = new TcpClient("localhost",1234);
42 sb.Add ("Connected,please type something in the textbox");
43 }
44 catch
45 {
46 sb.Add(string.Format ("Failed to connect the {0}:1234","localhost"));
47
48 }
49 flag = true;
50
51
52 }
53 protected void ShowMessage()
54 {
55 for (int i = 0; i < sb.Count; i++)
56 {
57 t2.Items.Add (((object)sb[i].ToString ()));
58 }
59 sb.Clear();
60 }
61
62 private void t1_TextChanged(object sender, EventArgs e)
63 {
64 if (t1.Text == "")
65 bts.Enabled = false;
66 else
67 bts.Enabled = true;
68 }
69
70 private void bts_Click(object sender, EventArgs e)
71 {
72 if (t1.Text == "")
73 {
74 sb.Add("Please enter something in the textbox.");
75 t1.Focus();
76 return;
77 }
78 string s;
79 try
80 {
81 streamwriter.WriteLine(t1.Text.ToString());
82 Console.WriteLine("Sending Message");
83 streamwriter.Flush();
84 s = streamreader.ReadLine();
85 Console.WriteLine("Reading Message");
86 Console.WriteLine(s);
87 sb.Add(s);
88 t1.Text = "";
89 t1.Focus();
90 this.ShowMessage();
91 }
92 catch
93 {
94 MessageBox.Show("错误", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
95 }
96
97 }
98
99
100 }
101}
102
103
2using System.Collections.Generic;
3using System.ComponentModel;
4using System.Data;
5using System.Drawing;
6using System.Text;
7using System.Windows.Forms;
8using System.Net;
9using System.Net.Sockets;
10using System.IO;
11using System.Collections;
12
13namespace Clienttest
14{
15 public partial class Form1 : Form
16 {
17 private NetworkStream networkstream;
18 private StreamReader streamreader;
19 private StreamWriter streamwriter;
20 TcpClient myclient;
21 ArrayList sb;
22 public bool flag = false;
23 public Form1()
24 {
25 sb = new ArrayList();
26 InitializeComponent();
27 if (!flag)
28 this.Connect();
29 networkstream = myclient.GetStream();
30 streamreader = new StreamReader(networkstream);
31 streamwriter = new StreamWriter(networkstream);
32 this.ShowMessage();
33
34
35 }
36 protected void Connect()
37 {
38 try
39 {
40 sb.Add ("Connecting to server");
41 myclient = new TcpClient("localhost",1234);
42 sb.Add ("Connected,please type something in the textbox");
43 }
44 catch
45 {
46 sb.Add(string.Format ("Failed to connect the {0}:1234","localhost"));
47
48 }
49 flag = true;
50
51
52 }
53 protected void ShowMessage()
54 {
55 for (int i = 0; i < sb.Count; i++)
56 {
57 t2.Items.Add (((object)sb[i].ToString ()));
58 }
59 sb.Clear();
60 }
61
62 private void t1_TextChanged(object sender, EventArgs e)
63 {
64 if (t1.Text == "")
65 bts.Enabled = false;
66 else
67 bts.Enabled = true;
68 }
69
70 private void bts_Click(object sender, EventArgs e)
71 {
72 if (t1.Text == "")
73 {
74 sb.Add("Please enter something in the textbox.");
75 t1.Focus();
76 return;
77 }
78 string s;
79 try
80 {
81 streamwriter.WriteLine(t1.Text.ToString());
82 Console.WriteLine("Sending Message");
83 streamwriter.Flush();
84 s = streamreader.ReadLine();
85 Console.WriteLine("Reading Message");
86 Console.WriteLine(s);
87 sb.Add(s);
88 t1.Text = "";
89 t1.Focus();
90 this.ShowMessage();
91 }
92 catch
93 {
94 MessageBox.Show("错误", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
95 }
96
97 }
98
99
100 }
101}
102
103
客户端代码:(WinForm程序)
在窗体上加入一个Textbox(name:t1),一个Listbox(name:t2), 一个Button(name:bts)
然后在窗体代码面中加入下面代码:
1using System;
2using System.Collections.Generic;
3using System.ComponentModel;
4using System.Data;
5using System.Drawing;
6using System.Text;
7using System.Windows.Forms;
8using System.Net;
9using System.Net.Sockets;
10using System.IO;
11using System.Collections;
12
13namespace Clienttest
14{
15 public partial class Form1 : Form
16 {
17 private NetworkStream networkstream;
18 private StreamReader streamreader;
19 private StreamWriter streamwriter;
20 TcpClient myclient;
21 ArrayList sb;
22 public bool flag = false;
23 public Form1()
24 {
25 sb = new ArrayList();
26 InitializeComponent();
27 if (!flag)
28 this.Connect();
29 networkstream = myclient.GetStream();
30 streamreader = new StreamReader(networkstream);
31 streamwriter = new StreamWriter(networkstream);
32 this.ShowMessage();
33
34
35 }
36 protected void Connect()
37 {
38 try
39 {
40 sb.Add ("Connecting to server");
41 myclient = new TcpClient("localhost",1234);
42 sb.Add ("Connected,please type something in the textbox");
43 }
44 catch
45 {
46 sb.Add(string.Format ("Failed to connect the {0}:1234","localhost"));
47
48 }
49 flag = true;
50
51
52 }
53 protected void ShowMessage()
54 {
55 for (int i = 0; i < sb.Count; i++)
56 {
57 t2.Items.Add (((object)sb[i].ToString ()));
58 }
59 sb.Clear();
60 }
61
62 private void t1_TextChanged(object sender, EventArgs e)
63 {
64 if (t1.Text == "")
65 bts.Enabled = false;
66 else
67 bts.Enabled = true;
68 }
69
70 private void bts_Click(object sender, EventArgs e)
71 {
72 if (t1.Text == "")
73 {
74 sb.Add("Please enter something in the textbox.");
75 t1.Focus();
76 return;
77 }
78 string s;
79 try
80 {
81 streamwriter.WriteLine(t1.Text.ToString());
82 Console.WriteLine("Sending Message");
83 streamwriter.Flush();
84 s = streamreader.ReadLine();
85 Console.WriteLine("Reading Message");
86 Console.WriteLine(s);
87 sb.Add(s);
88 t1.Text = ""
2using System.Collections.Generic;
3using System.ComponentModel;
4using System.Data;
5using System.Drawing;
6using System.Text;
7using System.Windows.Forms;
8using System.Net;
9using System.Net.Sockets;
10using System.IO;
11using System.Collections;
12
13namespace Clienttest
14{
15 public partial class Form1 : Form
16 {
17 private NetworkStream networkstream;
18 private StreamReader streamreader;
19 private StreamWriter streamwriter;
20 TcpClient myclient;
21 ArrayList sb;
22 public bool flag = false;
23 public Form1()
24 {
25 sb = new ArrayList();
26 InitializeComponent();
27 if (!flag)
28 this.Connect();
29 networkstream = myclient.GetStream();
30 streamreader = new StreamReader(networkstream);
31 streamwriter = new StreamWriter(networkstream);
32 this.ShowMessage();
33
34
35 }
36 protected void Connect()
37 {
38 try
39 {
40 sb.Add ("Connecting to server");
41 myclient = new TcpClient("localhost",1234);
42 sb.Add ("Connected,please type something in the textbox");
43 }
44 catch
45 {
46 sb.Add(string.Format ("Failed to connect the {0}:1234","localhost"));
47
48 }
49 flag = true;
50
51
52 }
53 protected void ShowMessage()
54 {
55 for (int i = 0; i < sb.Count; i++)
56 {
57 t2.Items.Add (((object)sb[i].ToString ()));
58 }
59 sb.Clear();
60 }
61
62 private void t1_TextChanged(object sender, EventArgs e)
63 {
64 if (t1.Text == "")
65 bts.Enabled = false;
66 else
67 bts.Enabled = true;
68 }
69
70 private void bts_Click(object sender, EventArgs e)
71 {
72 if (t1.Text == "")
73 {
74 sb.Add("Please enter something in the textbox.");
75 t1.Focus();
76 return;
77 }
78 string s;
79 try
80 {
81 streamwriter.WriteLine(t1.Text.ToString());
82 Console.WriteLine("Sending Message");
83 streamwriter.Flush();
84 s = streamreader.ReadLine();
85 Console.WriteLine("Reading Message");
86 Console.WriteLine(s);
87 sb.Add(s);
88 t1.Text = ""