![]() |
Frage zu Ordner kopieren
Hallo,
ich habe ![]()
Delphi-Quellcode:
Wenn ich nun einen Ordner als Quelle angebe der nicht in meinem Programm genutzt wird, dann funktioniert es einwandfrei.
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; Nehme ich aber einen Ordner auf den ich mit meinem Programm zugreife, dann bekomme ich die Meldung das die Quelldatei nicht gelesen werden könnte. Ich möchte aber den Ordner sichern und muß ihn somit kopieren wenn das Programm läuft. Ist es denn nicht möglich ein komplettes Verzeichnis zu kopieren wenn auf Dateien zugegriffen wird (es wird nicht geschrieben sondern nur aus Dateien Informationen geladen)? Kann mir da jemand einen Tip geben wo mein Fehler liegt? Danke schon einmal. |
Re: Frage zu Ordner kopieren
Wie hast du denn die dateien in dem Ordner geöffnet? Und warum schließt du sie nicht bevor du sie kopierst? Geöffnete Dateien zu kopieren ist sowieso gefährlich.
|
Re: Frage zu Ordner kopieren
Geöffnet sind sie eigentlich nicht.
Ich lade aus den Dateien beim Programmstart die Items von ein paar Comboboxen. Zu dem Zeitpunkt wo ich die Dateien (bzw. das Verzeichnis) kopieren möchte lade ich aber nichts daraus. Ich wüste nicht das sie noch geöffnet wären. Habe auch gerade mal in die Proceduren gesehen und ich gebe auch eigentlich alles wieder frei. |
Re: Frage zu Ordner kopieren
Wechsel vor dem Kopieren mal das Arbeitsverzeichnis mit
![]() |
Re: Frage zu Ordner kopieren
Auf der Seite habe ich nichts gefunden.
Kenne nur z.B. SetCurrentDir, was ich gerade ohne Erfolg probiert habe. Kannst Du mir das mit SetDirectory mal beschreiben? |
Re: Frage zu Ordner kopieren
Oh, das meinte ich eigentlich: SetCurrentDir.
|
Re: Frage zu Ordner kopieren
Habe da noch einmal eine kleine Erweiterungsfrage zum Freigeben.
Wenn ich aus einer Datei in dem zu kopierenden Ordner mit
Delphi-Quellcode:
die Items lade muß ich dann die Combobox auch mit
ComboBox8.Items.LoadFromFile(pfad + dateiname);
Delphi-Quellcode:
freigeben um den zugriff auf die Datei zu beenden?
ComboBox8.Free
Denn ich habe noch einmal alles durchgesehen und konnte nicht feststellen woran es liegen könnte, das wäre meine einzige Idee. |
Re: Frage zu Ordner kopieren
Mir ist gerade noch etwas aufgefallen.
In dem Code den ich im Forum gefunden habe ist eine Variable fFlags auf FOF_FILESONLY gesetzt. Da in dem Verzeichnis auch ordner sind, kann auch das das Problem sein. Ich habe in der Hilfe danach gesucht, konnte aber leider nichts darüber finden. Wo kann ich denn finden welche Konstanten ich da noch setzen kann? |
Re: Frage zu Ordner kopieren
Moin Henry,
ideal wäre es vermutlich, wenn Du Dir mal das PSDK bei MS herunterladen würdest, aber auch auf MSDN müsstest Du fündig werden können. ![]() |
Re: Frage zu Ordner kopieren
Gibt es die beiden denn auch auf deutsch? Mit Englisch hab ich es nicht so.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:02 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