Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Backup Programm (https://www.delphipraxis.net/112294-backup-programm.html)

N30N 18. Apr 2008 09:22


Backup Programm
 
Hi,

Ich wollte ein kleines Backup Programm für mich schreiben. Es soll einfach nur den kompletten Inhalt des Ordners "Dokumente und Einstellungen\User" auf ein anderes lokales Laufwerk d: schreiben. Es sollen allerdings nur neue Dateien kopiert werden.

Dazu hab ich schonmal folgenden Code rausgesucht:

Delphi-Quellcode:
function CopyFileEx(const ASource, ADest: String;
 ARenameCheck: boolean = false): boolean;
var
  sh: TSHFileOpStruct;
begin
  sh.Wnd := Application.Handle;
  sh.wFunc := FO_COPY;
  sh.pFrom := PChar(ASource + #0);
  sh.pTo := PChar(ADest + #0);
  sh.fFlags := fof_Silent or fof_MultiDestFiles;
  if ARenameCheck then
    sh.fFlags := sh.fFlags or fof_RenameOnCollision;
  Result:=ShFileOperation(sh)=0;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  CopyFileEx('C:\dokumente und einstellungen\User\eigene dateien','d:\Backup\User');
end;
Hier hab ich den Code gefunden


Okay, das Kopieren funktioniert jetzt, allerdings will ich das ganze ohne weitere Benutzereingabe automatisieren. Wenn eine Datei bereits vorhanden ist, wird nämlich abgefragt, ob sie überschrieben werden soll. Zusätzlich will ich, dass eine im Programm eingebaute Progressbar den Fortschritt anzeigt. Bereits vorhandene Dateien sollen überschrieben werden.

Wie stell ich das an? :)

Danke schonmal :)

RavenIV 18. Apr 2008 09:31

Re: Backup Programm
 
Bei ShFileOperation kann man verschiedene Flags angeben.
Eines dieser Flags ist für das Überschreiben zuständig.

Ein Bisschen Forum-Suche oder Google oder Delphi-Hilfe.

P.S. Es hilft Dir nicht weiter, wenn Du irgendwo Codestücke zusammensuchst und sie dann nicht verstehen willst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:54 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