100吩 高手们帮忙 socket连接服务端出错 ( 积分: 100 )

  • 主题发起人 主题发起人 meijingpengwork
  • 开始时间 开始时间
M

meijingpengwork

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm1.BtnconnectClick(Sender: TObject);
var
ca : sockaddr_in;
hostaddr : u_long;
begin
Client := socket(PF_INET,SOCK_STREAM,IPPROTO_IP);
if Client = INVALID_SOCKET then
begin
statusbar1.SimpleText :='为连接远端服务器创建SOCK错误';
EXIT;
end;
ca.sin_family := PF_INET;
ca.sin_port := htons(strtoint(trim(EdtPort.Text)));
hostaddr := inet_addr(pchar(trim(EdtIP.Text)));
if hostaddr = -1 then
begin
statusbar1.SimpleText := '主机IP错误';
exit;
end
else
begin
ca.sin_addr.S_addr := hostaddr;
end;
//连接服务器
if connect(Client,ca,sizeof(ca)) <>0 then
begin
statusbar1.SimpleText := '连接SOCKET错误';
exit;
end
else
begin
statusbar1.SimpleText := '连接SOCKET--success';
end;
end;
运行到if connect(Client,ca,sizeof(ca)) <>0 then 就错了 connect返回值是-1
服务器是本机,端口是8080
CONNECT是不是参错错了,该怎么设
 
connect错了就WSAGetLastError看看是什么错不就了了.
 
我在connect后面调用WSAGetLastError看了下 它返回值是10061 看不到社么信息啊
什么意思? 我是初次写SOCKET 请大侠们指导细点
 
你的连接被服务端拒绝.无论服务端是否是你自己写的,都要弄清楚他的工作机理.
 
10061是远程服务器没有在该端口开启服务.
你应当确认远程服务端口是否开启.
 

Similar threads

后退
顶部