Здравствуйте! Такая проблема возникла. Нужно что бы клиент и сервер обменивались данными друг с другом, т.е. Клиент мог слушать и посылать данные и сервер обладал такими же характеристиками.
Вот сервер
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
public void getText ()
{
socket.Bind(new IPEndPoint(IPAddress.Any, 80));
socket.Listen(1000000);
Socket client = socket.Accept();
byte[] buffer = new byte[1024];
client.Receive(buffer);
Console.WriteLine(Encoding.ASCII.GetString(buffer));
Console.ReadKey();
}
А вот сам клиент
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
public void connect()
{
socket.Connect("127.0.0.1", 80);
}
public void GiveOnline (string message)
{
connect();
byte[] buffer = Encoding.ASCII.GetBytes(message);
socket.Send(buffer);
socket.Bind(new IPEndPoint(IPAddress.Any, 8080));
socket.Listen(1);
socket.Accept();
socket.Receive(buffer);
}
Проблема заключается в том, что при запуске клиента, он ругается на строку с IPEndPoint:
Необработанное исключение типа "System.Net.Sockets.SocketException" в System.dll
Получен недопустимый аргумент
Порты разные юзаю (на форуме прочитал, что в этом проблема, но ничего не помогло)
System.Net.Sockets.SocketException
HResult=0x80004005
Сообщение = Получен недопустимый аргумент
Источник = System
Трассировка стека:
в System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot, SocketAddress socketAddress)
в System.Net.Sockets.Socket.Bind(EndPoint localEP)
в Client.Give.GiveOnline(String message) в C:\Users\Дом\source\repos\Client\Client\Give.cs:строка 24
в Client.Program.Main(String[] args) в C:\Users\Дом\source\repos\Client\Client\Program.cs:строка 14