用C#简单做了一个socket客户端,发送一串字符,代码是网上四处都能搜索到的
String ip="xxx.xxx.xxx.xxx";
String port="xxxxx";
IPAddress serverip=IPAddress.Parse(ip);
int serverport=Convert.ToInt32(port);
IPEndPoint iep=new IPEndPoint(serverip,serverport);
Socket socket=new Socket (AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
socket.Connect(iep);
byte[] bytemessage=Encoding.ASCII.GetBytes("aaaaaaaaaaaaad");
socket.Send(bytemessage);
socket.Shutdown(SocketShutdown.Send);
socket.Close();
服务端原来是用delphi做的,测试后发现服务端有反应,表示接收到,但显示出来的字符是空的.
我用delphi做的客户端发送数据,服务端是可以正常显示的.
各位达人,请教一下,这会是什么问题?
String ip="xxx.xxx.xxx.xxx";
String port="xxxxx";
IPAddress serverip=IPAddress.Parse(ip);
int serverport=Convert.ToInt32(port);
IPEndPoint iep=new IPEndPoint(serverip,serverport);
Socket socket=new Socket (AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
socket.Connect(iep);
byte[] bytemessage=Encoding.ASCII.GetBytes("aaaaaaaaaaaaad");
socket.Send(bytemessage);
socket.Shutdown(SocketShutdown.Send);
socket.Close();
服务端原来是用delphi做的,测试后发现服务端有反应,表示接收到,但显示出来的字符是空的.
我用delphi做的客户端发送数据,服务端是可以正常显示的.
各位达人,请教一下,这会是什么问题?
socket.Connect(iep);
之后,通过Connected属性判断一下是否连接上了
with AThread.Connection do
begin
s:=readln;
//memo1.Lines.Add(formatdatetime('yyyymmdd hh:nn:ss',now)+' '+s);
showmessage(s);
Disconnect;
end;
showmessage跳出提示框,s是读到的信息.
提示框已经跳出来了,但内容是空的.
试试socket成功了没有
正式用的时候,我这边只做客户端,服务端是对方提供的ip,端口
所以我对收到的东西没必要处理,只是看看是否能发送成功.
我用来用delphi做,直接发送一串字符过去就可以的了