Hi,
ich habe in meinem Programm eine Routine, die einen Dialog öffnet, wenn man einen Ordner in ein Verzeichnis kopieren will, aber dieser gleichnamig schon vorhanden ist. Beispiel: Angenommen es liegt in E:\bla ein Ordner namens asd. Der Ordner, welchen ich nach E:\bla kopieren will heißt auch asd. Dann kommt ein Dialog ob man ihn ersetzen möchte.
Wenn man bei der Nachfrage auf "Ja" klickt (=Ersetzen), dann bekomme ich beim Kopiervorgang den folgenden Windowsdialog zu sehen:
Zitat:
Ersetzen von Ordner bestätigen
-----------------------------------------
Dieser Ordner enthält einen Ordner "asd".
...
-----------------------------------------
Ja Ja alle Nein Abbrechen
(warum hat Strg+C nicht geklappt, ich musste ihn tatsächlich abtippen....)
Diese Meldung wird von
CopyDir(PChar(fCopy), PChar(Pfad));
aufgerufen. fCopy ist in dem Fall E:\asd und Pfad ist E:\bla (in E:\bla gibt es das Unterverzeichnis "asd", siehe oben). Wie könnte man diese Meldung umgehen ? Bei Dateien gibt es bei der Kopierfunktion einen Parameter, der sagt, ob bei bestehen der Datei weitergemacht werden soll oder nicht, hier gibt es diesen Parameter nicht (CopyFile(PChar(fCopyB), PChar(PfadB+ExtractFileName(fCopyB)),
False)).