Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Ftp Dosya Gönderme İşlemi Hakkında
#1
procedure Tfmain.btnftpgonderClick(Sender: TObject);
var oldfile,newfile:string;
begin
 try
 FTP1.Disconnect;
 oldfile:= qloginbackuptransfersurucu.Text+qloginbackuptransferdosyaadi.Text+'\'+islemkodu+'.zip';
 newfile:= islemkodu+'.zip';
 FTP1.host := '**';  
 FTP1.username := '**';
 FTP1.password := '**';
 FTP1.port := 21;
 FTP1.Connect;
 if FTP1.Connected  = true then
   begin
   memo.Lines.Add(DateTimeToStr(now)+' '+islemkodu+' Sunucuya Bağlandı...');
   FTP1.Put(oldfile , newfile);
   memo.Lines.Add(DateTimeToStr(now)+' '+islemkodu+' Sunucuya Dosya Aktarıldı...');
   end;
 except
 on E : Exception do
   begin
   ShowMessage('Exception = '+E.Message);
   end;
 end;
end;


Merhabalar, yukardaki kodlarla resim veya text dosyasını sunucuya gönderebiliyorum ancak zipli 50-100 mb veya 2-3 gb dosyaları gönderiyor görünüyor. Ancak sunucudan download edip zipden çıkarırken hata veriyor. Birden fazla metot denedim hepsinde aynı hatayı aldım.
Cevapla
#2
FTP Kitaplık Ayarlarını Kontrol Edin, Kullandığınız FTP bileşeninin büyük dosyaları desteklediğinden ve gerekli ayarların yapılandırıldığından emin olun. Bazı bileşenlerin dosya boyutu veya arabellek boyutlarında sınırlamaları olabilir.

İşte kodunuzun birkaç ayarlamayla güncellenmiş hali:

procedure Tfmain.btnftpgonderClick(Sender: TObject);
var
oldfile, newfile: string;
begin
try
FTP1.Disconnect;
oldfile := qloginbackuptransfersurucu.Text + qloginbackuptransferdosyaadi.Text + '\' + islemkodu + '.zip';
newfile := islemkodu + '.zip';
FTP1.Host := '**';
FTP1.Username := '**';
FTP1.Password := '**';
FTP1.Port := 21;

FTP1.Connect;

if FTP1.Connected then
begin
memo.Lines.Add(DateTimeToStr(now) + ' ' + islemkodu + ' Sunucuya Bağlandı...');

// Optional: Increase buffer size if your FTP component supports it
// FTP1.BufferSize := 8192; // Example value, adjust as needed

FTP1.Put(oldfile, newfile);
memo.Lines.Add(DateTimeToStr(now) + ' ' + islemkodu + ' Sunucuya Dosya Aktarıldı...');
end;
except
on E: Exception do
begin
ShowMessage('Exception = ' + E.Message);
end;
end;
end;
Cevapla
#3
(10-09-2024, Saat: 12:21)mirellehgf Adlı Kullanıcıdan Alıntı: FTP Kitaplık Ayarlarını Kontrol Edin, Kullandığınız FTP bileşeninin büyük dosyaları desteklediğinden ve gerekli ayarların yapılandırıldığından emin olun. Bazı bileşenlerin dosya boyutu veya arabellek boyutlarında sınırlamaları olabilir.

İşte kodunuzun birkaç ayarlamayla güncellenmiş hali:

procedure Tfmain.btnftpgonderClick(Sender: TObject);
var
 oldfile, newfile: string;
begin
 try
   FTP1.Disconnect;
   oldfile := qloginbackuptransfersurucu.Text + qloginbackuptransferdosyaadi.Text + '\' + islemkodu + '.zip';
   newfile := islemkodu + '.zip';
   FTP1.Host := '**';  
   FTP1.Username := '**';
   FTP1.Password := '**';
   FTP1.Port := 21;
   
   FTP1.Connect;
   
   if FTP1.Connected then
   begin
     memo.Lines.Add(DateTimeToStr(now) + ' ' + islemkodu + ' Sunucuya Bağlandı...');
     
     // Optional: Increase buffer size if your FTP component supports it
     // FTP1.BufferSize := 8192; // Example value, adjust as needed
     
     FTP1.Put(oldfile, newfile);
     memo.Lines.Add(DateTimeToStr(now) + ' ' + islemkodu + ' Sunucuya Dosya Aktarıldı...');
   end;
 except
   on E: Exception do
   begin
     ShowMessage('Exception = ' + E.Message);
   end;
 end;
end;

Kullandığım FTP componentinin özelliklerinde buffersize bulunmuyor. FTP componentinin kütüphanesi dclindyprotocols240.bpl kullanılıyor. Siz Indy bileşeninin hangi sürümünü kullanıyorsunuz?
Cevapla
#4
sftp kulanıyorum..

https://github.com/pult/libssh2_delphi/
// Bilgi paylaştıkça çoğalır.. 

Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  unigui formlarını ayrı dosya da tutmak mdagli2003 2 535 09-09-2024, Saat: 19:01
Son Yorum: Master_Crazy
  Sorgu işlemi sonrası hata apachi2006 6 1.949 07-09-2024, Saat: 01:36
Son Yorum: apachi2006
  stylesheet.css dosyası edit işlemi sorunu bünyamin68 6 2.590 27-09-2021, Saat: 10:05
Son Yorum: engerex
  Unigui ile direk print işlemi apachi2006 3 1.991 01-07-2021, Saat: 15:00
Son Yorum: apachi2006
  Unigui ile dbgrid nesnesinde sort işlemi apachi2006 3 1.942 17-02-2021, Saat: 22:39
Son Yorum: apachi2006



Konuyu Okuyanlar: 1 Ziyaretçi