![]() |
AW: Windows 7 änderungsdatum
bei der unit StrUtils meckert er rum das er die nicht finden kann.
Laut Google gab es noch keine StrUtils unter D5. |
AW: Windows 7 änderungsdatum
Das wird wohl unter Delphi 5 tatsächlich nicht gehen, allein schon, weil IncludeTrailingPathDelimiter unbekannt sein dürfte.
|
AW: Windows 7 änderungsdatum
Hallo DeddyH,
Mit deinem Code klappt alles Prima, muss mir den aber noch mal genauer anschaun, da so einige sachen dran sind die ich nicht so ganz verstehe. Danke Wofür ist die Anweisung
Delphi-Quellcode:
Und was macht das?
CopyEmptyDirs: Boolean = false
Delphi-Quellcode:
werd da nicht ganz schlau drauß
faNewAnyFileEx = $00017FFF; // erweitertes faAnyFile aus der DP
Ist es möglich eine Progressbar zu Integrieren, das ich mir den Vortschritt anzeigen lassen kann. |
AW: Windows 7 änderungsdatum
CopyEmptyDirs ist dafür da, dass man auf Wunsch auch leere Verzeichnisse kopieren kann. Und die Konstante ist lediglich eine Erweiterung für faAnyfile, welches z.B. komprimierte Dateien nicht berücksichtigt. In der erweiterten Konstanten sollten alle derzeit bekannten Dateiattribute enthalten sein.
[edit] Zur Progressbar: Das dürfte schwierig werden, da Du im Vorfeld ermitteln müsstest, wieviele Dateien tatsächlich kopiert werden müssen. Aufgrund dieses Wertes könntest Du ja erst den prozentualen Anteil des aktuellen Kopiervorganges ermitteln. Allerdings kann man natürlich eine Progressbar im Marquee-Style anzeigen, um dem Benutzer zu signalisieren, dass etwas passiert. [/edit] |
AW: Windows 7 änderungsdatum
ja so in etwa hatte ich mir das schon gedacht das das nicht so einfach geht, also werd ich im Vorfeld Die Dateianzahl ermitteln müssen.
Dürfte ja da mit den Quellcode gehen
Delphi-Quellcode:
class function TMyDaten.ErmittleArchivAttribut(Verzeichnis: String): TStringList;
var Search : TSearchRec; LVerz : String; LNamen : TStringList; begin LNamen := TStringList.Create; LVerz := Verzeichnis; if FindFirst(LVerz + '*.*', faAnyFile or faArchive, Search) = 0 then try repeat if (Search.Attr and faArchive) = faArchive then LNamen.Add(Search.Name) until FindNext(Search) <> 0; finally SysUtils.FindClose(Search); Result := LNamen; end; //LNamen.Free; end; |
AW: Windows 7 änderungsdatum
Zitat:
Erster Teil entspricht nahezu dem Code von DeddyH. Während dessen läuft wie von Ihm vorgeschlagen ein Progressbar in Marquee-Style. Nur werden hier weder Dateien kopiert noch Verzeichnisse erstellt. Es wird nur z.B. eine StringListe mit den zu kopierenden Dateien erstellt und eine StringListe mit dem evtl. zu erstellenden EmptyDirs. Im zweiten Schritt kannst du dann alle Dateien kopieren und die Verzeichnisse erstellen. Da du die Anzahl der Dateien / Verzeichnisse kennst, kannst du einen Gesamtfortschritt anzeigen. Wenn du es noch etwas besser haben willst, dann merkst du dir zusätzlich zu den Dateinamen auch noch deren Größe und passt den Gesamtfortschritt nicht nach der Anzahl der Dateien an sondern nach den zu kopierenden Bytes :-) Das wäre dann aber eher eine Kür - kann aber praktisch sein, da beim kopieren ja auch durchaus deutlich unterschiedlich große Dateien dabei sein können. Gruß, Chris |
AW: Windows 7 änderungsdatum
Genauso hatte ich mir das auch gedacht.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:27 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