25-06-2010, 05:59 PM
السلام عليكم ورحمة الله وبركاته ،
كنت أبحث عن طريقة نسخ مجلد نحو مجلد آخر فوجد هذه الفكرة فأحببت أن أضعها لكم للتعم الفائدة .
طبعا لا تنس إضافة ShellAPI لقائمة Uses .
كنت أبحث عن طريقة نسخ مجلد نحو مجلد آخر فوجد هذه الفكرة فأحببت أن أضعها لكم للتعم الفائدة .
كود :
function CopyFolder(FromFld, ToFld: string): boolean;
var fos: TSHFileopStruct;
begin
// il faut supprimer les antislashs de fin sinon vous aurez droit à un message d'erreur
// you must delete backSlsh
FromFld := ExcludeTrailingPathDelimiter(Trim(FromFld));
ToFld := ExcludeTrailingPathDelimiter(Trim(ToFld));
FillChar(fos, SizeOf(fos),0);
with fos do
begin
wFunc := FO_COPY;
pFrom := PChar(FromFld+#0);
pTo := PChar(ToFld+#0);
fFlags := FOF_SILENT or FOF_NOCONFIRMATION or FOF_NOCONFIRMMKDIR;
end;
Result := ShFileOperation(fos)=0;
end;
كود :
if CopyFolder('d:\Folder01', 'c:\Folder2')then
ShowMessage('Ok ')
else
ShowMessage('No');
طبعا لا تنس إضافة ShellAPI لقائمة Uses .