AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dateien auf USB-Stick kopieren

Ein Thema von Kharlanki · begonnen am 31. Okt 2009 · letzter Beitrag vom 2. Nov 2009
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: Dateien auf USB-Stick kopieren

  Alt 1. Nov 2009, 16:46
Ich war bei dem Begriff "mp3-Player" immer von Software ausgegangen. Nun gut, kann man die Dateien nicht irgendwie nach dem Namen/Erstellungs- oder Änderungsdatum oder so sortieren?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Kharlanki

Registriert seit: 9. Jul 2003
Ort: Düsseldorf
50 Beiträge
 
#12

Re: Dateien auf USB-Stick kopieren

  Alt 1. Nov 2009, 16:52
Nein, kann man leider nicht. Der ist da recht simple gehalten. Bin schon froh, dass der ueberhaupt nen Play-Knopf hat.
Gruss,
Matthias

  Mit Zitat antworten Zitat
invalid_operation
(Gast)

n/a Beiträge
 
#13

Re: Dateien auf USB-Stick kopieren

  Alt 1. Nov 2009, 18:05
Falls die mp3-Dateien irgendwo auf der Festplatte sind, sollte sich das Problem von Kharlanki wohl lösen lassen, oder?

Notfalls muss er halt alles von seinem Billigheimer löschen! Vorher aber auf die Festplatte zurückkopieren

Auf der Festplatte dann
- die Dateien zur richtigen Reihenfolge umbenennen (mit führenden Nullen in den Dateinamen!?)
- den Dateien aufgrund der führenden Nullen einen passenden TimeStamp verpassen
- die Dateien aufgrund des Timestamps in aufsteigender oder absteigender Reihenfolge auf den MP3-Payer kopieren, wobei jeder neue Kopiervorgang auf den Erfolg des letzten Kopiervorgangs wartet

Sollte sich doch problemlos mit etwas Delphi-Kenntnissen machen lassen, oder?

Vermutlich wäre ein neuer MP3-Player wohl billiger als das zeitaufwändige MP3-Player-Explorer-Delphi-Herumwursteln...

Ansonsten: Wer billig kauft, kauft doppelt!!!

Bei der Hardware sparen, wo es nur geht, denn die eigene Freizeit ist ja nichts wert. Und wozu gibt es hilfsbereite Foren? Deren Freizeit ist auch nichts wert, schließlich haben ja fast alle eine Flatrate...

Sorry für eventuelle Polemik!
  Mit Zitat antworten Zitat
Kharlanki

Registriert seit: 9. Jul 2003
Ort: Düsseldorf
50 Beiträge
 
#14

Re: Dateien auf USB-Stick kopieren

  Alt 1. Nov 2009, 19:36
Da es sich nur um Hoerbuecher handelt, die eh staendig ausgetauscht werden, muss ich da nix sichern und mit fuehrenden Timestamps und passenden Nullen rumwurschteln.

Zitat von invalid_operation:
Vermutlich wäre ein neuer MP3-Player wohl billiger als das zeitaufwändige MP3-Player-Explorer-Delphi-Herumwursteln...
Dann wuerde mir aber eine Gelegenheit entgehen, mich wieder mit Delphi zu befassen und zu lernen.

Zitat von invalid_operation:
Ansonsten: Wer billig kauft, kauft doppelt!!!
Ich kaufe ja nicht doppelt, das ist doch gerade dein Vorschlag. Ich bin zufrieden mit dem Ding. Macht genau das, was er soll: MP3 abspielen.

Zitat von invalid_operation:
Sorry für eventuelle Polemik!
Macht nix, kann jedem mal passieren.
Gruss,
Matthias

  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#15

Re: Dateien auf USB-Stick kopieren

  Alt 2. Nov 2009, 10:32
Hallo Kharlanki,

um einmal zur Ausgangsfragestellung zurück zu kommen,
buffersize := 10000; ist ja nun wirklich ein wenig mickrig.
buffersize := $FFFF; kommt da schon wesentlich besser.

das "copyfrom" erspart Dir zwar etwas Tipparbeit, ist aber nicht so optimal gelöst, da bei jedem Schleifendurchlauf die buffergröße angepasst resp. überprüft wird.

Nebenbei, warum führst Du das "closefile" nicht auch im Fehlerfalle durch?

Mein Vorschlag für die Kopierroutine:
Delphi-Quellcode:
repeat
  gelesen:=s.read(buffer,buffersize) ;
  gelesen:=t.write(buffer,gelesen) ;
  // -- hier den progressbar ansteuern;
