![]() |
Verzeichnisinhalt kopieren OHNE Ordner
Hi DP´ler
Zum kopieren von Verzeichnisinhalten gibt es ja folgende Funktion:
Delphi-Quellcode:
Die Problematik ist nun das ich in meinem Zielverzeichnis NUR die Daten des Quellverzeichnisses möchte, ohne den letzten Ordner des Pfades. Heist im klartext:
function DoFileWork(aOperation: FILEOP_FLAGS; aFrom, aTo: AnsiString;
Flags: FILEOP_FLAGS): Integer; var FromPath, ToPath: AnsiString; SHFileOpStruct: TSHFileOpStruct; begin FromPath := aFrom + #0#0; ToPath := aTo + #0#0; with SHFileOpStruct do begin Wnd := 0; wFunc := aOperation; pFrom := PAnsiChar(FromPath); if ToPath <> '' then begin pTo := PAnsiChar(ToPath) end else begin // target available pTo := nil; end; // target not available fFlags := Flags; end; // structure Result := SHFileOperationA(SHFileOpStruct); end; Wenn ich so ausführe
Delphi-Quellcode:
Erstellt er in C:\OLAP immer den Ordner Leer in dem dann die gewünschten Dateien liegen. Ich möchte es aber das die Dateien direkt im Ordner OLAP landen. Das FLAG hinten mit FOF_FILESONLY zu setzen bringt leider garnix(zumindest is das ergebnis das selbe ob es gesetz ist oder nicht).
procedure TForm1.Button1Click(Sender: TObject);
begin DoFileWork(FO_COPY, 'C:\Olap\Daten\Leer', 'C:\OLAP', FOF_FILESONLY); end; Wäre super wenn jemand nen Tipp hätte mfg Ascu |
AW: Verzeichnisinhalt kopieren OHNE Ordner
Wie ist es so?
Delphi-Quellcode:
DoFileWork(FO_COPY, 'C:\Olap\Daten\Leer\*', 'C:\OLAP', FOF_FILESONLY);
|
AW: Verzeichnisinhalt kopieren OHNE Ordner
^^ War ja zu erwarten das das (mal wieder :D) stimmt. Kurz zur Erläuterung, * steht einfach nur dafür das alles was in diesem Ordner liegt kopiert wird oder seh ich das falsch? Ach ja und kann es sein das das FOF_FILESONLY Flag so garnich geht weil das ändert nämlich nüscht.
|
AW: Verzeichnisinhalt kopieren OHNE Ordner
Gerade noch einmal nachgelesen:
Zitat:
|
AW: Verzeichnisinhalt kopieren OHNE Ordner
Hm leider immer noch das selbe ob * oder *.* das FOF_FILESONLY bewirkt nichts. Naja funktionieren tuts ja schon ma^^
|
AW: Verzeichnisinhalt kopieren OHNE Ordner
Nächster Vorschlag:
Zitat:
|
AW: Verzeichnisinhalt kopieren OHNE Ordner
FOF_NORECURSION
kentn er gleich garnich ( undefinierter Bezeichner ) ansich deckt die ShellAPI doch aber alles ab |
AW: Verzeichnisinhalt kopieren OHNE Ordner
Delphi-Quellcode:
Aber ich habe gerade
const FOF_NORECURSION = $1000;
![]() |
AW: Verzeichnisinhalt kopieren OHNE Ordner
Dann deklarier es doch selber?
Ich weiß ja nicht wie alt dein Delphi ist, aber es ist nunmal so, daß nicht alle APIs, Typen und Konstanten von Windows integriert sind. Irgendwann mußte ja man diese API nach Delphi/Pascal übersetzt werden ... da kann schonmal was fehlen. Tipp: Lad' dir von Microsoft ein aktuelles PSDK runter ... darin findet man alles Wichtige für sein Windows. |
AW: Verzeichnisinhalt kopieren OHNE Ordner
JO danke werd ich direkt mal machen aber Fakt ist das die Funktion mit * hinten im Pfad tadellos funktioniert -> sehr zu frieden.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:53 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