PDA

View Full Version : سوال: Only one usage of each socket address (protocol/network address/port) is normally permitted



arashmidos2020
چهارشنبه 28 مرداد 1388, 17:26 عصر
سلام من هر کاری می کنم بازم خطای "Only one usage of each socket address (protocol/network address/port) is normally permitted" رو نشون می ده و روی متد bind می استه و جلوتر نمی ره.
اینم کد که نوشتم:


string msg = "I am server";
string msg2="";
byte[] byteDataRec = new byte[1000];
byte[] byteData = new byte[1000];
byteData = Encoding.UTF8.GetBytes(msg);
string IPclient;
int i = 0;

//IPEndPoint IPe=new IPEndPoint(IPAddress.Any,_port);
IPEndPoint IPe = new IPEndPoint(IPAddress.Any, _port);

Socket[] Client = new Socket[100];

Socket listener = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);

listener.Bind(IPe);
listener.Listen(1000);
while (true)
{
Client[i] = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);

Client[i] = listener.Accept();

IPclient = ((IPEndPoint)Client[i].RemoteEndPoint).Address.ToString();

i++;
if (listener.Connected)
{
Client[i].Send(byteData);
Client[i].Receive(byteDataRec);
msg2 = Encoding.UTF8.GetString(byteDataRec);

if (msg2 == "I am clinet")
{
_NodeInfo.Add(IPclient);
}
}
listener.Close();
listener = null;
Client[i].Close();
Client[i] = null;
}

Sociant
چهارشنبه 28 مرداد 1388, 21:14 عصر
مقدار متغیر _port رو جایی ست کردی؟ اگه نه ، 0 در نظر گرفته میشه که یه شماره پورت رزرو شده است