線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2297
推到 Plurk!
推到 Facebook!

用TIdTcpServer主动断开客户端,在OnExecute中的ReadFromStack(true,100,false)老�

 
ansili
一般會員


發表:2
回覆:2
積分:0
註冊:2006-08-22

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-08-23 11:58:23 IP:222.212.xxx.xxx 訂閱

用TIdTcpServer主动断开客户端的OnExecute中的ReadFromStack(true,100,false)老出现这个错误'Not Connected'

Indy版本:9.00.10

断开代码:

if not AThread.Terminated then
begin
AThread.Terminate;
end;
except on Ex : Exception do
AppendLog(inttostr(TCPPort) ' 结束客户端线程 失败(DisconnectTCPClient),ErrorInfo : ' Ex.Message);
end;
try
if AThread.Connection.Connected then
begin
AThread.Connection.CheckForGracefulDisconnect(true);
AThread.Connection.Disconnect;
end;
except on Ex : Exception do
AppendLog(inttostr(TCPPort) '断开客户端连接 失败(DisconnectTCPClient),ErrorInfo : ' Ex.Message);
end;

OnExecute部分代码:

AThread.FreeOnTerminate := true;
if (not AThread.Terminated) and (AThread.Connection.Connected) then
begin
tmpBufferLen := 0;
try
if AThread.Connection.Connected then
begin
tmpBufferLen := AThread.Connection.ReadFromStack(true,100,false);/就这出现错误'Not Connected'
end;
except on Ex : Exception do
begin
DisconnectTCPClient(AThread);
AppendLog(IntToStr(TCPPort) '; TCPServerExecute ReadFromStack Error : ' Ex.Message);
end;
end;

......
end;

请问什么原因?如何解决?

msn:ansili@hotmail.com

系統時間:2024-04-28 2:32:38
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!