如题, 我在本机测试一个 发送接收数据的程序,现在我把端口都设置为80,但程序一启动就会报错: (通常每个套接字地址(协议/网络地址/端口)只允许使用一次) 请问,客户端与服务端 端口该怎么设置? 谢谢!!!!!!!!!1
解决方案 »
- 如何创建T为this.GetType的泛型集合
- 更新程序代码问题!
- WebForm中ORA-12704 字符集不匹配,咋回事?
- 请教一个文本框光标控制的问题,谢谢!
- 紧急求助!!关于TreeView
- 泰国时间如何转化为中国时间存入数据库
- 在datagrid里怎么加入RadioButtonList?
- 我想问一下在Asp.net中,写在<script>或<%%>之间的代码有撒区别,立既给分...
- 熟悉文件I/O操作的看过来!!!
- 新手求教,有没有办法把嵌套 if elseif 等等 的括号给自动标记的插件?
- C#怎么取道PDF文件里文档属性(title, auther, page size, pages etc)?
- winform中获取局域网中IP及MAC问题
以下部分代码:Socket listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
Socket socketSend = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
public delegate void AddListItemHandler(string text);
string recString1;
public string Ip;
public FrmReceive()
{
InitializeComponent(); //KillProcess();
IPEndPoint locEP = new IPEndPoint(IPAddress.Any, 8000);
listener.Bind(locEP); listener.Listen(100);
Thread acceptThread = new Thread(new ThreadStart(AcceptWorkThread));
acceptThread.Start();
}
现在仍然是一样的问题,换了端口也不好使!
Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
server.Bind(endpoint);
server.Listen(10);
server.BeginAccept(new AsyncCallback(AccepteCallBack), server);
EventDone.WaitOne();
Console.Read();
这是一个一部的例子
{
Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
EndPoint ep = new IPEndPoint(IPAddress.Any, 8000);
server.Bind(ep);
server.Listen(10);
while (true)
{
Socket acceptSocket = server.Accept();
Thread thread = new Thread(new ParameterizedThreadStart(SendMessage));
thread.Start(acceptSocket);
}
} private static void SendMessage(object acceptSocket)
{
Socket accept = (Socket)acceptSocket;
string stringToSend = "This is a message";
byte[] buffer = Encoding.Default.GetBytes(stringToSend);
accept.Send(buffer);
}
客户端:
Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
EndPoint ep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 8000);
client.Connect(ep);
byte[] buf = new byte[1024];
client.Receive(buf);
Console.WriteLine(Encoding.Default.GetString(buf));
Console.Read();