![]() |
AW: Exaktes Filecopy für Windows und Android
Zitat:
|
AW: Exaktes Filecopy für Windows und Android
Genau diesen Eindruck hatte ich auch, aber ich kann es halt nicht nachmachen.
Danke für Aufklärung! Ps: Mir fehlen da auch Grundlagenkenntnisse für non-Windows und was da für Attribute/Datumstempel tatsächlich existieren/berücksichtigt werden müssen, an TE bitte vorher informieren, meine Basics zeigen nur Windows Möglichkeiten um was so genau wie möglich dem original nachzuempfinden. PPs: Dieses Thema gehört nicht nach WinApi :-] |
AW: Exaktes Filecopy für Windows und Android
Inzwischen war Post #5 entstanden, klingt hervorragend!
Erst kopieren und dann per
Delphi-Quellcode:
die gewünschten Angaben anpassen, würde auch unter Android compilierbar sein, aber:
...
sor := 'c:\tmp\Neu.txt'; des := 'c:\tmp\Neu_2.txt'; TFile.Copy(sor, des, true); dt := TFile.GetCreationTime(sor); TFile.SetCreationTime(des, dt); dt := TFile.GetCreationTime(des); TFile.SetCreationTimeUtc(des, dt); dt := TFile.GetLastAccessTime(sor); TFile.SetLastAccessTime(des, dt); dt := TFile.GetLastWriteTime(sor); TFile.SetLastAccessTimeUtc(des, dt); dt :=TFile.GetLastWriteTime(sor); TFile.SetLastWriteTime(des,dt); dt:=TFile.GetLastWriteTimeUtc(sor); tfile.SetLastWriteTimeUtc(des,dt); Ich erstelle die Datei Neu.txt im Explorer, deren Anderungsdatum ist heute 14:22 (stimmt), das Erstelldatum aber heute 14:14 ???? Die kopierte Datei hat das Änderungsdatum wie die Originaldatei, als Erstelldatum aber 15:14 (in der Zukunft!) Ich krieg die Krise! Warum das denn nun? Ciao Stefan |
AW: Exaktes Filecopy für Windows und Android
Delphi-Quellcode:
im vorigen posting war ein Vertipper per copy/paste, die Datumsangaben sind nun identisch für beide Dateien, unklar ist aber warum die Datei 8 Minuten vor ihrer Erzeugung erstellt wurde!
dt := TFile.GetCreationTime(sor);
TFile.SetCreationTime(des, dt); dt := TFile.GetCreationTimeUtc(des); TFile.SetCreationTimeUtc(des, dt); dt := TFile.GetLastAccessTime(sor); TFile.SetLastAccessTime(des, dt); dt := TFile.GetLastAccessTimeUtc(sor); TFile.SetLastAccessTimeUtc(des, dt); dt := TFile.GetLastAccessTime(sor); TFile.SetLastAccessTime(des, dt); dt := TFile.GetLastAccessTimeUtc(sor); TFile.SetLastAccessTimeUtc(des, dt); dt :=TFile.GetLastWriteTime(sor); TFile.SetLastWriteTime(des,dt); dt:=TFile.GetLastWriteTimeUtc(sor); tfile.SetLastWriteTimeUtc(des,dt); Ciao Stefan |
AW: Exaktes Filecopy für Windows und Android
Schreib dir am besten einen Wrapper für all das oder so. Auf die Existenz der Quelldatei muss geprüft werden sonst kracht es.
|
AW: Exaktes Filecopy für Windows und Android
Lass mal unter Windows das ganze UTC gedöns raus. Bei mir klappt es.
|
Dieses Thema wurde am "30. Nov 2018, 18:56 Uhr" von "Luckie" aus dem Forum "Win32/Win64 API (native code)" in das Forum "Cross-Platform-Entwicklung" verschoben.
|
AW: Exaktes Filecopy für Windows und Android
Zitat:
Im Gegensatz dazu besitzt Windows beliebig komplexe ACLs. Jede Datei kann theoretisch dutzende verschiedene Rechte haben, jeweils mit anderen Nutzern oder Gruppen, namentlich oder per Konstante, mit oder ohne Vererbung von übergeordneten Rechte. Jetzt wundert mich auch nicht mehr, warum Du so gegen Lazarus mobbst ;) Ich weiß leider nicht, wie das unter Delphi geht, aber unter FreePascal ist das simpel: ![]() ![]() Und schon wären die Berechtigungen kopiert. Mit Windows & ACLs dagegen kann man das exakte Kopieren von Rechten nicht einmal nur auf die Datei bezogen definieren (was auch Vorteile hat). |
AW: Exaktes Filecopy für Windows und Android
Ne, gegen Lazurus mobbe ich nur, weil die IDE nicht zeitgemäß ist und das schon lange nicht mehr.
Bei Lazurus habe ich den Eindruck Wo viele Hände dran arbeiten, entsteht viel Chaos Vielleicht gibt es in einem Jahr oder so ja endlich den Android Compiler für die Community-Edition. Das wäre ein Traum. |
AW: Exaktes Filecopy für Windows und Android
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:11 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