Socket se = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
se.Bind(new IPEndPoint("localhost", 9999));
se.Listen(500);
Socket s = se.Accept();
byte[] b = new byte[1];
int c = 0;
c = s.Receive(b);//没问题能够收到服务器发过来的信息
s.Close();
但是如果改为Socket se = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
se.Bind(new IPEndPoint("localhost", Convert.ToInt32(txtClientPort.Text)));
se.Listen(500);
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
s.Connect("localhost", 9999);
byte[] b = new byte[1];
int c = 0;
c = s.Receive(b);//在这儿一直被阻塞,说明没能接收到套接字里的信息
s.Close();
为什么用的二种方式s.Connect("localhost", 9999);连接到IP端口就不行呢?MSDN上说用Connect也是可以接收到消息的啊?
解决方案 »
- c#调用c++的dll,总是提示:尝试读取或写入受保护的内存。这通常指示其他内存已损坏。
- winform 引用动态链接库Dll文件 引用失败 未能添加对HD.dll的引用。请确保此文件可访问并且是一个有效的程序集或COM组件
- 模拟登陆58同城
- 求解ref参数对引用类型的作用过程
- 如何查找句柄 ?
- 请教:怎么把 C# 中 listBox 中的内容生成 txt 文件并可以读取出来啊?
- 请求时间戳的算法!thks
- c#如何灵活的设定表的列名传参
- 求助!各位大侠帮忙啊!
- $$$$$$$$使用datagrid的内置编辑功能,如果我的数据库中没有记录,怎样现实edit按钮
- sql server 2005存储过程注释
- C#简单问题求教
se.Bind(new IPEndPoint("localhost", 9999));
se.Listen(500);
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
s.Connect("localhost", 9999);
byte[] b = new byte[1];
int c = 0;
c = s.Receive(b);//在这儿一直被阻塞,说明没能接收到套接字里的信息
s.Close();