procedure TFormServer.IdTCPServerSendExecute(AThread: TIdPeerThread); var RecevFileName:string; ReadFile:TMemoryStream; begin with AThread.Connection do begin while Connected do begin ReadFile:=TMemoryStream.Create;//创建一个TMemoryStram对象 try RecevFileName:=ReadLn;//从客户端获得路径和文件名 ReadStream(ReadFile,-1,True);//以流模式从客户端获得文件内容,参数分别是ReadFile表示流对象,-1表示一直读取直到对方断开,True表示在NT操作系统下提高性能,对9x无效 ReadFile.Seek(0,soFromBeginning);//定位流指针到开始 ReadFile.SaveToFile(ExtractFilePath+ExtractFileName(RecevFileName));//把流中的内容保存到文件中去 finally Disconnect;//断开连接 ReadFile.Free;//释放流对象 end; end; end; end;