440LVB | Comme j'ai deja conseillé aujourd'hui, regarde avec autoIT. Tu peux faire un script avec une fenetre qui demande le nom du repertoire a copier.
Ci-joint un script que j'ai ecrit qui regarde le nom de tous les sous-repertoires dans un repertoire, propose a l'utilisateur de choisir l'un d'eux ou tous dans une combo box puis effectue le transfert.
Je precise que j'ai mis seulement 2 jours a apprendre a faire ce genre de script, parce le fichier d'aide est tres bien foutu et que le forum d'aide (http://www.hiddensoft.com) est actif avec des gens calés.
Code :
- ;******************************************************************
- ;
- ; Récupération des fichiers sur D: dans l'espace perso
- ;
- ;******************************************************************
- #include <GUIConstants.au3>
- DirCreate("n:\Soft" )
- GUICreate ( "Transfert de fichiers", 410, 120)
- $search = FileFindFirstFile ( "D:\" & @UserName & "\*.*" )
- $softlist = ""
- If ($search = -1) Then
- MsgBox(0, "Erreur", "Aucun fichier a copier" )
- Exit
- EndIf
- While (1)
- $tmpSoft = FileFindNextFile($search)
- If (@error) Then
- ExitLoop
- EndIf
- If ( ($tmpSoft <> "." ) AND ($tmpSoft <> ".." ) ) Then
- $softList = $softList & "|" & $tmpSoft
- EndIf
- WEnd
- If ( $softList = "" ) Then
- MsgBox(0, "Erreur", "Aucun fichier a copier" )
- Exit
- EndIf
- $softList = $softList & "|Tous"
- FileCLose($search)
- $combo = GUICtrlCreateCombo ( " ", 60, 70, -1, -1,$CBS_DROPDOWNLIST)
- GUICtrlSetData(-1,$softList)
- GUICtrlCreateLabel ( "Transfert depuis D: dans l'espace perso sur N:", 60, 15);
- GUICtrlCreateLabel ( "Choisissez le programme", 60, 47);
- $transfButton = GUICtrlCreateButton ("Transférer", 300, 50, 80)
- $cancelButton = GUICtrlCreateButton ("Annuler", 300, 80, 80)
- GUISetState(@SW_SHOW)
- While (1)
- $msg = GUIGetMsg()
- Select
- Case ( ($msg = $GUI_EVENT_CLOSE) Or ($msg = $cancelButton) )
- ExitLoop
- Case ($msg = $transfButton)
- $prog = GUICtrlRead ( $combo )
- If ($prog <> " " ) Then
- If ($prog = "Tous" ) Then
- RunWait(@COMSPEC & " /c " & "XCOPY d:\" & @UserName & " n:\soft\ /D /E /Y" )
- MsgBox(0, "Transfert terminé", "Tous les fichiers ont été copiés" )
- Else
- RunWait(@COMSPEC & " /c " & "XCOPY d:\" & @UserName & "\" & $prog & " n:\soft\" & $prog &" /D /E /Y" )
- MsgBox(0, "Transfert terminé", "Transfert des fichiers de " & $prog & " terminé" )
- EndIf
- EndIf
- EndSelect
- Wend
|
Message édité par 2FR le 08-06-2005 à 17:41:34
|