Hmmm, also bei mir hab ich da noch keinen Fehler entdeckt, wenn das Verzeichnis noch nicht existierte, aber wenn da wirklich der Fehler liegt, dann kann man es wohl auch nicht beheben, es sei den man nimmt ShFileOperation nicht mehr und kopiert selber (Datei für Datei).
Aber du kannst es ja mal mit ForceDirectories versuchen, also vorher einfach das Verzeichnis erstellen.
Code:
if bl.Count > 0 then
begin
[color=#ff0000][b]ForceDirectories(BackupPfad);[/b][/color]
s := '';
for i := 0 to bl.Count - 1 do
s := s + bl[ i] + #0;
ZeroMemory(@fos, SizeOf(fos));
with fos do
begin
wFunc := FO_COPY;
fFlags := FOF_FILESONLY;
pFrom := PChar(s + #0);
pTo := PChar(BackupPfad + #0)
end;
ShFileOperation(fos);
end;
[add]
ich merk gerad, FOF_FILEONLY ... hast du es auch schon mal ohne dem versucht?
und eventuell wäre auch noch FOF_NOCONFIRMATION & FOF_NOCONFIRMMKDIR was für dich ^^
also
fFlags := FOF_FILESONLY or FOF_NOCONFIRMATION or FOF_NOCONFIRMMKDIR; + vorheriges ForceDirectories,
oder
fFlags := FOF_NOCONFIRMATION or FOF_NOCONFIRMMKDIR; ohne ForceDirectories