T
takdick
Unregistered / Unconfirmed
GUEST, unregistred user!
我寫了兩個程序分別使用clientsocket和serversocket,主要是進行遠程文件管理,上傳下載的功能,現請問有沒有可靠的方法使server端在還沒有收到來自客戶端的disconnect指令,出現不明的錯誤時能自己重新連接客戶端,保持連線?
我已在服務端程序中加入一Timer控件,當連接成功後就開始每隔兩分鍾就向客戶端發送訊息,
try
cs.Socket.SendText('online');
except
cs.Socket.Close;
end;
procedure TForm1.csDisconnect(Sender: TObject; Socket: TCustomWinSocket);
begin
checktimer.enabled:=false; //停止每隔兩分鍾發送訊息的Timer
connecttimer.enabled:=true; //開始另一timer,每隔10秒連接指定地址
end;
procedure TForm1.csError(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);
begin
socket.Close;
end;
但有時候服務端還是莫名其妙地掉線了,但不是每一次都會出現,也不是在進行同樣的操作時失去連線,
請問有沒有辦法解決此問題?
我已在服務端程序中加入一Timer控件,當連接成功後就開始每隔兩分鍾就向客戶端發送訊息,
try
cs.Socket.SendText('online');
except
cs.Socket.Close;
end;
procedure TForm1.csDisconnect(Sender: TObject; Socket: TCustomWinSocket);
begin
checktimer.enabled:=false; //停止每隔兩分鍾發送訊息的Timer
connecttimer.enabled:=true; //開始另一timer,每隔10秒連接指定地址
end;
procedure TForm1.csError(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);
begin
socket.Close;
end;
但有時候服務端還是莫名其妙地掉線了,但不是每一次都會出現,也不是在進行同樣的操作時失去連線,
請問有沒有辦法解決此問題?