本人服务端用TSocketServer作为服务连接
而客户端用TClientSocket来连接服务端,但是本人想自动连接服务端,因为网络有可能不通或服务端暂时未启动,本人想使用定时器来自动连接:本人作法是定时执行以下代码:
var
i,len:word;
msg:string;
buf:array of char;
begin //向所有客户端发送消息
msg:=Trim(S);
Len := Length(Msg);
SetLength(buf,Len + 2);
Move(Len,buf[0],2);
Move(Msg[1],buf[2],Len);
try
i:=ClientSocket.Socket.SendBuf(buf[0],Len + 2);
if i<=0 then
begin
ClientSocket.Active := false;//这行不写效果也一样
ClientSocket.Active := true;
end;
Except
end;
但是调用几次后就报错,Asynchronous Socket 10060
请问怎么解决能实时自动连接。其二,一旦连接,如果网络断线或软件非法关闭时,服务端也会报错,这个问题怎么解决:
或者针对本人的要求,谁有更好的方案或代码给本人一份,本人万分感谢。
而客户端用TClientSocket来连接服务端,但是本人想自动连接服务端,因为网络有可能不通或服务端暂时未启动,本人想使用定时器来自动连接:本人作法是定时执行以下代码:
var
i,len:word;
msg:string;
buf:array of char;
begin //向所有客户端发送消息
msg:=Trim(S);
Len := Length(Msg);
SetLength(buf,Len + 2);
Move(Len,buf[0],2);
Move(Msg[1],buf[2],Len);
try
i:=ClientSocket.Socket.SendBuf(buf[0],Len + 2);
if i<=0 then
begin
ClientSocket.Active := false;//这行不写效果也一样
ClientSocket.Active := true;
end;
Except
end;
但是调用几次后就报错,Asynchronous Socket 10060
请问怎么解决能实时自动连接。其二,一旦连接,如果网络断线或软件非法关闭时,服务端也会报错,这个问题怎么解决:
或者针对本人的要求,谁有更好的方案或代码给本人一份,本人万分感谢。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货