当前位置: 论文资料 >> 计算机论文 >> 计算机应用 >> 使用indy的IdTcpServer,IdTcpclient传输文件
使用indy的IdTcpServer,IdTcpclient传输文件


    Delete(CmdStr,1,6);
    Password := DecryptString(CmdStr,20504); //CmdStr;
    if CompareStr(Password,'123abc')=0 then
      begin
       Memo1.Lines.Add('Login..........Accepted');
       Memo1.Lines.Add('Connected......'+DateTimeToStr(Now));
       CmdStr := '';
       AThread.Connection.WriteLn('<Accepted>');
      end
    else
      begin
       Memo1.Lines.Add('Password Wrong...Login Failure');
       AThread.Connection.WriteLn('<Failed>');
       CmdStr :='';
       AThread.Connection.Disconnect;
      end;
   end;  //4
end;

主要发送部分
procedure TTCP_Client.BtnSendClick(Sender: TObject);
var
 FStream : TFileStream;
begin
 if IdTcpClient.Connected then begin
   IdTcpClient.WriteLn('<SEND>'+ExtractFileName(FileName));
   if FileName = '' then
    MessageBox(Handle,'没有选择文件','Error',MB_OK)
   else begin
      try
      FStream := TFileStream.Create(FileName,FmOpenRead);
      FStream.Position := 0;
      FStream.Seek(0,0);
      IdTcpClient.WriteStream(FStream,true,false);
      Finally
      FStream.Free;
      IdTcpClient.Disconnect;
      end;
      Memo1.Lines.Add('Transferred OK');
     end;
 end
 else
  begin
   MessageBox(Handle,'没有连接服务器','Error',MB_Ok);
  end;
end;

上一页  [1] [2]