本人刚接触Socket编程,对C#也不熟悉编了个简单的通信系统,在自己的电脑上实现客户端到服务器端的通信。可是客户端发送是说ip地址有问题?出现system.dll类型的异常。请大家帮忙解决,谢谢!!程序代码如下//客服端,功能为点击button1时把textBox1的内容发送给服务器端private void button1_Click(object sender, EventArgs e)
{
try
{ Socket Sender = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
Sender.Connect(IPAddress.Parse("192.168.1.105"), 0);
string data = textBox1.Text;
Byte[] buffer = new byte[1024];
buffer = System.Text.Encoding.ASCII.GetBytes(data);
Sender.Send(buffer);
Sender.Close();
}
catch (SocketException e1)
{
Console.WriteLine(e1.ToString());
return; }//服务器端,功能为点击开始时绑定ip并等待连接,连接成功边把通讯内容显示在textBox1上private void button1_Click(object sender, EventArgs e)
{
Socket Listener = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
IPEndPoint endpoint = new IPEndPoint(IPAddress.Parse("192.168.1.105"),0);
Listener.Bind(endpoint);
Listener.Listen(5);
Socket Accepter = Listener.Accept();
IPEndPoint ClientIP = (IPEndPoint)Accepter.RemoteEndPoint;
Console.WriteLine("Connect:"+ClientIP.Address +" At Point:"+ClientIP.Port);
Byte[] buffer = new Byte[1024];
int i = Accepter.Receive(buffer);
Console.WriteLine(i);
if (i!= 0)
{
string data;
data = Encoding.UTF8.GetString(buffer, 0, i);
textBox1.Text = data;
}
Accepter.Close();
Listener.Close();
}
{
try
{ Socket Sender = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
Sender.Connect(IPAddress.Parse("192.168.1.105"), 0);
string data = textBox1.Text;
Byte[] buffer = new byte[1024];
buffer = System.Text.Encoding.ASCII.GetBytes(data);
Sender.Send(buffer);
Sender.Close();
}
catch (SocketException e1)
{
Console.WriteLine(e1.ToString());
return; }//服务器端,功能为点击开始时绑定ip并等待连接,连接成功边把通讯内容显示在textBox1上private void button1_Click(object sender, EventArgs e)
{
Socket Listener = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
IPEndPoint endpoint = new IPEndPoint(IPAddress.Parse("192.168.1.105"),0);
Listener.Bind(endpoint);
Listener.Listen(5);
Socket Accepter = Listener.Accept();
IPEndPoint ClientIP = (IPEndPoint)Accepter.RemoteEndPoint;
Console.WriteLine("Connect:"+ClientIP.Address +" At Point:"+ClientIP.Port);
Byte[] buffer = new Byte[1024];
int i = Accepter.Receive(buffer);
Console.WriteLine(i);
if (i!= 0)
{
string data;
data = Encoding.UTF8.GetString(buffer, 0, i);
textBox1.Text = data;
}
Accepter.Close();
Listener.Close();
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货