Page 1 sur 1

Fonction DirCopy

Posté : jeu. 19 sept. 2019 13:25
par n0m4de
Bonjour, c'est ma première fois sur le forum, jusque la j'ai toujour trouver des réponses par moi même mais la je galère vraiment, je suis novice en AutoIT et je cherchais a créer un système de backup mais je bloque au moment d'utiliser cette fonction, je vous joint mon code en éspérant qu'il pourra vous aider a comprendre mon problème (la fonction DirCopy ne renvoie aucun résultats pour moi alors que la fonction FileCopy juste au dessus fonctionne nickel) J'utilise cette fonction pour déplacer le dossier de signatures Outlook.

Func Example()
   Local Const $sFilePath = "H:\Backup_WIN10"
          If FileExists($sFilePath) Then
                                  FileCopy ("C:\Users\" & @UserName & "\AppData\Local\Google\Chrome\User Data\Default\Bookmarks", " H:\Backup_WIN10" , 1 ) ; flag 0= do not overwrite  1=overwrite existing files 8=create destination directory
                                  DirCopy ( "C:\Users\" & @UserName & "\AppData\Roaming\Microsoft\Signatures" " H:\Backup_WIN10" , 1 ;
                                         GuiCtrlSetState($Checkbox1, $GUI_CHECKED);
                                         GuiCtrlSetState($Checkbox2, $GUI_CHECKED);
          EndIf
   DirCreate($sFilePath)
                                  FileCopy ( "C:\Users\" & @UserName & "\AppData\Local\Google\Chrome\User Data\Default\Bookmarks", "H:\Backup_WIN10" , 1 ) ; flag 0= do not overwrite  1=overwrite existing files 8=create destination directory
                                  DirCopy ( "C:\Users\" & @UserName & "\AppData\Roaming\Microsoft\Signatures", " H:\Backup_WIN10" , 1 ) ;
                                         GuiCtrlSetState($Checkbox1, $GUI_CHECKED);
                                         GuiCtrlSetState($Checkbox2, $GUI_CHECKED);



                                  ;
                 Case $iMsg = $Restore
                                MsgBox (1 , "Restore", "Cliquez sur Restore");
                                  FileCopy ( "H:\Backup_WIN10", "C:\Users\desallangref\Desktop\source\" , 1 ) ; flag 0= do not overwrite  1=overwrite existing files 8=create destination directory
                                         GuiCtrlSetState($Checkbox3, $GUI_CHECKED);
                                         GuiCtrlSetState($Checkbox4, $GUI_CHECKED);
                                  ;
          EndSelect
   WEnd
          Exit
Merci par avance pour vos retours.
Cdt Florent

Re: Fonction DirCopy

Posté : jeu. 19 sept. 2019 14:38
par walkson
Bonjour,
L'un copie que les dossiers et l'autre que les fichiers.
Testez le code ci-dessous avec un dossier contenant des sous-dossiers et des fichiers, vous allez comprendre !
#include <FileConstants.au3>
$source = FileSelectFolder("source",@DesktopDir)
$destination = FileSelectFolder("destination", @DesktopDir)
DirCopy($source, $destination, $FC_OVERWRITE)
FileCopy($source , $destination &"\Copy\", $FC_OVERWRITE + $FC_CREATEPATH);crée le dossier copy dans le dossier $destination
; équivalant à FileCopy($source & "\*.*", $destination &"\Copy\", $FC_OVERWRITE + $FC_CREATEPATH)
Quand vous mettez du code, merci qu'il soit utilisable :roll:

Re: Fonction DirCopy

Posté : ven. 20 sept. 2019 07:46
par DimVar
Bonjour,

Dans l'extrait de code que vous mettez, cela fait référence à une GUI qui n'est pas dans le code.
De plus un CASE et un WEND doivent faire référence à un While (boucle) qui ne sont pas présents.

Dans l’état, nous ne pouvons vous apporter plus d'aide.

Cdlt.