ftp dosya indirirken program donuyor

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
seci20

ftp dosya indirirken program donuyor

Mesaj gönderen seci20 »

kolay gelsin ustalarım ftpden dosya ındırırken program donuyor bunu nasıl donmasını engellıyebılırım ? kullandıgım procedur sudur.

Kod: Tümünü seç

TPAdres := '185.123.123.123';
KaynakDizin := '/';
Name :='name1'
Pass :='pass1'
KaynakDosya :=label3.Caption;
HedefDosya := ExtractFilePath(Application.Exename) + KaynakDosya;
If FileExists(HedefDosya) AND ( MessageDlg('Hedef Dosya Mevcut, üzerine yazılsın mı ? '+#13'('+HedefDosya+')', mtInformation, [mbYes, mbCancel], 0) = mrCancel )
then EXIT
else DeleteFile(HedefDosya);
If FTPDosyaAl( IdFtp1, KaynakDosya, HedefDosya, FTPAdres, KaynakDizin, Name, Pass )
then
begin
MessageDlg('Dosya Başarıyla Alındı'+#13'('+HedefDosya+')', mtInformation, [mbok], 0) ;
end;
If FTPDosyaAl( IdFtp1, KaynakDosya, HedefDosya, FTPAdres, KaynakDizin, Name, Pass ) then else
 MessageDlg('Dosya Alınamadı'+#13'('+KaynakDosya+')', mtError, [mbok], 0);
end;
Kullanıcı avatarı
cinarbil
Üye
Mesajlar: 109
Kayıt: 18 Mar 2014 09:26

Re: ftp dosya indirirken program donuyor

Mesaj gönderen cinarbil »

Ellerine sağlık Muharrem Arman Beyin bu sitede hazırladığı kodla dosya indirebiliyorum.

Hata vermiyor bazen çok uzun dosyalarda sıkıntı oluyor.
Sizde mümkünse aynı kodla kısa txt gibi dosyalar indirin
Sorun olmaz ise daha uzun dosyalar *.rar veya *.zip dosyaları deneyin son olarak
*.exe denersiniz.

Sizin kodunuz benziyorsa idare edin

Kod: Tümünü seç

function FTPDosyaAl(SrcDosya, DesDosya:TFileName; Ftp, RemoteDir, Login, Pass : String ):Boolean;
begin // Uses IdFTP, IdFTPCommon
ftp1:=TidFTP.Create(nil);
Result := False;
Ftp1.Host := Ftp;
Ftp1.Username := Login;
Ftp1.Password := Pass;
Ftp1.Passive := True;
Ftp1.Connect;
If Ftp1.Connected then
begin
Ftp1.ChangeDir(RemoteDir);
Try
Ftp1.TransferType := ftBinary; // Uses IdFTPCommon
Ftp1.Get(SrcDosya, DesDosya, True);
Finally
Result := True;
end;
Ftp1.Quit;
end;
end;
Kullanımı

Kod: Tümünü seç

FTPAdres := 'ftp.xxxx.com.tr';
KaynakDizin := '/';
Name := 'kullanici';
Pass := 'sifre';
KaynakDosya := 'indirilecek dosya adi';
HedefDosya  := 'dosyanin kaydedileceği yer'+'dosya adi';

If FTPDosyaAl(KaynakDosya, HedefDosya, FTPAdres, KaynakDizin, Name, Pass ) then
// indirme başarılı ise yapılacak işler
 End; // 
ftp1.free;
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
seci20

Re: ftp dosya indirirken program donuyor

Mesaj gönderen seci20 »

hocam aynı kodları kullanıyoruz zaten :) ama ornegın 40 mb dosyada programda donmalar oluyor ben donmadan ındırmeye devam etmesını istiyorum
seci20

Re: ftp dosya indirirken program donuyor

Mesaj gönderen seci20 »

program donuyor işlem yapamıyorum o köşede ındırırken ben işlem yapmaya devam etmek ıstıyorum
Kullanıcı avatarı
csunguray
Üye
Mesajlar: 855
Kayıt: 09 Ara 2006 05:08
Konum: Adana
İletişim:

Re: ftp dosya indirirken program donuyor

Mesaj gönderen csunguray »

Forma bir adet TIdAntiFreeze koyun. O zaman program donmayacaktır.
C. Sunguray
csunguray at netbilisim.kom
Net Bilişim Hizmetleri

Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)
seci20

Re: ftp dosya indirirken program donuyor

Mesaj gönderen seci20 »

csunguray yazdı:Forma bir adet TIdAntiFreeze koyun. O zaman program donmayacaktır.
çok tesekkur ederım hocam dedıgınız gıbı yaptım oldu
Cevapla