![]() |
Kompletten Ordner kopieren ...
Hi leuten, ich hab da mal ne Frage: gibts nen befehl um einen ganzen ordner (inkl. unterordner) in einen anderen ordner zu kopieren ?
falls nicht geht es ohne unterordner ? einfach nur alle dateien aus einem verzeichniss in ein anderes kopieren .... ich hoffe ihr könnt mir helfen ... wenns möglich ist wäre ich über ein beispiel mit erklärung seeeehr dankbar da ich ein absoluter neueinsteiger in Delphi bin .... Gruß Alexander |
Moin Alexander,
erst einmal herzlich willkommen. Versuch' doch mal hier im Forum nach SHFileOperation zu suchen. Diese Funktion ist für derartige Dinge gedacht. Ich bin mir nicht ganz sicher, aber ich glaube, dass Du hier dazu auch ein Beispiel finden müsstest. |
danke danke .... ich werd dann gleich ma suchen ... wenn ich nix finde meld ich mich wieder .....
|
also zu nem ganzen ordner hab ich nix gefunden nur zu einzelnen dateien .... was sich bei 1500 Dateien zu echter arbeit entwickeln würde :(
haste noch ne idee wo ich dass her bekomme ? |
Kuckuck. :mrgreen: Mathias ist übrigens in diesm Forum auch unterwegs.
Da kannst Wildcards angeben. Und wenn du als Funktion FO_COPY und die Ordner c:\WinNT\System32\*.* und c:\WinNT\Temp angibts, sollten alle Dateien und Unterordner kopiert werden. Btw: Den Ordner c:\WinNT\Temp gibt es nicht, du müßtest dir also den Tempordner erstmal ermitteln. Für alle die wissen wollen, um was es geht: ![]() |
wie geht dass mit diesen wildcards ? kannst du mir dazu mal ein beispiel bringen ? ...
hmmmmm, muss dich leider enttäuschen ... der Link der oben aufgeführt ist ist zwar amüsant aber leider verweist er nicht auf mich ... es muss wohl mer leute geben die den Namen AZRAEL in irgendwelchen Foren nutzen .... was aber wie ich zugeben muss lustig ist dass er den selben realnamen zu haben scheint wie ich ... in diesem Fall sollte ich hier evtl. mit AZRAEL unterschreiben ;) Gruß AZRAEL |
Das sind die gleichen Wildcards wie unter DOS:
* = beliebige Zeichenfolge ? = beliebiges Zeichen |
könntest du mir dazu mal einen Quelltextauszug (nach möglichkeit mit erklärug) bringen ? ich kann dir leider so nicht folgen und die Hilfe kann mit FO_Copy auch nix anfangen :(
|
SHFileOperation ist eien Windows-API funktion. Die Hilfe dazu findest du im
![]() ![]() |
danke dir ich werd mich mal umschauen ....
|
Hab jezz das hier dazu gefunden .... wo geb ich denn da die Ordner ein die ich kopieren will ... wenn ich es so in mein Programm einfüge geht gar nix .... es hagelt nur unmengen fehler ....
Delphi-Quellcode:
[EDIT=Christian Seehase]Delphi Tags hinzugefügt[/EDIT]
[color=#ff004c]
function CopyDir(const fromDir, toDir: string): Boolean; var fos: TSHFileOpStruct; begin ZeroMemory(@fos, SizeOf(fos)); with fos do begin wFunc := FO_COPY; fFlags := FOF_FILESONLY; pFrom := PChar(fromDir + #0); pTo := PChar(toDir) end; Result := (0 = ShFileOperation(fos)); end;[/color] |
Wozu nur die Parameter fromDir und toDir gut sind? :roll:
Und hast du auch alles gelesen? Die benötigte pas-Datei mit eingebunden? Und wie wäre es, wenn du uns mal die Fehlermeldung sagst? :evil: |
Moin Alexander,
dann binde doch mal shellapi unter uses ein. Die Fehler dürften wohl daher kommen, das diese fehlt, und er z.B. SHFileOperation nicht kennt. |
die shellapi hab ich drinnen und bei fromdir und todir hab ichs versucht jedoch bekomm ich dann massenhaft fehler ... (der pfad wird in hochkomma gesetzt oder ?) ... jedenfalls bekomm ich einmal den fehler:
Unit1.pas(128) Statement expectet but 'FUNCTION' found. und den Fehler Unit1.pas(128)Illegal characters in input File: "($AO) was bedeutet dass ? bzw. was mach ich falsch ? |
Zeig mal Code, wie du die Funktion aufrufst.
|
das weiß ich ja eben noch net ... da ich keine Ahnung hab wie ich dass anstellen soll :( ... was wäre denn der richtige befehl um die Funktion aufzurufen ?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:36 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