Einzelnen Beitrag anzeigen

Brüggendiek

Registriert seit: 13. Dez 2002
Ort: Dortmund
275 Beiträge
 
Delphi 5 Standard
 
#37

Re: MP3-Stick Programm

  Alt 12. Feb 2004, 22:27
Hallo Matze!

Zitat von Matze:
Ich mache das leider mittels file of byte, da ich ja den Fortschritt anzeigen lasse. Mit CopyFile geht es schnell, aber halt völlig ohne Fortschritt und das finde ich nicht gut.
Hupps - meine Aussage sollte als Beispiel dienen. Konnte ja nicht ahnen, daß Du das tatsächlich so realisierts.

Vorschlag: Nehme Streams und arbeite diese in Blöcken ab.

Das mit dem Byte-File hatte ich auch mal versucht - deshalb kenne ich die Problematik. Bei mir war es allerdings ein Vergleichsprogramm. Hast Du schon mal ne volle CD-R byteweise mit den Originaldaten verglichen? Das dauert Stunden. Wie soll das denn erst bei DVDs werden

Einfach einen String mit Setlength auf eine feste Blockgröße setzen, ab Stringvar[1] den Puffer füllen. Die Leseroutine liest ein, wieviele Zeichen tatsächlich gelesen wurden. Diese Anzahl dann rausschreiben und gut ist. Als Blockgröße bitte eine "glatte Binärzahl" verwenden, also z.B. 1024 oder 4096. Die Fortschrittsanzeige kann dann ja immer noch laufen.

Nebenbei: Keine Angst vor Nullbytes! Delphi kennt die Länge eines Strings und bearbeitet das richtig. Lediglich bei Übergabe an API-Funktionen (MessageBox etc.) wird am Nullbyte abgebrochen.
Delphi-Quellcode:
s1:='Test'#0#0#0'daten';
s2:='Test';
wäre nach Windows gleich (String hört mit #0 auf), nach Delphi sind die ungleich (jedenfalls bei D5Std).

Gruß

Dietmar Brüggendiek
Dietmar Brüggendiek
  Mit Zitat antworten Zitat