Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi INDY Wie viel bereits fertig? (https://www.delphipraxis.net/101993-indy-wie-viel-bereits-fertig.html)

Telefonkabel 21. Okt 2007 21:32


INDY Wie viel bereits fertig?
 
Hallo!
Ich hab schon wieder eine Frage.
Und zwar würde ich gerne INDY bei einem Dateidownload beobachten, d.h. ich möchte wissen, wie viel Indy bereits von einer Datei gedownloaded hat nach einer bestimmten Zeit.
Ich habe hier im Forum schon ein Tutorial dazu gefunden, nur kann ich doch nicht davon ausgehen, dass jeder Server zulässt, dass ich Files gesplittet downloade, oder? (das wäre doch in gewisser Weise eine Pause/Fortsetzten-Funktion und das kann man bei vielen Servern nicht machen, oder hat das damit garnichts zu tun?)

Wäre super, wenn ihr mir helfen könntet.


MfG

alias5000 21. Okt 2007 21:34

Re: INDY Wie viel bereits fertig?
 
Öhm, die OnWork* Ereignisse sind dir bekannt?

Gruß
alias5000

Telefonkabel 21. Okt 2007 21:36

Re: INDY Wie viel bereits fertig?
 
Ähm, nein.
Gibts dafür irgendwelche Tutorials?

mkinzler 21. Okt 2007 21:37

Re: INDY Wie viel bereits fertig?
 
http://www.dsdt.info/tutorials/indy/

Telefonkabel 21. Okt 2007 21:43

Re: INDY Wie viel bereits fertig?
 
Ich danke euch beiden sehr! :)

naridian 27. Nov 2007 00:36

Re: INDY Wie viel bereits fertig?
 
Gibt es eine Möglichkeit das Byte Intervall bzw. die Paketgröße in der onwork aufgerufen wird zu verkleinern? Mein Balken macht so große Sprünge.

DataCool 30. Nov 2007 10:56

Re: INDY Wie viel bereits fertig?
 
Hi,

dann stell in Deinem Balken doch Prozentwerte da ;-)

Greetz Data

inherited 30. Nov 2007 11:56

Re: INDY Wie viel bereits fertig?
 
Ich denke es geht ihm darum, dass OnWork nur etwa jede Sekunde aufgerufen wird, er möchte das aber öfter haben.

DataCool 30. Nov 2007 12:18

Re: INDY Wie viel bereits fertig?
 
Hi,

ne laut seiner Formelierung geht es Ihm eindeutig um die Größe der Schrittweite
der Progressbar !
Das Problem ist wunderbar mit Prizentwerten zu lösen.

Greetz Data

naridian 30. Nov 2007 12:48

Re: INDY Wie viel bereits fertig?
 
Meine Frage ist wie ich in diesem speziellen Fall die Schrittweite kleiner machen kann. Und da ist das Problem dass das onWork Ereignis so selten aufgerufen wird. Ich habe mal versucht mit einem Timer alle 10ms die Position des Memorystreams auszulesen. Klappt aber auch nicht, ich nehme an Indy liest den Stream immer Blockweise aus. Mir scheint es gibt keine Lösung wenn man nicht gleich an Indy rumwurschteln will.

Gru0, Moritz

SirThornberry 30. Nov 2007 13:44

Re: INDY Wie viel bereits fertig?
 
genaue Bytewerte bekommst du in dem du anstelle von OnWork eine Streamklasse nimmst wo du mitbekommst wieviel rein geschrieben wird (also einfach von gewünschter Stream-Klasse ableiten und darin bekommst du dann mit wieviel Daten geschrieben werden)

http://www.delphipraxis.net/internal...=563250#563250

naridian 30. Nov 2007 15:15

Re: INDY Wie viel bereits fertig?
 
So richtig verstehe ich das nicht. Ich habe ja bereits eines Stream in der das File liegt welches ich hochladen will. Diesen Stream übergebe ich Indy. Wie oben geschrieben habe ich bereits versucht die Streamposition auszufragen. Ich glaube Indy liest den Stream blockweise, in den selben Blöcken die danach onWork aufrufen. Damit ist also nichts gewonnen. Wo wäre also jetzt mein Vorteil mit einer eigenen Streamklasse?

static_cast 30. Nov 2007 19:52

Re: INDY Wie viel bereits fertig?
 
Änder doch einfach die SendBufferSize vom IOHandler?!

naridian 30. Nov 2007 20:46

Re: INDY Wie viel bereits fertig?
 
danke sehr! das war ne weltklasse idee ;) hatte diese eigenschaft nicht gefunden obwohl ich genau danach gesucht habe :wall:

:dp:


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz