public NetAccess()
{ Client = new UdpClient(2426);
processor = new Thread(new ThreadStart(StartListening));
processor.IsBackground = true;
}
public void Run()
{
processor.Start();
}
private void StartListening()
{
IPAddress address = IPAddress.Parse("255.255.255.255");
IPEndPoint remoteEP = new IPEndPoint(address,2425); IPMPack ipMPack = new IPMPack();
IPMPack sendIPMPack = new IPMPack();
sendIPMPack.LoginUser = Environment.UserName;
sendIPMPack.Version = 1;
sendIPMPack.Host = "192.168.1.1";
sendIPMPack.Command = CW.IPMSG_BR_ENTRY;
sendIPMPack.Group = Environment.UserDomainName;
sendIPMPack.No = GetNo();
BroadcastMsg(sendIPMPack, remoteEP);
remoteEP.Port = 2425;
while (isRun)
{
Thread.Sleep(100);
byte[] b = Client.Receive(ref remoteEP);
ipMPack = new IPMPack(b);
Receive(ipMPack, remoteEP);
Client.Close();
}
Thread.CurrentThread.Abort();
//Client.Close(); }
我现在在做类似飞鸽的东西,添加分组弹出窗体,添加完后重新绑定主窗体,现在在Client = new UdpClient(2426);
一直提示套接字只能使用一次,如何解决啊
{ Client = new UdpClient(2426);
processor = new Thread(new ThreadStart(StartListening));
processor.IsBackground = true;
}
public void Run()
{
processor.Start();
}
private void StartListening()
{
IPAddress address = IPAddress.Parse("255.255.255.255");
IPEndPoint remoteEP = new IPEndPoint(address,2425); IPMPack ipMPack = new IPMPack();
IPMPack sendIPMPack = new IPMPack();
sendIPMPack.LoginUser = Environment.UserName;
sendIPMPack.Version = 1;
sendIPMPack.Host = "192.168.1.1";
sendIPMPack.Command = CW.IPMSG_BR_ENTRY;
sendIPMPack.Group = Environment.UserDomainName;
sendIPMPack.No = GetNo();
BroadcastMsg(sendIPMPack, remoteEP);
remoteEP.Port = 2425;
while (isRun)
{
Thread.Sleep(100);
byte[] b = Client.Receive(ref remoteEP);
ipMPack = new IPMPack(b);
Receive(ipMPack, remoteEP);
Client.Close();
}
Thread.CurrentThread.Abort();
//Client.Close(); }
我现在在做类似飞鸽的东西,添加分组弹出窗体,添加完后重新绑定主窗体,现在在Client = new UdpClient(2426);
一直提示套接字只能使用一次,如何解决啊
{
Client.Send(iPMPack.GetBytes(),iPMPack.GetBytes().Length, endpoint);
}
没贴全,补上