Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Kopieren der Dateien die sich verändert haben (https://www.delphipraxis.net/9713-kopieren-der-dateien-die-sich-veraendert-haben.html)

Christian Seehase 9. Okt 2003 13:35

Re: Kopieren der Dateien die sich verändert haben
 
Moin Tonic,

leider hat Deine Lösung nicht zu unterschätzende Nachteile:
Weder die Datei, noch die Sicherheitsattribute werden mitkopiert.

Bei CopyFile sind's dann nur noch die Sicherheitsattribute.

Ausserdem kann man mit SHFileOperation durchaus die Dateien mit einem neuen Namen kopieren.
Als Flag wird zusätzlich FOF_MULTIDESTFILES angegeben, und im Parameter pTo wird eine Liste der neuen Namen angegeben.
Diese Liste muss natürlich genauso lang sein, wie die in pFrom.

Robert Marquardt 9. Okt 2003 13:59

Re: Kopieren der Dateien die sich verändert haben
 
Warum eigentlich nicht mit einfachen Funktionen?
Man erstellt erst aus dem Quell- und Zielverzeichnis je eine Liste der Dateien.
Die Listen abgleichen. Dateien im Quellverzeichnis, die nicht im Zielverzeichnis sind werden kopiert,
da sie neu sind.
Bei den Dateien die in beiden Listen sind das Modification Date vergleichen. Ist das der
Quelldatei groesser dann wurde sie veraendert und muss kopiert werden.
Die Jedi Code Library http://sourceforge.net/projects/jcl hat dazu die Abfragefunktionen.

Zum Kopieren kann man CopyFile benutzen.
Die Sicherheitsattribute sollte man kopieren koennen indem man erst die Zieldatei mit
einem CreateFile anlegt und dabei die Quelldatei als Template angibt. Dann gleich wieder
zumachen und CopyFile sollte dann die Sicherheitsattribute unbeschaedigt lassen.
Noetigenfalls erst die Zieldatei loeschen, um eventuell geaenderte Sicherheitsattribute
zu kopieren.

Tonic1024 10. Okt 2003 12:47

Re: Kopieren der Dateien die sich verändert haben
 
Moin...

[Persönliche Meinung]
Das mit den Rechten ist ja Okay... Aber die sollte man, wenns wirklich drauf an kommt, eh separat prüfen. Es ist ja durchaus möglich, dass das Zielverzeichnis schon Rechte hat (oder eben nicht hat) die im Quellverzeichnis gesetzt sind (oder eben nicht). Es kommt halt drauf an (wie immer eigentlich) was man damit machen will...

Ich bin mit dieser Methode bislang ganz gut gefahren und kann sie allen, Neueinsteigern wie Profis, nur empfehlen. Warum 'zig Attribute Prüfen wenn das Resultat eh egal ist. Kostet doch nur Performance.

Sicher, wenn es wichtig ist, dass nur der Admin oder Root Zugriff auf diese Datei hat (oder wer auch immer) muss man einen Weg finden das zu realisieren. Ich bin mir sicher, dass es da einen Weg gibt. Ob der dann allerdings besser als die Standard-Funktion ist muss sich dann zeigen.
[/Persönliche Meinung]


bis denne...


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:03 Uhr.
Seite 2 von 2     12   

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