Bonjour,
J’aimerai copier des répertoires d'un emplacement à un autre, mais je ne trouve pas la fonction, quelqu'un peut m'aider ?
Merci d'avance !
Version imprimable
Bonjour,
J’aimerai copier des répertoires d'un emplacement à un autre, mais je ne trouve pas la fonction, quelqu'un peut m'aider ?
Merci d'avance !
Je ne crois pas qu'il existe de fonction toute faite (en tout cas, j'en ai pas trouvé :P)
Voulant faire la même chose que toi, j'ai dû me créer une fonction avec des FindFirst/FindNext (basé sur ce code) avec un peu de récursivité pour la gestion des dossiers.
Tu devrais essayer de la faire, c'est marrant ;)
SHFileOperation() permet de copier un répertoire avec tous ses fichiers et ses sous-répertoires :
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 int __fastcall TForm1::CopyDir(AnsiString SourceDir, AnsiString DestDir) { char cSDIR[MAX_PATH], cDDir[MAX_PATH]; memset(cSDir, 0, MAX_PATH); memset(cDDir, 0, MAX_PATH); strcpy(cSDir, SourceDir.c_str()); strcpy(cDDir, DestDir.c_str()); SHFILEOPSTRUCT dfstruct; dfstruct.hwnd = Handle; dfstruct.wFunc = FO_COPY; dfstruct.pFrom = cSDir; dfstruct.pTo= cDDir; dfstruct.fFlags = FOF_NOCONFIRMATION; return SHFileOperation(&dfstruct) }
Salut Pasqualini
Elle est tres interressante ta fonction SHFileOperation()
Je viens de me rendre compte que j'avais participe a une discution similaire voici le lien (ma memoire me joue des tours :aie:)