download ettirme hakkında.

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
CemErgun
Üye
Mesajlar: 91
Kayıt: 05 May 2009 11:31
Konum: antalya

download ettirme hakkında.

Mesaj gönderen CemErgun »

merhabalar,

ben şusıra bir download programıyla uğraşıyorum şuana kadar çok güzel gidiyorda bir problem var.


bir dosyayı en sağlıklı biçimde nasıl download ettirebilirim? (pause olucak, byte kaybı olmıcak vsvs.. üstüne devam etcek vsvsvs...)

bunu yaptım diyelim,

indirilen dosya : test.rar
toplam boyut : 1000
indirilen boyut : 234
kalan boyut : 766
indirme hızı : 35 kb

mesela burda indirilen dosya toplam boyut indirilen boyut kalan boyut bunları yapabilirim gibi gözüküyor fakat indirme hızını nasıl yapacağız onu çözebilmiş değilim..

yardımcı olursanız sevinirim, şimdiden teşekkürler! herkese hayırlı geceler, kandiliniz mubarek olsun..
procedure TForm1.FormCreate(Sender: TObject);
begin
halt;
end;
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Re: download ettirme hakkında.

Mesaj gönderen vkamadan »

Merhaba pratik olarak aklıma gelen ilk şey , örneğin 3 saniyede bir indirilen boyuttan kalan boyutu çıkartıp 3 e bölüp KB ye çevirirseniz yaklaşık saniyedeki indirme hızını bulmuş olursunuz.
Kolay gelsin.
Volkan KAMADAN
www.polisoft.com.tr
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: download ettirme hakkında.

Mesaj gönderen conari »

ortalama hız =indirilen boyut / (şimdiki zaman -başlangıç zamanı )
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
CemErgun
Üye
Mesajlar: 91
Kayıt: 05 May 2009 11:31
Konum: antalya

Re: download ettirme hakkında.

Mesaj gönderen CemErgun »

hmm teşekkürler. peki


bir dosyayı en sağlıklı biçimde nasıl download ettirebilirim? (pause olucak, byte kaybı olmıcak vsvs.. üstüne devam etcek vsvsvs...)

bunu nasıl yapabilirim?

idftp ile yapabiliyorum gayet sağlıklı fakat cheat engine gibi programlarla ftp şifresi falanda gözüküyor oyüzden bunu kullanmak istemiyorum. yardımcı olabklceklere teşekkürler.
procedure TForm1.FormCreate(Sender: TObject);
begin
halt;
end;
khanco
Üye
Mesajlar: 226
Kayıt: 01 Eki 2007 04:39
Konum: İzmir
İletişim:

Re: download ettirme hakkında.

Mesaj gönderen khanco »

http den indirsen ftp şifresi kullanmadan
Kullanıcı avatarı
CemErgun
Üye
Mesajlar: 91
Kayıt: 05 May 2009 11:31
Konum: antalya

Re: download ettirme hakkında.

Mesaj gönderen CemErgun »

nasıl?
procedure TForm1.FormCreate(Sender: TObject);
begin
halt;
end;
fox
Üye
Mesajlar: 78
Kayıt: 24 Nis 2006 08:28

Re: download ettirme hakkında.

Mesaj gönderen fox »

Socket olarak indirme yapabilirsin mesela bağlandıktan sonra 100 byten devam et diyecek veya nerede kaldıysa oradan devam etme gibi

bunu nasıl yapcam dersen wininet ile yapabilirsin derim nasıl kodlayıcam dersen

Kod: Tümünü seç

function DownloadFile(
    const url: string;
    const destinationFileName: string): boolean;
var
  hInet: HINTERNET;
  hFile: HINTERNET;
  localFile: File;
  buffer: array[1..1024] of byte;
  bytesRead: DWORD;
begin
  result := False;
  hInet := InternetOpen(PChar(application.title),
    INTERNET_OPEN_TYPE_PRECONFIG,nil,nil,0);
  hFile := InternetOpenURL(hInet,PChar(url),nil,0,0,0);
  if Assigned(hFile) then
  begin
    AssignFile(localFile,destinationFileName);
    Rewrite(localFile,1);
    repeat
      InternetReadFile(hFile,@buffer,SizeOf(buffer),bytesRead);
      BlockWrite(localFile,buffer,bytesRead);
    until bytesRead = 0;
    CloseFile(localFile);
    result := true;
    InternetCloseHandle(hFile);
  end;
  InternetCloseHandle(hInet);
end;
Kullanımı

Kod: Tümünü seç

if DownloadFile(
    'http://www.cryer.co.uk/index.htm',
    'c:\temp\index.htm')
then
  ShowMessage('Success')
else
  ShowMessage('Failed to download file');

Tabi bu kodu biraz kendine uyarlaman lazım repeat until içine bir boolean tipinde değer koyup pause işini yönetmek gibi
Cevapla