idtcpserver接收文件后就不执行了

文件接收后就不执行了,然后客户端一直等待服务器返回,请大哥们帮我看看吧,谢谢.服务端接收文件代码iffile_tmp='1'thenbeginfilename:=send... 文件接收后就不执行了,然后客户端一直等待服务器返回,请大哥们帮我看看吧,谢谢.服务端接收文件代码 if file_tmp = '1' then begin filename:=send_file[1]; filesize:=StrToInt64Def(send_file[2],-1); sFile:=TFileStream.Create(ExtractFilePath(ParamStr(0)) + filename, fmCreate); try if filesize > -1 then begin AContext.Connection.IOHandler.WriteLn('send-ready'); AContext.Connection.IOHandler.LargeStream := True; AContext.Connection.IOHandler.ReadStream(sFile, filesize); //执行到这里就停住了 showmessage('ok'); //不弹出消息,后面代码不执行 end; finally sFile.Free; end; AContext.Connection.IOHandler.WriteLn('send-done'); //发送完成 end 客户端发送代码if restr='send-ready' then begin IOHandler.LargeStream := True; IOHandler.Write(sFile, sFile.Size); restr := IOHandler.ReadLn; if restr = 'send-done' then ShowMessage('Send finished.') //接收不到服务器发送的send-done,一直等待服务器回复 else ShowMessage('Send failed.'); end //下面是登录验证代码,这里没有问题 else if restr='error' then begin showmessage('授权失败,请先登录获得授权'); end; finally sFile.Free; end;
文件可以接收,文件也可用,就是会停在那里,新人一个,所以1分都木有啦
展开
 我来答
DoramiHe
2018-02-26 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25332 获赞数:59541
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
idtcpclient接收数据需要自己用线程来处理IdTCPClient.IOHandler.Readxxx的事情读取数据 至于读多少数据出来,就看你的传输结构了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式