Advertisement
Guest User

Untitled

a guest
Jan 17th, 2016
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.28 KB | None | 0 0
  1. Function exista_fisier_pe_ftp_nonvizual(nume_fisier_cautat,ftp_host,ftp_port,ftp_username,ftp_password,ftp_directory:string;memo_loguri:Tmemo) :Boolean;
  2. var l:TStringList;
  3. indyftp:Tidftp;
  4. Freq, StartCount, StopCount: Int64;
  5. TimingSeconds: real;
  6.  
  7. begin
  8.  
  9. dateseparator:='-';
  10.  
  11.  
  12. {verific daca serverul ftp este ONLINE}
  13. if not IS_FTP_ONLINE(ftp_username,ftp_password,ftp_host) then showmessage(datetimetostr(now)+' - serverul "'+ftp_host+'" este OFFLINE sau datele de conectare sunt incorecte!') else
  14.  
  15. begin
  16.  
  17. memo_loguri.Lines.Add(#13#10+'=====> START CAUTARE FISIER PE SERVER FTP <====='+#13#10);
  18.  
  19. { START VERIFICARE VITEZA DE EXECUTIE }
  20. QueryPerformanceFrequency(Freq);
  21. QueryPerformanceCounter(StartCount);
  22.  
  23.  
  24.  
  25. indyftp:=Tidftp.create(nil);
  26. l:=tstringlist.create;
  27.  
  28. indyftp.Host:=ftp_host;
  29. indyftp.Port:=strtoint(ftp_port);
  30. indyftp.username:=ftp_username;
  31. indyftp.password:=ftp_password;
  32. indyftp.Passive:=true;
  33. indyftp.Connect;
  34.  
  35. if indyftp.connected then
  36. begin
  37. memo_loguri.Lines.Add(datetimetostr(now)+' - conectat cu succes la "'+indyftp.Host+'" portul '+inttostr(indyftp.Port));
  38. memo_loguri.Lines.add(datetimetostr(now)+' - detectare sistem de operare server ftp: "'+indyftp.SystemDesc+'"');
  39.  
  40. indyftp.ChangeDir(ftp_directory);
  41.  
  42. memo_loguri.Lines.add(datetimetostr(now)+' - accesez directorul "'+ftp_directory+'"');
  43.  
  44. try
  45. {listez toate fisierele de pe ftp}
  46. indyftp.List(l, '', false);
  47.  
  48. if l.IndexOf(nume_fisier_cautat) > -1 then
  49. begin
  50. result:=true;
  51. memo_loguri.Lines.add(datetimetostr(now)+' - fisierul "'+nume_fisier_cautat+'" exista pe serverul ftp in directorul "'+indyftp.RetrieveCurrentDir+'" ,are dimensiunea de '+ FormatByteSize(indyFTP.Size(nume_fisier_cautat))+' si a fost incarcat pe server la data ' +datetostr(indyFTP.FileDate(nume_fisier_cautat)));
  52. end
  53. else
  54. begin
  55. result:=false;
  56. memo_loguri.Lines.add(datetimetostr(now)+' - fisierul "'+nume_fisier_cautat+'" nu exista pe serverul ftp');
  57. end;
  58.  
  59. finally
  60. l.free;
  61. end;
  62. indyftp.free;
  63.  
  64.  
  65. { STOP VERIFICARE VITEZA DE EXECUTIE }
  66. QueryPerformanceCounter(StopCount);
  67. TimingSeconds := (StopCount - StartCount) / Freq;
  68. { Display timing: ... }
  69. memo_loguri.Lines.Add(datetimetostr(now) + ' - comanda executata in: ' + formatfloat('0.00',TimingSeconds) + ' sec.'+#13#10);
  70. memo_loguri.Lines.Add('=====> STOP CAUTARE FISIER PE SERVER FTP <====='+#13#10);
  71.  
  72. end;
  73. end;
  74. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement