未处理的“System.Net.Sockets.SocketException”类型的异常出现在 System.dll 中。其他信息: 由于套接字没有连接并且(当使用一个 sendto 调用发送数据报套接字时)没有提供地址,发送或接收数据的请求没有被接受。
一个简单的客户端/服务器的控制台
调试的时候就出现这个提示代码:
客户端
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;namespace socket_client_test
{
class Program
{
static void Main(string[] args)
{
IPEndPoint ipep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 6099);
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); socket.Connect(ipep);
byte[] msg = Encoding.ASCII.GetBytes("qwerasdf");
socket.Send(msg, msg.Length, SocketFlags.None);
socket.Close();
}
}
}服务端
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;namespace socket_server_test
{
class Program
{
static void Main(string[] args)
{
IPEndPoint ipep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 6099);
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.Bind(ipep);
socket.Listen(10);
socket.Accept();
if (socket == null)
{
Console.WriteLine("Error"); //这里的时候没有输出显示
Console.ReadKey();
}
int bufLen = socket.Available;
byte[] msg = new byte[1024];
socket.Receive(msg, 0, bufLen, SocketFlags.None); //到这里就出问题了
string str = Encoding.ASCII.GetString(msg);
Console.WriteLine(str);
Console.ReadKey();
}
}
}大大们帮帮忙吧
一个简单的客户端/服务器的控制台
调试的时候就出现这个提示代码:
客户端
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;namespace socket_client_test
{
class Program
{
static void Main(string[] args)
{
IPEndPoint ipep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 6099);
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); socket.Connect(ipep);
byte[] msg = Encoding.ASCII.GetBytes("qwerasdf");
socket.Send(msg, msg.Length, SocketFlags.None);
socket.Close();
}
}
}服务端
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;namespace socket_server_test
{
class Program
{
static void Main(string[] args)
{
IPEndPoint ipep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 6099);
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.Bind(ipep);
socket.Listen(10);
socket.Accept();
if (socket == null)
{
Console.WriteLine("Error"); //这里的时候没有输出显示
Console.ReadKey();
}
int bufLen = socket.Available;
byte[] msg = new byte[1024];
socket.Receive(msg, 0, bufLen, SocketFlags.None); //到这里就出问题了
string str = Encoding.ASCII.GetString(msg);
Console.WriteLine(str);
Console.ReadKey();
}
}
}大大们帮帮忙吧
客户端加try之后 IPEndPoint ipep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 6099);
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
try
{
socket.Connect(ipep);
byte[] msg = Encoding.ASCII.GetBytes("qwerasdf");
socket.Send(msg, msg.Length, SocketFlags.None);
socket.Close(); }
catch (System.Exception ex)
{
Console.WriteLine(ex.ToString());
}这样运行不进入catch
socket.Connect(ipep)之后查看属性socket.Connected = true
但是显示
“socket.EnableBroadcast”引发了“System.Net.Sockets.SocketException”类型的异常
base {System.ComponentModel.Win32Exception} = {"在 getsockopt 或 setsockopt 调用中指定的一个未知的、无效的或不受支持的选项或层次。"}
和
“socket.MulticastLoopback”引发了“System.Net.Sockets.SocketException”类型的异常
base {System.ComponentModel.Win32Exception} = {"提供了一个无效的参数。"}出现了这个了啊
代码网上都有!