until gelesen<>buffersize;
Gruß
K-H
  Mit Zitat antworten Zitat
Kharlanki

Registriert seit: 9. Jul 2003
Ort: Düsseldorf
50 Beiträge
 
#16

Re: Dateien auf USB-Stick kopieren

  Alt 2. Nov 2009, 10:46
Ich nutze jetzt CopyFileEx mit ProgressBar und es lueppt. Wenn ich mehrere Files nacheinander kopiere, wird es vom Player auch in der richtigen Reihenfolge angezeigt.

Danke an alle fuer die Hilfe!

P.S. @Luckie:
Du hast in deinem Snippet ist ein kleiner Fehler drin. Du hast in TForm1.WndProc bei
Delphi-Quellcode:
    CEXM_MAXBYTES:
      begin
        ProgressBar1.Max := (Msg.LParam) shl 32) + Msg.WParam;
      end;
ein (Int64 vergessen.
Gruss,
Matthias

  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.153 Beiträge
 
Delphi 12 Athens
 
#17

Re: Dateien auf USB-Stick kopieren

  Alt 2. Nov 2009, 11:08
macht nix ... die ProgressBar kennt eh nur Integer
Man kann das höherwertige in diesem Fall also irgnorieren
ProgressBar1.Max := Msg.WParam; oder man Skaliert die Werte für .Max und .Position so, daß sie in einen Integer reinpassen
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#18

Re: Dateien auf USB-Stick kopieren

  Alt 2. Nov 2009, 11:15
Wo habe ich da das vergessen? Bitte Quellcode korrigieren, damit ich das ändenr kann.

Zitat von himitsu:
macht nix ... die ProgressBar kennt eh nur Integer
Ja, aber eventuell möchte man die Werte wo anders nutzen. Deswegen hätte ich das schon gerne korrekt.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von mcmichael
mcmichael

Registriert seit: 5. Jun 2008
Ort: Bremen
79 Beiträge
 
Delphi 10.1 Berlin Professional
 
#19

Re: Dateien auf USB-Stick kopieren (ein praktischer Tipp)

  Alt 2. Nov 2009, 11:22
ich möchte ja keinem den Programmierspaß verderben, aber
wenn das Kernproblem die Reihenfolge der Dateien beim Kopieren ist,
dann geht's einfacher:

- Im Explorer alle Dateien über das gewünschte Kriterium sortieren (z.B. Name oder Änderungsdatum)
- alle Daten, die kopiert werden sollen markieren.
- dann den Mauscursor über der ersten zu kopierenden Datei positionieren... (WICHTIG!)
- ...und per Drag&Drop in das Zielverzeichnis ziehen.
- Jetzt kommen die Dateien in der gewünschten Reihenfolge an.

Ich habe ein Autoradio, das die Hörbücher nach diesem Kriterium sortiert und
habe diese Kopiermethode irgendwann irgendwo entdeckt.

Viel Spaß dabei,
Michael
  Mit Zitat antworten Zitat
Kharlanki

Registriert seit: 9. Jul 2003
Ort: Düsseldorf
50 Beiträge
 
#20

Re: Dateien auf USB-Stick kopieren

  Alt 2. Nov 2009, 12:11
Zitat von Luckie:
Wo habe ich da das vergessen? Bitte Quellcode korrigieren, damit ich das ändenr kann.
Hab ich doch geschrieben.
In diesem Snippet hier: http://www.michael-puff.de/Developer...pyFileEx.shtml
Dort in der Prozedur WndProc in der Case-Anweisung:

Delphi-Quellcode:
CEXM_MAXBYTES:
      begin
        ProgressBar1.Max := (Msg.LParam) shl 32) + Msg.WParam;
      end;
Das muss lauten:
        ProgressBar1.Max := (Int64(Msg.LParam) shl 32) + Msg.WParam;
Zitat von mcmichael:
ich möchte ja keinem den Programmierspaß verderben, aber
wenn das Kernproblem die Reihenfolge der Dateien beim Kopieren ist,
dann geht's einfacher:

- dann den Mauscursor über der ersten zu kopierenden Datei positionieren... (WICHTIG!)
Das reicht?! Muss ich gleich mal ausprobieren... [edit] Das klappt ja wirklich! [/edit]

Vielleicht fallen mir mit der Zeit ja noch weitere Features ein. Dann war das Tool nicht nur fuer die richtige Reihenfolge gut.
Gruss,
Matthias

  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz