IdTCPClient, IdTCPServer 网络文件传输时,IdTCPClient客户端报错 在线等待 [问题点数:200分]

Bbs4
本版专家分:1384
结帖率 96.18%
Bbs4
本版专家分:1384
Bbs5
本版专家分:3164
Bbs5
本版专家分:3164
INDY 10 的idTCPSERVER 和idTCPCLIENT 通讯的例子
INDY 10 的idTCPSERVER 和idTCPCLIENT 通讯的例子
idtcpserver文件传输xe7PC端及手机端
<em>idtcpserver</em><em>文件传输</em>xe7PC端及手机端
Delphi idtcpserver断开与连接客户端
Delphi <em>idtcpserver</em>断开与连接<em>客户端</em>··
(死亡历险)Delphi7 IdTCPClient1,IdTCPServer1客户端向服务端发送指令进行文件下载
<em>客户端</em>rnprocedure TFormFileDownload.SpeedButton8Click(Sender: TObject);rnvarrn  rbyte:array[0..4096] of byte;rn  sFile:TFileStream;rn  iFileSize:integer;rnbeginrn  IdTCPClient1.Host:=host.Text;//'192.168
Indy TIdTCPClient 在网络掉线时的处理方法
自己做 TCP 的操作,<em>客户端</em>采用 TIdTCPClient 用起来比较简单。经过测试,这个控件也比较稳定。Indy 的控件都是阻塞模式。阻塞模式下,代码比较简单,不容易出现面条代码。nn假设 TCP 连接已经建立,正常操作中,<em>网络</em>掉线了,可能过一段时间,<em>网络</em>又恢复了。比如拔掉网线这种情况。nn经过测试,发现以下状况。以下描述的情况,在主线程中操作,和<em>在线</em>程中操作,结果一样。nnn在刚掉线的在几秒...
(10)uniGUI for C++ builder下如何使用IdTCPClient控件通讯?
(中行雷威2018.3.10)nn(同一个世界,同一个梦想,交流学习C++Builder XE10,传承c++builder的魅力!欢迎各地朋友加入我的QQ群484979943、860634510、299497712,进群密码“BCB”,同时也请将该群号广为宣传,希望能够广集各方高手,共同进步。如需下载开发工具及源代码请加入我的QQ群)nn【阅读倡议】nn1、有问题请留言;nn2、没问题请点赞;n...
Delphi7 基于IdTcpserver和IdTcpClient的通讯程序
Delphi7 基于IdTcpserver和IdTcpClient的通讯程序
C++ BUILDER如何解决IdTCPClient不能马上获得连接状态的问题?
(同一个世界,同一个梦想,交流学习C++Builder XE10,传承c++builder的魅力!欢迎各地朋友加入我的QQ群484979943,同时也请将该群号广为宣传,希望能够广集各方高手,共同进步。)rnIndy控件IdTCPClient在发出连接指令后马上判断连接状态结果不准确,因为他属于线程模式,需要在OnConnect事件中才能准确获得结果,为此换用ClientSocket控件解决该问题
IdTCPClient和IdTCPServer传输字符串流WriteStream
IdTCPClient和IdTCPServer传输字符串流WriteStream
Delphi中IdTcpServer 用户掉线检测方法
正常情况下,当登陆用户异常掉线并不会通知服务器,这时服务器一直以为用户<em>在线</em>,解决这种问题有以下两种方法:一、轮训检测连接情况,需要Timer轮训检测,如下代码:rnprocedure TMainForm.Timer1Timer(Sender: TObject);rnbeginrn CheckForDisconnect();rnend;rnrnprocedure TMainForm.CheckFo...
IdTCPServer、IdTCPClient 实例 Indy 10.6.2 编译平台Delphi10.2.2
IdTCPServer、IdTCPClient 实例 主要例子:发送IdBytes结构型Record数据、TMemoryStream流发送、发送图片、发送Tstrings、发送整型数值、发送文件等等功能,Tstream流发送未完成,不是太懂Tstream的操作性质,望大神分享技巧 Indy组件版本:10.6.2 编译环境:Delphi 10.2.2 服务器端:VCL架构 <em>客户端</em>:Fmx架构 PS:主要是网上Indy10.5++的新资料太少了,分享出来希望大家可以相互学习,谢谢
解决IdTCPClient和IdTCPServer通信中文乱码问题
这种问题的本质其实就是字符编码问题,只要统一下<em>客户端</em>和服务器的字符编码就行。n这里提供不同于网上常见方法的另一种方法,当然本质其实是一样的。
delphi_idtcpserver断开与连接客户端
delphi_<em>idtcpserver</em>断开与连接<em>客户端</em>
Delphi简单IDTCPsever和IDTCPclient应用
在程序中,服务端与<em>客户端</em>相连接后,应用readln和writerln实现两个程序字符串的链接
IDTCPClient文件传输
delphi中利用IDTCPClient及IDTCPServer控件进行端到端的<em>文件传输</em>。
delphi 文件传输
delphi 中利用indy组件<em>idtcpserver</em>与<em>idtcpclient</em>进行<em>文件传输</em>的实例
IdTCPServer接收发送字符串各种方式
IdTCPServer接收发送字符串各种方式,各种思路
idTCPSever得到连接IP和端口。
idTCPSever得到连接IP和端口。中文显示问题。rnrnrnprocedure TForm1.idtcpsrvr1Connect(AContext: TIdContext);rnvarrn  IP :string;rn  Port :Integer;rnbeginrn  AContext.Connection.IOHandler.DefStringEncoding := TEncoding.
delphi的IdTCPClient和IdTCPServer的Writestring用法
delphi的IdTCPClient和IdTCPServer的Writestring用法
IdTcpClient IdTcpServer 例程
IdTcpClient ,IdTcpServer 实现<em>客户端</em>和服务端的互发信息的例程
简单的服务器与客户端聊天例子2
delphi简单的IdTCPServer服务器与IdTCPClient<em>客户端</em>聊天源代码。
XE7下Indy10TIdTCPClient与TIdTCPServer发送字符串
网上很多的TIdTCPServer 和 TIdTCPClient ,无奈很多都不支持中文消息,发送中文消息都出现很多?? ,故有空做了2个Demo,以便大家参考!Delphi的开发资料越来越少了,希望大家把自己的技术都公布出来,让越来越多的人选择Delphi开发。
Delphi TCPIP通信 实例 解决中文乱码问题
敝人近期整理的<em>客户端</em>与服务端通信实例,数据编码约定采用UTF-8编码,解决中文乱码问题.ServerSocket组件可以同时接受一个或多个ClientSocket组件的连接请求,并与每个ClientSocket组件建立单独的连接,进行单独的通信。因此,一个服务器端可以为多个<em>客户端</em>服务
delphi TCP/IP读取发送信息
delphi7 <em>idtcpserver</em>/<em>idtcpclient</em>数据接发送实现
Delphi10.2 TCP发送文件Demo
采用Delphi的indy10编写 实现TCPclient发送文件到服务端 适合初学者学习
idtcpserver/idtcpclient双向文件传输
本实例可实现<em>idtcpserver</em>/<em>idtcpclient</em>双向<em>文件传输</em>,消息发送,并可实现更新升级功能,希望给有需有朋友一点帮助吧 有段时间没上CSDN了,才发现之前自己上传的资料传错了,对下了资源的朋友表示歉意。重新再传一次。
IDTcpClient传输示例
IDTCPClient传输文件的示例。可以进行文件的传输。具体参数自己研究下吧。忘记写了。下次一定记得!
关于idtcpserveridtcpclient文件传输
最近本人在做一个东西,在一个关键的部分卡住了,请高手帮忙!<em>在线</em>等~~rn本人用<em>idtcpserver</em>和<em>idtcpclient</em>做一个<em>文件传输</em>的工具.rn要求在server端的stringgrid中显示出所连接上的client端的一些信息,如IP地点,登录的用户名等.rn并可在server端选择所连接上的client端进行<em>文件传输</em>和消息传递.rn如果分不够,可以另开帖给分.感谢!
DelphiXE7 Android手机IDTCPClient通讯发Hex 多线程
使用Delphi XE7 通过IdtcpClient 多线程连接 多线线程发送 十六进制指令。
Delphi 大文件传输源码
支持超大文件<em>网络</em>传输的源代码 !
bcb2010使用IdTCPClient和ip控件
bcb2010使用IdTCPClient和ip控件 实现简单发送接收
怎样用idTCPClient和idTCPServer做文件传输
帮忙,急!
IdTCPClient与IdTCPServer
rn 服务器启动的时候,客服端自动连接到服务端。rn 当服务端关闭的时候,<em>客户端</em>如何知道服务端已经关闭(我用IdTCPClient下的onDisconnected事件不能监听到。有时非正常关闭,所以不能发送信息通知客服端)。rn 当客服端启动的时候,自动连接服务端( 如果检测到服务器没启动还继续尝试连接)。rn 当客服端关闭的时候,服务端如何知道客服端已经关闭(客服端有时非正常关闭,所以不能发送信息通知服务端);rnrn 最好有代码哈(能有注释最好不过了^_^) 小弟万分感谢,刚刚学习莫笑小弟哈!
C++ Builder XE8 安卓开发之使用TidTCPClient控件获取接收数据长度的方法
本人在使用indy10的TCPClient控件时,由于没有indy10的使用手册,一直不知道如何获取client接收数据的长度。n后来经过仔细的寻找和尝试,终于找到了获取接收数据长度的方法:nnnint len;nlen = TCPClient->IOHandler->InputBuffer->Size; //获取接收数据的长度nnnn既然得到了数据长度,就可以读取Client接
IdTcpClient如何等待IdTcpServer开启
如何让IdTcpClient不停的Connect,直到IdTcpServer开启.目前的情况,即使把IdTcpClient.Connec放在循环中,只要IdTCPServer没有提前开启,这个Connect就只能执行一次.
indy10大文件传输实例支持XE5XE6XE7
indy的例子太少,这是indy10的,大<em>文件传输</em>实例支持XE5,XE6,XE7,供参考
delphi7 TCP协议实现包
delphi TCP IdTcpServer IdTcpClient源代码 2个工程文件一个server一个client,server启动后,client连接,再发送消息就可以了
急救 idtcpserver,idtcpclient不响应的问题,在线等待!!!
我今天做了一测试,学习idctcpclient和<em>idtcpserver</em>rn请大侠指点,小弟急呀,弄了一上午都不行rnrn<em>idtcpclient</em>连接后,启动动计时器每20毫秒相服务端发送一串字符串,服务端只接受不需要返回信息rntryrnrnIdTCPClient1.Writeln(datetimetostr(now));rnexcept on e:exception dornbeginrn memo1.Lines.Add(e.Message);rnendrnend;rn当我发送到1839条,服务端正常接收并显示出来,之后<em>客户端</em>就不发送了(不响应了,界面冻结了(有IdAntiFreeze)),<em>客户端</em>也没<em>报错</em>,服务端也没有<em>报错</em>,当我强行终止客端程序,服务端就<em>报错</em>Socket Error #10054 connection reset by peer.rnrn
idTcpServer与众多idTcpClient
互通消息时,会不会想电话串线一样,发生混乱?rn不是说indy封装了多线程吗?
IdTCPServer,IdTCPClient问题
现在求用IdTCPServer,IdTCPClient做的上传,下载文件的<em>客户端</em>,服务端代码,重谢rn
Indy10的IdTCPServer和IdTCPClient
我正做一个局域网的c/s数据库系统.rn若干<em>客户端</em>和一个服务器.服务器需要监测各个<em>客户端</em>的情况,例如:<em>客户端</em>是否启动,关闭电脑,发送信息等等.rn原来没有做过这一块,请问是不是用Indy10的IdTCPServer和IdTCPClient来实现?最好给我一个例程看看.indy10的demo好像没有我要的功能.谢谢
delphi XE 字符串和图片远程传输代码
在delphi XE2下,利用datesnap技术,建立<em>客户端</em>和服务器程序间的联系,利用tcp/ip传输字符串及图片文件等。
一组idtcpclientidtcpserver文件上传
批量多用户的一组上传,改写一下可以同时写成多用户批量下载的,下载就吧传了,实在需要可以留言找我要,或者这个173120019 这个群里留言要。
IdTCPClient 和IdTCPServer编译出错
在窗体类文件中编译没有问题rn在非窗体类文件内加入相关头文件,或include含IdTCPClient 和IdTCPServer的窗体文件rn会<em>报错</em>,winsock.h winsock2.h中变量重复定义rn这个是为什么rn我在windows.h中去掉#include 可以编译通过,就是不知会不会有什么问题rnrn请高手给解答一下,谢谢
IdTCPServer和IdTCPClient传输数据的例子
简单一点的例子rn传输 packed recordrndelphi自带的demo看不懂rn哪位大侠能发哥例子给我学习学习rn或许再简单一点,只要能实现一端发 一端收就OK
还是idTCPServer和idTCPClient的问题
还是idTCPServer和idTCPClient的问题rnrn我的问题是这样的rnrn我要写一个类似于网吧管理系统的系统rnrn网上虽然有很多这样的程序,我想自己写一个类似的,可以在这与的过程中学到很多东西rnrn服务器端我用idTCPServer,客户机端我用idTCPServerrn客户机定时(例如60秒)向服务器发送一个连接包,然后<em>等待</em>服务器发回来的连接包,如果没有收到服务器发回来的连接包客户机就重新连接服务器,以确保客户机与服务器随时保持连接状态。rnrn但接着问题就来了,因这是一个控制程序,控制命令都是从服务器上发出来的,所以服务器端要用到rnTIdPeerThread(Client.Thread).Connection.WriteBuffer(pack,SizeOf(pack),true);rn//rnrn就是因为客户机要接受服务器的命令,所以要在客户机端建立一个线程类,功能似于indy Demo里的Chat的那个Timer要定时接收从服务器发过来的包rnFormMain.IdClient.ReadBuffer(pack,SizeOf(pack));rnrn也下是因为idTCPClient要定时接收服务器发回来的连接包rn如果连接包和命令包同时发过来,就会产生冲突,在Server端我不知道怎么样的同步rnrn请大家指教!rn
关于IdTcpServer与IdTcpClient编程
procedure TForm1.serverConnect(AThread: TIdPeerThread);rn其中AThread具体是指那个线程?rnAThread.Connection这个Connection指的又是什么?rnAThread.Connection.Socket这个Socket指的是<em>客户端</em>的Socket还是服务器端的Socket?rnAThread.LockList的作用是什么?
数据传输问题 idtcpserveridtcpclient
数据传输时,为什么工作时间长了,<em>客户端</em>就与服务器连接自动断开了,大约10个小时就断了rnrn我这里的情况这样的,现在有10多个<em>客户端</em>,每个<em>客户端</em>20毫秒传一次数据.一个<em>客户端</em>10秒内传输100个数据包.rnrn现在我想知道为什么会出现连接断开的情况,产生这样的情况主要原因是什么
delphi7的Idtcpserver与Idtcpclient 和使用?
delphi7的Idtcpserver与Idtcpclient 如何使用。知道的请进?
关于Idtcpclient和Idtcpserver
如何建立线程,使连接的客户IP都显示在listview中,rn还有如何使服务器向客户发送信息。rn各位大侠给个相关的例子也行,衷心谢谢!
IdTcpClient、IdTcpServer 演示程序修正版
IdTcpClient、IdTcpServer 演示程序修正版。 演示程序的功能:不同的<em>客户端</em>发送消息、群发消息。类似局域网内的 QQ 的功能。 从官方站点下载的演示程序,由于在Server端的线程列表里不能正确区分所有连接的<em>客户端</em>,所以只能“群发”消息,而不能给指定的<em>客户端</em>发送消息(这个功能原代码里实现了,但是有Bug,所以不能用,修正版正是修正了这个错误)。 本人修改后的代码通过 IP 地址区分不同的<em>客户端</em>,接收人(Recipient)填写IP地址,就能发送消息。接收人为空,给所有人发消息(群发)。-----------------------------------------------===更多计算机技巧,请访问:电脑学习网:http://www.why100000.com===
IdtcpClient和Idtcpserver,心跳包!
用indy做个东西,已经实现了心跳,但是现在无论client和server是否正在通信,它都在发心跳,我觉得这样不好~rnrn我想当client和server正在通信的时候,比如正在传输一个文件的时候,不要发送心跳,空闲的时候再发。请问idclient和<em>idtcpserver</em>有没有什么函数,可以检测到当前连接上有数据正在发送?rnrnps:他们的onwork事件我不想用,因为只有writestream和writefile才有用。
关于IDTCPServer和IDTCPClient数据传输
我在服务器端用:rnrn TListClient=class(Tobject)rn DNS,rn Name :String;rn Listlink :Integer;rn Thread :Pointer;rn.............rnrn保存<em>客户端</em>信息,但是在<em>客户端</em>非法关闭的时候,服务器没有自动刷新列表,我还写了一个刷新列表的函数,但是每次非法退出时都要手动刷新才行,如果不刷新下次列表信息就有问题了。难道非要定时检测吗?不知各位有什么好方法介绍一下,谢谢。rnrn再问一下,用IDTCPServer和IDTCPClient数据传输,传输入接收的数据大小多少是最合适的,太大了会不会有数据丢失的现像!
IdTCPClient和IDTCPServer传输问题?
服务器端rnprocedure TForm1.ServerConnect(AThread: TIdPeerThread);rnbeginrnAthread.Connection.ReadBuffer(KR_login,sizeof(KR_login));rn if (KR_login.Name = '1111') and (KR_login.Password = '1111') thenrn memo1.lines.add('登陆成功') else beginrn memo1.lines.add('登陆失败');rn Athread.Connection.Disconnect;rn end;rnend;rnrnrn<em>客户端</em>rnrnprocedure TForm1.Button1Click(Sender: TObject);rnbeginrn Client.Host := ServiceIp.Text;rn Client.Port := StrToint(Serviceport.Text);rn Client.Connect(5000);rn Login(Client,L_name.Text,L_pass.Text);rnend;rnrnprocedure TForm1.Login(Icon: TIdTCPClient; Name,password: String);rnvarrn Lbuff: TKR_login;rnbeginrn Lbuff.Name := name;rn Lbuff.Password := password;rn Icon.Writebuffer(Lbuff,sizeof(lbuff));rnend;rnrn现的问题是:在登际不成功的时候,服务器断开与<em>客户端</em>的连结,但是现在发现如果第一次登陆不成功的话,第二次登陆<em>客户端</em>就出现already connected 错误提示,,感觉Athread.Connection.Disconnect;没有执行,但是 memo1.lines.add('登陆失败');正常显示,问下哥哥可哥们,我到底该怎么断开连结rnrnrnrn
IDTCPClient/IDTCPServer/IDUDPClient/IDUDPServer
一个<em>网络</em>系统,在<em>客户端</em>相互信息发送时,同时要求记录保存到服务器的数据库里,请教服务器端/<em>客户端</em>分别用INDY的具体哪个控件比较合理
Delphi通过IdTCPServer只允许一个用户登录..rar
Delphi通过IdTCPServer只允许一个用户登录..rar
xe的TIdTCPClient中文乱码问题
TIdTCPClient中文乱码问题 我在进行indy10.5.7这个版本进行idTCPClient及idTCPServer进行编程时同样汉字收发时会产生乱码,我在单元的里引用了 HTTPApp 单元, 在发的时候这样写IdTCPClient.IOHandler.WriteLn(HTTPEncode(edtMsg.Text)); 在收的时候这样写HTTPDecode(IdTCPClient.IOHandler.ReadLn); 就可以用汉字进行通讯了
indy10.5.7制作的局域网聊天程序示例
delphiXE自带的indy10.5.7里面的IdTCPServer和IdTCPClient以内存流的形式进行内容传输。能够记录历史聊天内容,聊天记录的文字以不同的颜色进行区分(运用RichEdit控件)。<em>客户端</em>上线、下线能够即时通知其它<em>客户端</em>。上线时服务器会主动告诉所有<em>在线</em><em>客户端</em>。 服务器端在最小化可以进入托盘状态。双击托盘图标恢复正常。
delphi indy socket聊天
delphi indy 下的IdTCPClient IdTCPServer进行聊天,利用delphi xe7 下能编译成功,做的不是很完善,正常完善中。能把信息传递出去。
IdTCPClient 和IDTCPServer传输图片的问题
MyFirstBmp是内存流,已经存入了个32bit色的图片,发送到服务端的时候为什么服务端会主动关闭?发送8bit的图片就不会,而且能在TImage画布出来 rn客服端发送图片代码 : rn Form1.IdTCPClient1.WriteInteger(MyFirstBmp.Size);rn Form1.IdTCPClient1.WriteBuffer(MyFirstBmp.Memory^,MyFirstBmp.Size,true);rn服务端接受图片代码:rnvar rn BufferLen :Integer; MyBuffer: array[0..1000000] of Byte;rnbeginrn BufferLen:= AThread.Connection.ReadInteger();rn AThread.Connection.ReadBuffer(MyBuffer,BufferLen);rn MyFirstBmp:=TMemoryStream.Creatern MyFirstBmp.Clear; //MyFirstBmp是内存流rn MyFirstBmp.Write(MyBuffer,BufferLen);//rn MyFirstBmp.Position := 0;rn TempBmp:=TBitmap.Create;rn TempBmp.LoadFromStream(MyFirstBmp);rn Image1.Width := TempBmp.Width;rn Image1.Height := TempBmp.Height;rn Image1.Canvas.Draw(0,0,TempBmp);rn MyFirstBmp.free;rnend;
请问idtcpserveridtcpclient互通问题
每一个<em>idtcpclient</em>连上<em>idtcpserver</em>都有一个athread。rn请问<em>idtcpserver</em>怎么给指定的客户发消息。有无简单的例子。。rn比如我有四个客户连上了。怎么发啊?rnrn
用IdTcpClient\IdTcpServer传送xml
以前没有接触过<em>网络</em>编程,照着demo做了一个发觉传送简单字符串可以,但传送流确失败了。主要就是<em>客户端</em>发送请求,服务端收到请求后检索数据,然后传送回<em>客户端</em>处理。但是<em>客户端</em>收不到服务端发回的信息。rn请大家指导,或者给出更好的方法。谢谢rnrn<em>客户端</em>:rnprocedure TForm1.Button1Click(Sender: TObject);rnvarrn s: string;rn AStream: TStringStream;rnbeginrn server.Active := True;rn client1.Connect;rn if client1.Connected thenrn beginrn AStream := TStringStream.Create('');rn bstream := TStringStream.Create('');rn tryrn xml处理……rnrn xml.SaveToStream(AStream);rn client1.OpenWriteBuffer;rn client1.WriteStream(AStream);rn client1.CloseWriteBuffer;rnrn AStream.Size := 0;rn client1.ReadStream(AStream); // 到这里就没有响应了rn AStream.Seek(0, soFromBeginning);rn xml.LoadFromStream(AStream);rnrn xml处理……rn finallyrn AStream.Free;rn client1.Disconnect;rn end;rn end;rnend;rnrnprocedure TForm1.ServerExecute(AThread: TIdPeerThread);rnvarrn sRequest: string;rn aStream: TStringStream;rn RootNode, InfoNode: IXMLNode;rn ParmNodes: IXMLNodeList;rnbeginrn with AThread.Connection dorn beginrn aStream := TStringStream.Create('');rn tryrn ReadStream(aStream);rn AStream.Seek(0, soFromBeginning);rn xml.LoadFromStream(aStream);rnrn xml处理……rn if sRequest = 'GET' thenrn beginrn aStream.size := 0;rn GetInfo(InfoNode.ChildNodes, aStream);rn showmessage(astream.DataString);rn OpenWriteBuffer;rn WriteStream(aStream);rn CloseWriteBuffer;rn end;rn finallyrn aStream.Free;rn disconnect;rn end;rn end;rnend;
请教indy(IdTCPClient与IdTCPServer)通讯
请教各位,用IdTCPClient和IdTCPServer做的适时通讯程序,应该怎么处理比较合适啊?rnrn1、我在IdTCPClient的execute里面读取接收到的数据,可是当IdTCPClient连接connect之后,cpu占用100%,rnexecute在不停的执行读取数据的操作,请问应该怎么处理啊?rnrn2、我应该在IdTCPClient里面怎么读取IdTCPServer发给来的数据?rnrn注意,<em>客户端</em>要保持长连接状态,适时发送数据。
IdTcpClient/IdTcpServer 连接Disconnected 无效?
朋友们,最近需要做一个程序,其中应用到IdTcpClient和IdTcpServer,Indy版本为10.2.3rn发现IdTcpClient.DisConnected后连接还是存在,rn采用FreeAndNil(IdTcpClient)后资源也不释放;rnrn同样,IdTcpServer的资源也释放不掉。rnrn加上Indy内存泄露确实最近得改版成ICS了。
IdTCPClient和IdTCPServer怎样建立连接
为什么IdTCPClient和IdTCPServer一建立连接就断开了.rn代码如下,rnrnprocedure TForm1.Button1Click(Sender: TObject);rnbeginrn TC.Host:=Edit1.Text;rn TC.Port:=StrToInt(Edit2.Text);rn tryrn TC.Connect(5000);rn exceptrn MessageBox(Application.Handle,'连接服务器出错!','错误',16);rn end;rnend;rnrn应该怎样写才会不断开?
Idtcpserver向Idtcpclient发送文件
谁能提供一个例子?谢谢
一定给分!! idTcpServer 与idTcpClient的问题。
idTcpServer 与idTcpClient 互相传送流的时候,如何使他不断开?rnrndemo里面是断开才能传送的。 :(
c++ builder IdTCPServer/IdTCPClient 问题
有在c++ builder6 下成功使用过 Indy9/IdTCPServer 的没?? rn我这老出问题。。。 rn应该不是代码问题,貌似BCB环境问题或者Indy9.0.18这个版本问题?? rn调试了一个通宵了。。。 rn感觉有瘁死的先兆了。。。HELP ME~~ rnrn//发送 rnvoid __fastcall TForm1::Button2Click(TObject *Sender) rn rnIdTCPClient1->Connect(); rnIdTCPClient1->WriteLn("郁闷"); rnIdTCPClient1->Disconnect(); rn rnrn//接收 rnvoid __fastcall TForm1::IdTCPServer1Execute(TIdPeerThread *AThread) rn rn String mystr=AThread->Connection->ReadLn(); //调试发现 AThread->Connection==NULL rn AThread->Connection->Disconnect(); rn rnrn软件环境 rnIndy9.0.18 rnBCB6+SP4 rnWindowsXP rn
idTcpServer如果知道 idTcpClient 断开
idTcpClient连接上idTCPServer之后,如果idTcplient断开了,idTCPServer会解发什么事件?rnrn
简单的网络心跳包实现(如何确保client在线
简单的<em>网络</em>心跳包实现(如何确保client<em>在线</em>),<em>客户端</em>和服务器的<em>网络</em>通信关系维护
关于IDTCPCLIENT和IDTCPSERVER的范例,在线等待。请各位高手帮忙!!
能不能给我也个最简单的IDTCPCLIENT和IDTCPSERVER的范例。我只要如此:rnprocedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);rnbeginrn showmessage(AThread.Connection.ReadLn('',-2));rnend;rnrnprocedure TForm1.Button1Click(Sender: TObject);rnbeginrn if not IdTCPClient1.Connected thenrn IdTCPClient1.Connect();rn IdTCPClient1.WriteLn('dd');rnend;rn在DELPHI调试环境下可以使用,但一变成EXE文件来运行时就没有反映,并在关闭程序时出错误。
TcpClient 异步读取数据
TcpClient 1.异步读取数据 2.连接状态维护 QQ:574311505 欢迎交流
IDTCPClient文件的程序文件传输在线等!
简单的说现在我传输过去的是如果是txt文件!打开就是乱码!但感觉里面的数字没变!别的传过去只是大小一样!文件打不开或者是乱码?rncliect 文件传送端rnprocedure DownLoadFileProc(AThread: TIdPeerThread);rnvarrn TheFileName: string;rn ThePosition: integer;rn FromF: file of byte;rn FileLen: integer;rnrnbeginrn tryrn TheFileName := AThread.Connection.ReadLn(EOL);rn ThePosition := AThread.Connection.ReadInteger;rn exceptrn AThread.Connection.Disconnect;rn exit;rn end;rn if FileExists(TheFileName) thenrn beginrn DownLoadThreadExecute(AThread,TheFileName, ThePosition);rn endrn elsern beginrn tryrn AThread.Connection.Write('文件不存在' + EOL);rn AThread.Connection.Disconnect;rn exceptrn AThread.Connection.Disconnect;rn end;rn end;rnend;rnrnprocedure DownLoadThreadExecute(AThread: TIdPeerThread; TheFileName: string; ThePosition:integer);rnvarrn FromF: file ;rn FileLen,BufferTotalNum: integer;rn NumRead, NumWritten: Integer;rn Buf: array[1..32768] of Char;rn tmStr:Tmemorystream;rnbeginrn tryrn AssignFile(FromF, TheFileName);rn FileMode := 0;rn Reset(FromF,1);rn FileLen := FileSize(FromF);rn Seek(FromF, ThePosition);rn exceptrn tryrn CloseFile(FromF);rn exceptrn end;rn exit;rn end;rn tryrn AThread.Connection.Write('OK'+inttostr(FileLen-ThePosition)+EOL);rn exceptrn CloseFile(FromF);rn exit;rn end;rn NumRead:=0;rn BufferTotalNum:=ThePosition;rnrn repeatrn tryrn AThread.Connection.OpenWriteBuffer;rn BlockRead(FromF, Buf, SizeOf(Buf), NumRead);rn AThread.Connection.WriteBuffer(Buf, NumRead);rn AThread.Connection.CloseWriteBuffer;rn BufferTotalNum:=BufferTotalNum+NumRead;rn exceptrn CloseFile(FromF);rn exit;rn end;rn until (BufferTotalNum=FileLen);rn CloseFile(FromF);rn if AThread.Connection.Connected thenrn AThread.Connection.Disconnect;rnrnend;rnrnrnserver端 文件接收端rnrn try //发送下载的文件rn DownLoadTcp.Write('文件下载' + EOL); //1-------SendfileCMDrn DownLoadTcp.Write(SrcouceDir.Text + FileNameText.Text + EOL); //2-------SendfileNamern exceptrn DownLoadTcp.Disconnect;rn Animate1.Active := False;rn beep;rn Self.Caption := '提示:<em>网络</em>信息发送失败!';rn exit;rn end;rn TmpFName := DownLoadDir.Text + FileNameText.Text;rn //================================文件接续rn tryrn if FileExists(TmpFName) thenrn beginrn SaveFStream := TFileStream.Create(TmpFName, fmOpenReadWrite);rn AlreadyReadLen := SaveFStream.Size;rn endrn elsern beginrn SaveFStream := TFileStream.Create(TmpFName, fmCreate);rn AlreadyReadLen := 0;rn end;rn exceptrn beep;rn beep;rn Self.Caption := '错误提示:请重新指定下载目录!';rn exit;rn end;rn //===============================rn tryrn DownLoadTcp.WriteInteger(AlreadyReadLen); //---send filePos文件位置rn exceptrn SaveFStream.free;rn Animate1.Active := False;rn DownLoadTcp.Disconnect;rn Self.Caption := '错误提示:<em>网络</em>信息发送失败!';rn exit;rn end;rnrn tryrn RetStr := DownloadTcp.ReadLn(EOL); //OKrn exceptrn SaveFStream.free;rn DownLoadTcp.Disconnect;rn Animate1.Active := False;rn Self.Caption := '错误提示:远程<em>网络</em>断开,接收失败!';rn exit;rn end;rnrn if copy(RetStr,1,2) = 'OK' then //------------------------读取接收标志rn begin //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^rn //读数据------------------------开始-----rn try rn Delete(RetStr,1,2);rn ReadFileLen:=strtoint(RetStr);//文件大小rn exceptrn SaveFStream.free;rn DownLoadTcp.Disconnect;rn Animate1.Active := False;rn Self.Caption := '错误提示:远程<em>网络</em>断开,接收失败!';rn exit;rn end;rn SaveFStream.Position := SaveFStream.Size;rn ProgressBar1.Max := ReadFileLen + AlreadyReadLen;rn ProgressBar1.Position := 0;rn tryrn DownLoadTcp.ReadStream(SaveFStream, ReadFileLen);rn exceptrn SaveFStream.Free;rn Animate1.Active := False;rn DownLoadTcp.Disconnect;rn Self.Caption := '错误提示:远程<em>网络</em>断开,接收失败!';rn exit;rn end;rn SaveFStream.free; //下载成功rn Bitbtn3.Enabled := True;rn beep;rn Self.Caption := '下载完毕! 共:' + IntToStr(ProgressBar1.Max) + '字节';rn ProgressBar1.Position := ProgressBar1.Max;rn Sleep(100);rn DownLoadTcp.Disconnect;rn Animate1.Active := False;rn if checkBox1.Checked then Close;rn exit;rn end;rnrn
indy组件TCP文件数据传输(C++Builder6.0)
利用C++Builder6.0 自带indy中 IdTCPSever/IdTCPClient组件,进行文件、数据传输。
请教一下idTcpServer与idTcpClient通讯的问题
大家好:rn 请教一下,有这样的一个问题,idTcpClient要向idTcpServer发送内容,内容里包含很多的特殊符号、换行符号,用IdTCPClient1.Writeln(msg),idTcpClient收到的内容被截断了,如果把内容放到Tstringlist里,用IdTCPClient1.WriteStrings(tmpstr,true),收到的内容会少了好几个字段,tmpstr本身有14个字段,收到的只有6,7个字段,不知道有什么好的传输方法?
新手 还得麻烦各位 idtcpserver/idtcpclient
indy。。demos里。。拉了两程序。'basic server','client'rn本地用户端先发出个消息,到服务器,再到本地服务器。。不知道能不能这么理解rn Items.Strings = (rn 'pjmd'//这是我想添加的服务器的列名(字段?小弟不知。。)rn 'Date'rn 'Time'rn ......rn本地服务器的。。rnelse if command='pjmd'thenrn AThread.Connection.WriteLn('***',now)//怎么添加?rn用户接收的。。rn显示:Command not recognised-try again!rnrn可能我犯了方向性的错误,求指点。rn这能直接提取服务器数据库中的数据么?那是实时产生的数据。拜托了!谢谢rn
IdTCPClient与 IdTCPServer 间传输问题,请指教。
unit Unit1;rnrninterfacernrnusesrn Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,rn Dialogs, DB, Grids, DBGrids, StdCtrls, ADODB, IdTCPServer,rn IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient;rnrntypern Tuser = recordrn s_id:array[0..50] of string;rn s_name:array[0..50] of string;rn s_age:array[0..50] of string;rn s_text:array[0..50] of string;rn dt_date:array[0..50] of TDateTime;rnend;rnrn TForm1 = class(TForm)rn ADOConnection1: TADOConnection;rn Button1: TButton;rn DBGrid1: TDBGrid;rn DataSource1: TDataSource;rn Memo1: TMemo;rn IdTCPClient1: TIdTCPClient;rn IdTCPServer1: TIdTCPServer;rn ADOQuery1: TADOQuery;rn Button2: TButton;rn procedure Button1Click(Sender: TObject);rn procedure FormCreate(Sender: TObject);rn procedure IdTCPServer1Execute(AThread: TIdPeerThread);rn privatern Private declarations rn publicrn Public declarations rn end;rnrnvarrn Form1: TForm1;rn strm: TMemoryStream;rn //user:Tuser;rnimplementationrnrn$R *.dfmrnrnprocedure TForm1.Button1Click(Sender: TObject);rn var i:integer; user:Tuser;rnbeginrn strm:= TMemoryStream.Create;rnrn ADOQuery1.First;rn while not ADOQuery1.Eof dorn beginrn for i:= 1 to ADOQuery1.RecordCount dorn beginrn user.s_id[i-1]:= ADOQuery1.FieldByName('i_id').AsString;rn user.s_name[i-1]:= ADOQuery1.FieldByName('vc_name').AsString;rn user.s_age[i-1]:= ADOQuery1.FieldByName('vc_age').AsString;rn user.s_text[i-1]:= ADOQuery1.FieldByName('vc_text').AsString;rn user.dt_date[i-1]:= ADOQuery1.FieldByName('dt_date').AsDateTime;rn ADOQuery1.Next;rn end;rn end;rnrn strm.WriteBuffer(user,sizeof(Tuser));rnrn self.IdTCPClient1.Host:='127.0.0.1';rn self.IdTCPClient1.Port:=9999;rn tryrn self.IdTCPClient1.Connect(5000);rn //self.IdTCPClient1.Writebuffer(strm,sizeof(strm));rn self.IdTCPClient1.WriteStream(strm,true,False);rn self.IdTCPClient1.Disconnect;rn exceptrn on e:exception dorn memo1.Lines.Add(e.Message);rn end;rnrn strm.Free;rnend;rnrnprocedure TForm1.FormCreate(Sender: TObject);rnbeginrn with ADOQuery1 dorn beginrn Close;rn SQL.Clear;rn SQL.Add('select * from sy');rn Open;rn end;rn rn self.IdTCPServer1.DefaultPort:=9999;rn self.IdTCPServer1.Active:= true;rnend;rnrnprocedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);rnvarrn i:integer; user:TUser;rnbeginrn strm:= TMemoryStream.Create;rnrn with AThread.Connection dorn beginrn AThread.Connection.ReadStream(strm,-1,FALSE);// 跟踪:strm显示为strm(),证明数据没过来rn strm.ReadBuffer(user,sizeof(TUser));rn memo1.Lines.Add(user.s_id[1]); //没有看到user.s_id[1]的数据rn end;rnend;rnrnend.rnrn不知道具体应该怎么改,谢谢大家。
IdTCPServer和IdTCPClient,ServerSocket和ClientSocket,TcpServer和TcpClient的问题?
这些控件有什么区别?我装的delphi里只有TcpServer和TcpClient,没有IdTCPServer和IdTCPClient,ServerSocket和ClientSocket,是要装过什么才会有吗?
寻找idtcpserveridtcpclient传输文件的例子!谢了!
寻找<em>idtcpserver</em>和<em>idtcpclient</em>传输文件的例子!谢了!
IdTCPServer回传给IdTCPClient字符串失败
当服务端接收到<em>客户端</em>传来的字符串流后,返回一字符串给<em>客户端</em>以确认服务端已收到字符串流,但该确认的字符串服务端发不出去,何因??代码如下:rn<em>客户端</em>:rn IdTCPClient1.Connect;rn if (IdTCPClient1.ReadLn = 'OK') thenrn beginrn Str := 'asdfasdfasd$%13123132112311313131###252345234!';rn AStream := TStringStream.Create(Str);rn IdTCPClient1.OpenWriteBuffer;rn IdTCPClient1.WriteStream(AStream);rn IdTCPClient1.CloseWriteBuffer;rn AStream.Free;rn end;rn Strs := IdTCPClient1.ReadLn;rn IdTCPClient1.Disconnect;rnrn服务端:rn AThread.Connection.WriteLn('OK');rn Astrem := TStringStream.Create('');rn AThread.Connection.ReadStream(Astrem, -1, True);rn Astrem.Seek(0, soFromBeginning);rn SStr := Astrem.DataString;rn Astrem.Free;rn Edit1.Text := SStr;rn AThread.Connection.WriteLn('Over');rn AThread.Connection.Disconnect;
询问idtcpserveridtcpclient互发信息问题!
<em>客户端</em>代码:rnprocedure Treceivemsg.Execute ;rnbeginrnwhile not terminated dornbeginrnif form1.IdTCPClient1.Connected thenrnbeginrnmsg:=form1.IdTCPClient1.ReadLn;rnform1.memo1.Text:=msg+#10+form1.memo1.text;rnsleep(100)rnend;rnend;rnend;rnrnrn服务器端代码:rnprocedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);rnvarrn i : Integer;rnbeginrn tryrn with IdTCPServer1.Threads.LockList dorn for I := 0 to Count - 1 dorn beginrn AThread := Items[I];rn if AThread.Connection.Socket.Binding.PeerIP = 'hostname' thenrn AThread.Connection.WriteLn('ok');rn end;rn finallyrn IdTCPServer1.Threads.UnlockList;rn end;rnend;rnrnrn现在问题是,服务端可以正常接受每个<em>客户端</em>发来的信息。但当服务器端向<em>客户端</em>发送信息时,<em>客户端</em>接收不到信息???这是怎么回事???盼复。。谢谢
****谁有IdTCPClient和IdTCPServer相互传递消息的例子?
我需要一个简单的例子:rn IdTCPClient ==> 传消息到==> IdTCPServerrn IdTCPServer ==> 传消息到==> IdTCPClient
delphi的IdTCPClient和IdTCPServer是否可以实现网络传送?
delphi的IdTCPClient和IdTCPServer是否可以实现<em>网络</em>传送?rn我从网上搜了个例子,可以实现局域网中的文件传送。rn但是<em>网络</em>中传送的时候就不知道IdTCPClient怎么获取服务器的IP地址??
有关 IdTCPServer/IdTCPClient 收发消息的问题 ???
目的:rnServer程序为多线程,当Client连接到Server时在Server上维护了一个Client连接信息列表。Server中的线程中的任务完成后需要通过Server通知给各个<em>客户端</em>。rnrnServer程序 : IdTCPServer rnClient程序 : IdTCPClientrn方法一:某线程任务完成后就遍历Client列表来发消息通知。实际测试中发现经常会阻塞主线程。rnrnServer程序 : IdTCPServer+IdTCPClientrnClient程序 : IdTCPClientrn方法二:在Server上也放了一个IdTCPClient,线程任务完成后,通过IdTCPClient发消息给IdTCPServer,然后再遍历Client列表通知。感觉这样使用有些怪。rnrn请教大侠们给指点些高效合理的实现方法。rn
关于idtcpserveridtcpclient的超级菜鸟问题
服务端程序(含有<em>idtcpserver</em>控间)和<em>客户端</em>程序(含有<em>idtcpclient</em>控间)是否是两个.exe,且分别安装在服务器和<em>客户端</em>。
如何用idTcpClient\idTcpServer实现P2P.
如何实现,网上只找到采用UDP协议的....有用TCP的吗?
IDTCPServer与IDTCPClient控件是不是基于socket服务的
如题
IdTCPServer 怎么接收来自IdTCPClient端的文件
IdTCPServer 怎么接收来自IdTCPClient端的文件rn最好给个例 子,谢谢了
关于用idTcpServer和idTcpClient传送文件的问题
请问谁有这方面的源代码呀?哪位有的话给我发一个,谢谢啦!!!rn另外,我在大富翁上看到这方面的资料都有这样一个符号是什么意思呀?“&gt”rnrn
IdTCPClient与IdTCPServer怎么实现相互发消息?
现在我有两个程序:一个是放有IdTCPServer的服务器端,另一个是放有IdTCPClient的<em>客户端</em>,现在可以服务器向IdTCPClient端发,但是不知道IdTCPClient怎么向服务器发,大家帮帮忙!rn另外,我有多台电脑同时都装了IdTCPClient<em>客户端</em>程序,要在它们之间相互发送信息怎么做,发送的时候怎么判断是谁发给谁的,不要我只给一个人发,其他的电脑也都能看点见,给点方法我,谢谢!
关于IdTCPServer和IdTCPClient的基本问题,请赐教!
服务段程序用IdTCPServer组件,<em>客户端</em>用IdTCPClient组件(注:有多个<em>客户端</em>同时工作,服务端采用多线程连接),请问:怎样才能做到当<em>客户端</em>正常或者非正常的掉线,服务端都有相应的相应?
Web Api 的 路由机制
ASP.NET Web API 是一种框架,用于轻松构建可以访问多种<em>客户端</em>(包括浏览器和移动设备)的 HTTP 服务。 ASP.NET Web API 是一种用于在 .NET Framework 上构建 RESTful 应用程序的理想平台。所以我们要想学习web api 就要去了解它的路由机制。MVC和web api的路由机制的主要区别是web api 使用的是http 方法而不是url 的路径。本
IE6绿色版(可与IE7、IE8共存)下载
不想出分的到这里下载:http://www.codepub.com/software/view-software-14679.html#down 中文版的IE7/IE8正式版已经出来很久了,相信很多人都已经被好奇心征服了吧?用了IE7一段时间之后,是否都会发现它在打开某些页面时会有这样那样的小问题(网页兼容性问题)?而如果正好是你一直关注的网站在IE7\IE8下不正常了,是否会想起IE6的好时光呢? 如果你自己是做网页设计的,当然也希望只在自己的电脑上就能看清楚页面在IE6、IE7、IE8、FireFox等浏览器下的效果啦~~可是,微软偏偏要我们割爱,安装了IE7后,IE6也在我们的电脑中 相关下载链接:[url=//download.csdn.net/download/cndnjing276604981/2136708?utm_source=bbsseo]//download.csdn.net/download/cndnjing276604981/2136708?utm_source=bbsseo[/url]
C#实验室管理系统 CV2005+SQL2000编写下载
C#实验室管理系统 CV2005+SQL2000编写 相关下载链接:[url=//download.csdn.net/download/q410757796/3293359?utm_source=bbsseo]//download.csdn.net/download/q410757796/3293359?utm_source=bbsseo[/url]
FDF Design for Linear Systems_09Aug_Thesis下载
FDF Design for Linear Systems_09Aug_Thesis 相关下载链接:[url=//download.csdn.net/download/yuxiangxx_1110/3302193?utm_source=bbsseo]//download.csdn.net/download/yuxiangxx_1110/3302193?utm_source=bbsseo[/url]
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 在线学python 大数据培训在线
我们是很有底线的