почему когда делаю коннект на самого себя через 127.0.0.1 все работает. а если через 192.168.1.14 то нет?
"запрос на отправку или получение данных(when sending on a datagram socket using a sendto call)no adress was supplied(10057)"
ps мой адрес 192,,, точно такой
e= {{System.Net.Sockets.SocketException (0x80004005): Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение 192.168.1.114:53535
в System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
в System.Net.Sockets.Socket.Connect(EndPoint remoteEP)
в AdmEye.ClientSocket.Connect() в c:\Users\saw\Documents\Visual Studio 2012\Projects\AdmEye\AdmEye\SocketClient.cs:строка 36}
}
не приложу ума что делать
если вместо своего адреса через 192.х.х.х использовать 127.х.х.х то все пашет. как так?
Код:
client = new ClientSocket("192.168.1.114", 5353);
client.RecieveData += client_DataReceived;
this.Sender = textBox1.Text;
int res = client.Connect();
client.RecieveData += client_DataReceived;
this.Sender = textBox1.Text;
int res = client.Connect();
Код:
private readonly Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
private readonly IPEndPoint endPoint;
public ClientSocket(string Address, int Port)
{
endPoint = new IPEndPoint(IPAddress.Parse(Address), Port);
}
public int Connect()
{
int retResult = 0;
try
{
clientSocket.Connect(endPoint);
clientSocket.BeginReceive(Buffer, 0, Buffer.Length, SocketFlags.None, client_DataReceived, clientSocket);
}
catch (SocketException e)
{
retResult = e.ErrorCode;
}
Connected = retResult == 0;
return retResult;
}
private readonly IPEndPoint endPoint;
public ClientSocket(string Address, int Port)
{
endPoint = new IPEndPoint(IPAddress.Parse(Address), Port);
}
public int Connect()
{
int retResult = 0;
try
{
clientSocket.Connect(endPoint);
clientSocket.BeginReceive(Buffer, 0, Buffer.Length, SocketFlags.None, client_DataReceived, clientSocket);
}
catch (SocketException e)
{
retResult = e.ErrorCode;
}
Connected = retResult == 0;
return retResult;
}
нашел решение. при объявлении сокета сервера енд поинт стоял лупбек. заменил его на эни и все ок