Datei per Befehl von A nach B kopieren??

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

monta hat geschrieben:
aber man müste noch die FileUtil einfügen, hat ja iaby auch schon gesagt, also so:

uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, Buttons, FileUtil;


Das hat aber pardox's Lösung auch nicht!?

paradox
Beiträge: 34
Registriert: Fr 15. Sep 2006, 14:33

Beitrag von paradox »

*rot werd*

sorry ich habs nicht compiliert

Quit
Beiträge: 65
Registriert: So 5. Nov 2006, 18:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Luzern

Beitrag von Quit »

Geht dies auch mit ganzen Verzeichnissen..?

Napster
Beiträge: 36
Registriert: Di 24. Okt 2006, 13:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Hemsbach
Kontaktdaten:

Beitrag von Napster »

kann ich auch ganze verzeichnisse per befehl löschen??

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Napster hat geschrieben:kann ich auch ganze verzeichnisse per befehl löschen??

@Napster @Quit

Stellt euch doch nicht so an! ;-)
Ich hab schon mal den Link gepostet:
http://www.freepascal.org/docs-html/lcl ... dex-5.html

Tip: Verzeichnis heisst auf Englisch "directory" und löschen heisst "delete"
Also vielleicht DeleteDirectory?

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Wiso sind die Prozedurnamen auch immer in Englisch und die Bezeichner undOperatoren könnt auch mal jemad übersetzen oder. tztz
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

iaby
Beiträge: 24
Registriert: Mi 25. Okt 2006, 19:48

Beitrag von iaby »

nachdem wir alle den sourcode von lazarus haben müsste das ja schnell gemacht sein :P

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Naja gut, die Frage von Quit ist vielleicht doch nicht so simpel.
Ganze Verzeichnisse und Unterverzeichnisse mit Daten kopieren?
Gibt's das Pfannenfertig für X-Platform oder muss man mit FindFirst / FindNext rekursiv durchrattern?

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Soweit ich weiss gibts keine Fertige lösung aber die paar Zeilen für den rekursiven Aufruf sind ja aucdh nicht so schlimm oder ?!
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Quit
Beiträge: 65
Registriert: So 5. Nov 2006, 18:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Luzern

Beitrag von Quit »

@ Christian: Ja genau, danach machen wir so eine gruuslige Sprache wie WINLOGO (oder wie hiess die, total weird wo variablen mit 'variable bezeichnet wurden? Schauder)

Hm Ok, dann muss ich mir wohl etwas zusammenbasteln... Juchu.

Danke.

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Quit hat geschrieben:Hm Ok, dann muss ich mir wohl etwas zusammenbasteln... Juchu.


Bisschen Googlen dann findest du das schon.

z.B. hier (runterscrollen):
http://www.experts-exchange.com/Program ... 49426.html

Code: Alles auswählen

procedure TForm1.CopyFolder(SrcFolder, ToFolder : String);
var
  SearchRec : TSearchRec;
  Src, Dst     : String;
 
begin
  Src := IncludeTrailingBackslash(SrcFolder);
  Dst := IncludeTrailingBackslash(ToFolder);
  ForceDirectories(Dst);
   if FindFirst(Src + '*', faAnyFile, SearchRec) = 0 then
    try
      repeat
        with SearchRec do
          if (Name <> '.') and (Name <> '..') then
            if (Attr and faDirectory) > 0 then
              CopyFolder(Src + Name, Dst + Name)
            else
              CopyFile(Pchar(Src + Name), PChar(Dst + Name), True);
      until FindNext(SearchRec) <> 0;
    finally
      FindClose(SearchRec);
    end ;
end;


Achtung: Hab ich nicht mit Lazarus getestet. Aber die Idee müsste stimmen.

Antworten