private void button3_Click(object sender, EventArgs e)
{
Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//这时的IP无论填多少(除了0.0.0.0), 都可以连接成功
//但只要改了端口就连接不上了
client.BeginConnect("10.40.60.70", 80, new AsyncCallback(Callback), client);
} private void Callback(IAsyncResult async)
{
Socket client = async.AsyncState as Socket;
try
{
client.EndConnect(async);
//连接成功
Console.WriteLine("connect successed");
}
catch (Exception ex)
{
//连接失败
Console.WriteLine(ex.Message);
}
}
是不是我对 Socket 的理解有误? 还是网络设置有问题?不可能随便填一个 IP 就能连接成功啊
{
Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//这时的IP无论填多少(除了0.0.0.0), 都可以连接成功
//但只要改了端口就连接不上了
client.BeginConnect("10.40.60.70", 80, new AsyncCallback(Callback), client);
} private void Callback(IAsyncResult async)
{
Socket client = async.AsyncState as Socket;
try
{
client.EndConnect(async);
//连接成功
Console.WriteLine("connect successed");
}
catch (Exception ex)
{
//连接失败
Console.WriteLine(ex.Message);
}
}
是不是我对 Socket 的理解有误? 还是网络设置有问题?不可能随便填一个 IP 就能连接成功啊
连接主机只需使用主机名称和端口号连接既可!
我就是这么处理的。c# socket.
不过EVC下的代码我倒有