Dosya Uploadına Progressbar

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
mytyuxexes
Üye
Mesajlar: 3
Kayıt: 05 Eyl 2010 11:18

Dosya Uploadına Progressbar

Mesaj gönderen mytyuxexes »

Merhabalar. Sitemin ftp sine dosya yollarken dosyayı yollama sırasında ki progress i progress bar da göstermek istiyorum . TProgressBar ı formuma ekledim ve bunun içinde upload progress ini göstermek istiyorum.
Upload kısmımın kodları bu şekilde

procedure UploadMyFile(File2Upload:pchar; targetfilename:pchar);

Kod: Tümünü seç

const
TheFtpPort=21;

begin

intopen := internetopen('iexplore',INTERNET_OPEN_TYPE_DIRECT,nil,nil,0);
intconn := internetconnect(intopen,'ftp_adresi',TheFtpPort,'kullaniciadi','sifre',INTERNET_SERVICE_FTP,INTERNET_FLAG_PASSIVE,0);
sleep(100);
ftpputfile(intconn,File2Upload,targetfilename,FTP_TRANSFER_TYPE_UNKNOWN,0);
internetclosehandle(intconn);
internetclosehandle(intopen) ;

end;

procedure TForm2.Upload1Click(Sender: TObject);

begin
uploadmyfile('test.doc', 'document/test.doc');
end;
Her türlü tavsiye için teşekkürler
RamazanG
Üye
Mesajlar: 73
Kayıt: 16 Tem 2010 03:38

Re: Dosya Uploadına Progressbar

Mesaj gönderen RamazanG »

ProgressBar ile FTP ye dosya upload

Kod: Tümünü seç

Function MyGetFileSize(const sFileName: String) : Int64;
var
oStream : TFileStream;
begin
Result := 0;

oStream := TFileStream.Create(sFileName,fmOpenRead );
result := oStream.Size;
oStream.Free;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin

idFTP1.Username := Edit4.Text;
idFTP1.Password := Edit5.Text;
idFTP1.Port := StrToInt(Edit3.Text);
idFTP1.Host := Edit2.Text;
Edit1.Enabled:=False;
Button1.Enabled:=False;

{Dosya Boyutunu Algıla}
Progressbar1.Max := MyGetFileSize(Edit1.Text);//Progressbarın çok hızlı çalışmaması için edit1 e boyutunu verdim, ama isterseniz burayı değiştirebilirsiniz


try
idFTP1.Connect(true,3000);
try
idFTP1.Put(Edit1.Text,'image1.bmp',false);
idFTP1.disconnect;
Memo1.Lines.Add(ExtractFileName(OpenDialog1.FileNa me)+'?????');
Button1.Enabled:=True;
except
Memo1.Lines.Add('???????');
end;
except
Memo1.Lines.Add('????');
end;
end;

procedure TForm1.IdFTP1Work(Sender: TObject; AWorkMode: TWorkMode;const AWorkCount: Integer);
begin
Progressbar1.Position:= AWorkCount;
Application.ProcessMessages;
end;
mytyuxexes
Üye
Mesajlar: 3
Kayıt: 05 Eyl 2010 11:18

Re: Dosya Uploadına Progressbar

Mesaj gönderen mytyuxexes »

Cvp için teşekkürler. Şöyle bir duurm var, bu kod segmentini çalıştıramadım. Çünkü benim form um active form a child olmuş bir vcl form. Ayrıca edit kullanmıyorum. Sizden ricam benim kod segmentime göre birşeyler tavsiye etmeniz. Teşekkürler
thelvaci
Kıdemli Üye
Mesajlar: 770
Kayıt: 11 Tem 2010 07:17
Konum: Istanbul
İletişim:

Re: Dosya Uploadına Progressbar

Mesaj gönderen thelvaci »

mytyuxexes yazdı:Cvp için teşekkürler. Şöyle bir duurm var, bu kod segmentini çalıştıramadım. Çünkü benim form um active form a child olmuş bir vcl form. Ayrıca edit kullanmıyorum. Sizden ricam benim kod segmentime göre birşeyler tavsiye etmeniz. Teşekkürler
Sizin kod segmentiniz ve ona uygun birşey mi ?? Ben ne demek istediğinizi anlayamadım, umarım anlayabilen olur.! Arkadaş size Indy componentlerinden TIdFTP'yi ve onun OnWork event'ini kullanmanızı önermiş, bunu değerlendirebilirsiniz.
mytyuxexes
Üye
Mesajlar: 3
Kayıt: 05 Eyl 2010 11:18

Re: Dosya Uploadına Progressbar

Mesaj gönderen mytyuxexes »

thelvaci yazdı:
mytyuxexes yazdı:Cvp için teşekkürler. Şöyle bir duurm var, bu kod segmentini çalıştıramadım. Çünkü benim form um active form a child olmuş bir vcl form. Ayrıca edit kullanmıyorum. Sizden ricam benim kod segmentime göre birşeyler tavsiye etmeniz. Teşekkürler
Sizin kod segmentiniz ve ona uygun birşey mi ?? Ben ne demek istediğinizi anlayamadım, umarım anlayabilen olur.! Arkadaş size Indy componentlerinden TIdFTP'yi ve onun OnWork event'ini kullanmanızı önermiş, bunu değerlendirebilirsiniz.
Arkadaşın önermek istedği şeyin farkındaym ama siz neden tekrar bunu açıklama ihtiyacı duydunuz?
thelvaci
Kıdemli Üye
Mesajlar: 770
Kayıt: 11 Tem 2010 07:17
Konum: Istanbul
İletişim:

Re: Dosya Uploadına Progressbar

Mesaj gönderen thelvaci »

Anladığınızı sanmadığım için cevap verme ihtiyacını hissettim. Ayrıca programcıların anlayabileceği bir dille yazarsanız daha faydalı yanıtlar alabilirsiniz.
Cevapla