voila je préviens je suis nouveau et complétement novice avec autoit (1ière application faite rapidement)
je vous met mon bout de code, si ça peut intéresser des personnes et aussi
pour que vous me dites si vous voyez de grave erreur
Merci d'être indulgent
 
  ► Afficher le texteCommentaire
; SCRIPT : Ce code Sert à sauvegarde des images générer toutes les 4 sec
; via un logiciel externe et enregistrer sur ce PC, le but est de crée un service
; capable de détecter chaque nouvelle foto les déplacer sur un serveur externe dans
; une arborescence structuré
; les chemin d’arborescence sont sauvegardé dans un fichier sous c:\tmp\
; et est modifiable depuis l'appli
;
;
; Attention : le projet de départ avais pour but de transférer a une heure précise des dossier complet
; mais ce n'est pas possible a cause d'autre application qui ne doive pas être interrompu donc il reste
; des variable et bout de code non utilisé
;
:
; via un logiciel externe et enregistrer sur ce PC, le but est de crée un service
; capable de détecter chaque nouvelle foto les déplacer sur un serveur externe dans
; une arborescence structuré
; les chemin d’arborescence sont sauvegardé dans un fichier sous c:\tmp\
; et est modifiable depuis l'appli
;
;
; Attention : le projet de départ avais pour but de transférer a une heure précise des dossier complet
; mais ce n'est pas possible a cause d'autre application qui ne doive pas être interrompu donc il reste
; des variable et bout de code non utilisé
;
:
► Afficher le texteCode Entier
Code : Tout sélectionner
#NoTrayIcon
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=..\..\..\..\..\..\Program Files (x86)\AutoIt3\Icons\au3.ico
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
;----------------------------------------------------------------------------
;-----------------      Présentation      -----------------------------------
;----------------------------------------------------------------------------
; Version AutoIt :      3.3.7
; Langue         :      Francais
; PlateForme     :      Win9X/XP/Seven
; Auteur         :
;
; SCRIPT : Ce code Sert à sauvegarde des images gérérer toutes les 4 sec
; via un logiciel externe et enregistrer sur ce PC, le but est de crée un service
; capable de détecter chaque nouvelle foto les déplacer sur un serveur externe dans
; une arboressance structuré
;
; Attention : le projet de départ avais pour but de transferer a une heure précise des dossier complet
; mais ce n'est pas possible a cause d'autre application qui ne doive pas etre interonpu donc il reste
; des variable et bout de code non utilisé
;
; Version   1.0  :      10/06/20014
;                   - Première Version
;
;
;----------------------------------------------------------------------------
;-----------------      Déclaration Des Directives      ---------------------
;-----------------           De Compilation             ---------------------
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
;-----------------      Déclaration des Includes et Variables      ----------
;----------------------------------------------------------------------------
#Region "Include"
#include <TrayConstants.au3>
#include <GUIConstants.au3>
#include <ProgressConstants.au3>
#include <Date.au3>
#Include <file.au3>
#include <GUIEdit.au3>
#include <GuiComboBox.au3>
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <MsgBoxConstants.au3>
#include <Array.au3>
#EndRegion
#Region "Variable"
;###########################################################################
; Menu
Opt("TrayMenuMode", 1 ); Default tray menu items (Script Paused/Exit) will not be shown.
Opt("GUICloseOnESC", 1) ;1=ESC  closes, 0=ESC won't close
Opt("GUICoordMode", 1)
local $transfitem = TrayCreateItem("Lancer Recherche")
Local $prefsitem = TrayCreateItem("Préférence")
Local $aboutitem = TrayCreateItem("About")
Local $exititem = TrayCreateItem("Exit")
TraySetState()
;############################################################################
; variable
Local $JourDefault = "Vendredi" ; contient le jour de sauvegarde
Local $JourArray[7]             ; contient la liste de tout les jour de la semaine
            $JourArray[0] = "Lundi"
            $JourArray[1] = "Mardi"
            $JourArray[2] = "Mercredi"
            $JourArray[3] = "Jeudi"
            $JourArray[4] = "Vendredi"
            $JourArray[5] = "Samedi"
            $JourArray[6] = "Dimanche"
Local $HeureDefault = 13    ; contient l'heure de sauvegarde
Local $HeureArray[24]       ; Variable qui contient la list des heures
            For $i = 0 to 23 Step 1
                $HeureArray[$i]= $i
            Next
Local $paramArray[4] ; Attention Pour lire il compte a partir l'index 1 mais pour écrire il compte a 0
Local $PathParam = "C:\tmp\saveImg.ini"
Local $PathDirClient = "C:\Documents and Settings\operator\Mes documents\Mes images\SAUVEGARDE PHOTOS"  ; chemin ou sont stocker les fichier avant
Local $PathDirServeur = "\\Ts_03\Archivage\Images visionTHT2"   ; chemin ou sont enregistrer les fichier
Local $Contact = "mail"
Local $FileTmp = "\FileTestTmp.log" ;fichier servant uniquement a valider si le serveur est accessible et vérifier les droits
Local $fileExtend = "\*.jpg"
Local $etatUpdate = False
local $paramCharger = False
local $LancerTransfere = False
local $pid = ProcessExists(@ScriptName)
#EndRegion
;----------------------------------------------------------------------------
;-----------------      Déclaration des Forms      --------------------------
;----------------------------------------------------------------------------
#Region ### START Koda GUI section ### Form=Preference
$FrmPreference = GUICreate("Préférence des paramètres", 576, 443, 192, 124)
$gpPathLocal = GUICtrlCreateGroup("Chemin Local", 8, 8, 553, 121)
$btPathLocalModif = GUICtrlCreateButton("Modifier", 472, 24, 75, 25)
$btPathLocalValider = GUICtrlCreateButton("Valider", 472, 56, 75, 25)
$btPathLocalAnnuler = GUICtrlCreateButton("Annuler", 472, 88, 75, 25)
$Label1 = GUICtrlCreateLabel("Chemin Local Actuel", 24, 32, 101, 17)
$lab1 = GUICtrlCreateLabel("Chemin Local à entrer", 24, 64, 107, 17)
$lab2 = GUICtrlCreateLabel("Etat ", 24, 96, 26, 17)
$tbPathLocal = GUICtrlCreateInput("", 152, 64, 313, 21)
GUICtrlSetResizing(-1, $GUI_DOCKAUTO+$GUI_DOCKHEIGHT)
$labEtatPathLocal = GUICtrlCreateLabel("", 152, 96, 313, 25)
$labPathLocal = GUICtrlCreateLabel("", 152, 32, 313, 30)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$gpPathServer = GUICtrlCreateGroup("Chemin Reseau", 8, 136, 553, 121)
$btPathServerModif = GUICtrlCreateButton("Modifier", 472, 152, 75, 25)
$btPathServerValider = GUICtrlCreateButton("Valider", 472, 184, 75, 25)
$btPathServerAnnuler = GUICtrlCreateButton("Annuler", 472, 216, 75, 25)
$Label4 = GUICtrlCreateLabel("Chemin Serveur Actuel", 24, 160, 112, 17)
$lab3 = GUICtrlCreateLabel("Chemin Serveur à entrer", 24, 192, 118, 17)
$lab4 = GUICtrlCreateLabel("Etat", 24, 224, 23, 17)
$tbPathServer = GUICtrlCreateInput("", 152, 192, 313, 21)
$labEtatPathServer = GUICtrlCreateLabel("", 152, 224, 313, 21)
$labPathServer = GUICtrlCreateLabel("", 152, 160, 313, 30)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$gpHeure = GUICtrlCreateGroup("Heure", 8, 264, 553, 121)
$btHeureModif = GUICtrlCreateButton("Modifier", 472, 280, 75, 25)
$btHeureValider = GUICtrlCreateButton("Valider", 472, 312, 75, 25)
$btHeureAnnuler = GUICtrlCreateButton("Annuler", 472, 344, 75, 25)
$Label7 = GUICtrlCreateLabel("Heure Actuel", 24, 288, 66, 17)
$lab5 = GUICtrlCreateLabel("Modification de l'heure", 24, 320, 110, 17)
$cbHeure = GUICtrlCreateCombo("", 152, 320, 313, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
$labHeureActuel = GUICtrlCreateLabel("", 152, 288, 313, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$btAppliquer = GUICtrlCreateButton("Appliquer", 488, 392, 75, 41)
$btFermer = GUICtrlCreateButton("Fermer", 408, 392, 75, 41)
#EndRegion ### END Koda GUI section ###
#Region ### START Koda GUI section ### Form=About
$FrmAbout = GUICreate("About", 362, 284, 192, 124)
$Label1 = GUICtrlCreateLabel("Information du Service", 136, 8, 110, 17)
$Label2 = GUICtrlCreateLabel("Nom du Service", 24, 48, 80, 17)
$Label3 = GUICtrlCreateLabel("Version", 24, 88, 39, 17)
$Label4 = GUICtrlCreateLabel("Etat", 24, 160, 23, 17)
$Label5 = GUICtrlCreateLabel("Dernière MAJ", 24, 200, 68, 17)
$Label6 = GUICtrlCreateLabel("Contact", 24, 240, 41, 17)
$LabelNameExe = GUICtrlCreateLabel(" ", 192, 48, 100, 17)
$LabelVersion = GUICtrlCreateLabel(" ", 192, 88, 100, 17)
$LabelEtat = GUICtrlCreateLabel(" ", 192, 160, 100, 17)
$LabelLastMaj = GUICtrlCreateLabel(" ", 192, 200, 100, 17)
$LabelContact = GUICtrlCreateLabel($Contact, 192, 240, 100, 17)
#EndRegion ### END Koda GUI section ###
#Region ### START Koda GUI section ### Form=Transfere
$FrmTransfere = GUICreate("Transfère", 356, 120, 201, 152,0)
$gpTransfere = GUICtrlCreateGroup("gpTransfere", 8, 8, 345, 81)
$ProgressBar = GUICtrlCreateProgress(16, 32, 326, 25,$PBS_MARQUEE)
$lblNbFile = GUICtrlCreateLabel("nbFile", 16, 64, 180, 17)
$btAnnuler = GUICtrlCreateButton("Annuler", 264, 64, 83, 25)
GUICtrlCreateGroup("", -99, -99, 1, 1)
#EndRegion ### END Koda GUI section ###
; chargement d'une liste d'heure dans un combobox
For $i = 0 To 23 Step 1
    _GUICtrlComboBox_AddString($cbHeure, $HeureArray[$i])
Next
While 1
    ;###########################################
    ; Menu et action en cas de click
    Local $msgMenu = TrayGetMsg()
    Select
        Case $msgMenu = $transfitem
            $LancerTransfere = True
            TrayItemSetState($transfitem,$TRAY_CHECKED)
        Case $msgMenu = $prefsitem
            chargementDesPreference()
            TrayItemSetState($transfitem,$TRAY_CHECKED)
            GUISetState(@SW_SHOW,$FrmPreference)
        Case $msgMenu = $aboutitem
            chargementInfoAbout()
            GUISetState(@SW_SHOW,$FrmAbout)
        case $msgMenu = $exititem
            Exit
    EndSelect
    ;########################################
    ; gestion des Evenement des differentes fenetres
    $nMsg = GUIGetMsg(1)
    Switch $nMsg[1]
        Case $nMsg[0] = $GUI_EVENT_CLOSE
            If $nMsg[1] = $FrmPreference Then
                GUISetState(@SW_HIDE, $FrmPreference)
            ElseIf $nMsg[1] = $FrmAbout Then
                GUISetState(@SW_HIDE, $FrmAbout)
            EndIf
        Case $nMsg[0] = $btPathLocalModif  And $nMsg[1] = $FrmPreference
            AfficherPreferenceGroupeLocal()
        Case $nMsg[0] = $btPathLocalValider  And $nMsg[1] = $FrmPreference
            If updatePreferenceLocal() = True then
                masquerPreferenceGroupeLocal()
                GUICtrlSetData($labPathLocal , $PathDirClient)
                GUICtrlSetData($labEtatPathLocal , verifierEtatServeur($PathDirClient))
                saveParametre()
            Else
                MsgBox($MB_SYSTEMMODAL , "Attention" , "Path Invalid",10)
                ControlFocus($FrmPreference,"",$tbPathLocal)
            EndIf
        Case $nMsg[0] = $btPathLocalAnnuler  And $nMsg[1] = $FrmPreference
            masquerPreferenceGroupeLocal()
        Case $nMsg[0] = $btPathServerModif  And $nMsg[1] = $FrmPreference
            AfficherPreferenceGroupeServeur()
        Case $nMsg[0] = $btPathServerValider  And $nMsg[1] = $FrmPreference
            If updatePreferenceServeur() = True then
                masquerPreferenceGroupeServeur()
                GUICtrlSetData($labPathServer , $PathDirServeur)
                GUICtrlSetData($labEtatPathServer , verifierEtatServeur($PathDirServeur))
                saveParametre()
            Else
                MsgBox($MB_SYSTEMMODAL , "Attention" , "Path Invalid",10)
                ControlFocus($FrmPreference,"",$tbPathServer)
            EndIf
        Case $nMsg[0] = $btPathServerAnnuler  And $nMsg[1] = $FrmPreference
            masquerPreferenceGroupeServeur()
        Case $nMsg[0] = $btHeureModif  And $nMsg[1] = $FrmPreference
            AfficherPreferenceGroupeHeure()
        Case $nMsg[0] = $btHeureValider  And $nMsg[1] = $FrmPreference
            if updatePreferenceHeure() = True Then
                masquerPreferenceGroupeHeure()
                GUICtrlSetData($labHeureActuel, $HeureDefault)
            EndIf
        Case $nMsg[0] = $btHeureAnnuler  And $nMsg[1] = $FrmPreference
            masquerPreferenceGroupeHeure()
        Case $nMsg[0] = $btAppliquer  And $nMsg[1] = $FrmPreference
            saveParametre()
            MsgBox($MB_SYSTEMMODAL, "" , "Enregistrement des parametres reussi ! " , 4 )
            GUISetState(@SW_HIDE, $FrmPreference)
        Case $nMsg[0] = $btFermer  And $nMsg[1] = $FrmPreference
            GUISetState(@SW_HIDE, $FrmPreference)
    EndSwitch
    ;gestion du check du menu
    if BitAND(WinGetState($FrmPreference),2) Then
        TrayItemSetState($prefsitem,$TRAY_CHECKED)
    Else
        TrayItemSetState($prefsitem,$TRAY_UNCHECKED)
    EndIf
    If BitAND(WinGetState($FrmAbout),2) Then
        TrayItemSetState($aboutitem,$TRAY_CHECKED)
    Else
        TrayItemSetState($aboutitem,$TRAY_UNCHECKED)
    EndIf
    If $LancerTransfere = True Then
        TrayItemSetState($transfitem,$TRAY_CHECKED)
    Else
        TrayItemSetState($transfitem,$TRAY_UNCHECKED)
    EndIf
    TrayItemSetState($exititem,$TRAY_UNCHECKED)
    ;chargement des parametres
    if $paramCharger = False Then
        chargementParametre()
    EndIf
    mouveFichierClient()    ; fonction qui organise les fichier dans le C:\
    if $LancerTransfere = True Then
        mouveFichierServeur()   ; fonction qui sauvegarde et organise sur le serveur
    EndIf
    _ReduceMemory($pid)
WEnd
;----------------------------------------------------------------------------
;-----------------      Codes Des Fonctions      ----------------------------
;----------------------------------------------------------------------------
; fonction qui sera charger a chaque nouvelle ouverture de la fenetre About
; qui contiendra quelque information
Func chargementInfoAbout()
    Local $strEtat = verifierEtatServeur()
    GUICtrlSetData($LabelNameExe,@ScriptName)
    GUICtrlSetData($LabelVersion,FileGetVersion(@ScriptName))
    GUICtrlSetData($LabelEtat, $strEtat)
    GUICtrlSetData($LabelLastMaj, _NowDate() )
    GUICtrlSetData($LabelContact , $Contact)
EndFunc
; fonction qui renvois une chaine de caractere spécifiant si le serveur est ON ou OFF
; elle va crée un fichier dans le répaitoire Choisi puis le supprimer
; si tout ce passe bien c'est ON
Func verifierEtatServeur($p = $PathDirServeur)
    If FileExists($p) Then
        If FileExists($p & $FileTmp) Then
            If not(FileDelete($p & $FileTmp)) Then Return "Etat Serveur OFF"
        EndIf
        If (_FileCreate($p & $FileTmp))Then
            If FileDelete($p & $FileTmp) Then Return "Etat Serveur ON"
        EndIf
        Return "Etat Serveur OFF"
    Else
        Dim $dr
        $dr = MsgBox($MB_YESNO, "Erreur", " Attention le Dossier ou les fichier " & _
        " doivent être sauvegarder n'existe pas ! " & @LF & _
        " Voulez vous creer ce dossier automatiquement ? ", 60)
        If $dr = 6 Then
            if DirCreate($p) Then
                If (_FileCreate($p & $FileTmp))Then
                    If FileDelete($p & $FileTmp) Then Return "Etat Serveur ON"
                EndIf
            EndIf
            Return "Etat Serveur OFF"
        Else
            Return "Etat Serveur OFF"
        EndIf
    EndIf
EndFunc
; fonction qui regarde si le dossier existe bel et bien et
; si des image sont enregistrer dedans
Func mouveFichierClient()
    $tFile = _Date_Time_EncodeFileTime(@YEAR, @MON, @MDAY, @HOUR, @MIN, @SEC)
    Local $pFile = DllStructGetPtr($tFile)
    Local $dirMonth = $PathDirClient & "\" & @YEAR & "_" & @MON
    Local $dirFile = $dirMonth & "\" & @YEAR & "_" & @MON & "_" & @MDAY
    If Not FileExists($PathDirClient) Then
        DirCreate($PathDirClient)
        _Date_Time_SetFileTime($PathDirClient, $pFile, $pFile, $pFile)
    EndIf
    if not FileExists($dirMonth) Then
        DirCreate($dirMonth)
        _Date_Time_SetFileTime($dirMonth, $pFile, $pFile, $pFile)
    EndIf
    If not FileExists($dirFile) Then
        DirCreate($dirFile)
        _Date_Time_SetFileTime($dirFile, $pFile, $pFile, $pFile)
    EndIf
    If FileExists($PathDirClient & $fileExtend) Then
        FileMove($PathDirClient & $fileExtend, $dirFile & "\")
        Sleep(20)
    EndIf
EndFunc
; fonction qui déplacera le dossier du jour précédant pour
; les sauvegarder sur le serveur
Func mouveFichierServeur()
    local $d2Jour = _DateAdd("d", -2, @YEAR & "/" & @MON & "/" & @MDAY )
    Local $dateMoisDernier = _DateAdd("m", -1, @YEAR & "/" & @MON & "/" & @MDAY )
    ;on liste tout les dossier du path client
    Local $tabDir = _FileListToArray($PathDirClient, "*" ,2)
    If $tabDir = 0 Then
        MsgBox( $MB_SYSTEMMODAL , "Erreur" , "il n'y à aucun fichier sauvegarder sur ce pc !",5)
    Else
        ;si il correspondent a un dossier mois (2014_03) on liste a nouveau
        For $i = 1 To $tabDir[0]
            ;si il ne contient rien on revien en arriere et on le supprime
            If StringRegExp( $tabDir[$i] , "[0-9]{4}_[0-9]{2}$") Then
                Local $pfile = $PathDirClient & "\" & $tabDir[$i]
                Local $tabfile = _FileListToArray($pfile, "*" ,2)
                If $tabfile = 0 Then
                    if not DirRemove($PathDirClient & "\" & $tabDir[$i]) Then MsgBox($MB_SYSTEMMODAL , "" ,"La suppression du dossier : " & $PathDirClient & "\" & $tabDir[$i] & " n'a pas pu se faire")
                Else
                    for $j = 1 to $tabfile[0]
                        Local $file = $PathDirClient
                        if (StringRight($PathDirClient , 1 ) = "\" Or  StringLeft($tabDir[$i],1) = "\") Then
                            $file = $file & $tabDir[$i]
                        Else
                            $file = $file & "\" & $tabDir[$i]
                        EndIf
                        if (StringRight($tabDir[$i],1) = "\" Or  StringLeft($tabfile[$j],1)= "\") Then
                            $file = $file & $tabfile[$j]
                        Else
                            $file = $file & "\" & $tabfile[$j]
                        EndIf
                        If FileExists($file) And $LancerTransfere = True Then
                            local $dateArrayFile = FileGetTime($file,1,0)
                            local $dateFile = $dateArrayFile[0] & "/" & $dateArrayFile[1] & "/" & $dateArrayFile[2]
                            Local $dateNow = @YEAR & "/" & @MON & "/" & @MDAY
                            Local $ddiff = _DateDiff ( "d", $dateFile, $dateNow)
                            Local $serveurDir = $tabDir[$i] & "\" & $tabfile[$j]
                            If $ddiff > 2 Then ; si la date est supérieur a deux jour on transfere
                                transfereSurServeur($file, $serveurDir)
                            EndIf
                        EndIf
                    Next
                EndIf
            EndIf
        Next
    EndIf
EndFunc
func chargementParametre()
    If FileExists($PathParam) Then
        _FileReadToArray($PathParam, $paramArray)
        $PathDirClient   =  $paramArray[1]
        $PathDirServeur  =  $paramArray[2]
        $HeureDefault    =  $paramArray[3]
    Else
        saveParametre()
    EndIf
    $paramCharger = True
EndFunc
func saveParametre()
    If FileExists($PathParam) Then FileDelete($PathParam)
    _FileCreate($PathParam)
    $paramArray[0] = $PathDirClient
    $paramArray[1] = $PathDirServeur
    $paramArray[2] = $HeureDefault
    _FileWriteFromArray($PathParam, $paramArray)
EndFunc
; fait une copy des fichiers sur un serveur
func transfereSurServeur(ByRef $file, ByRef $serveurDir)
    If verifierEtatServeur() = "Etat Serveur ON" AND $LancerTransfere = True Then
        if not FileExists($PathDirServeur & "\" & $serveurDir) Then DirCreate($PathDirServeur & "\" & $serveurDir)
        local $listeFichiers = _FileListToArray($file,"*",1)
        If @error = 1 Then
            MsgBox($MB_SYSTEMMODAL, "", "Path was invalid.",3)
            Exit
        EndIf
        If @error = 2 Then
            MsgBox($MB_SYSTEMMODAL, "", "Invalid $sFilter.",3)
            Exit
        EndIf
        If @error = 3 Then
            MsgBox($MB_SYSTEMMODAL, "", "Invalid $iFlag.",3)
            Exit
        EndIf
        If $listeFichiers = 0 Then
            if not DirRemove($file) then MsgBox($MB_SYSTEMMODAL , "" , "Erreur Le dossier " & $file & " ne contient plus de fichier mais n'a pas pu etre supprimé " )
        Else
            local $nbfile = 0
            GUICtrlSendMsg($ProgressBar, $PBM_SETMARQUEE, 1, 50)
            GUICtrlSetData($lblNbFile , $nbfile & " / " & $listeFichiers[0])
            GUICtrlSetData($gpTransfere,$file)
            GUISetState(@SW_SHOW , $FrmTransfere)
            For $i=1 to $listeFichiers[0]
                local $fileSource = $file & "\" & $listeFichiers[$i]
                local $fileDest = $PathDirServeur & "\" & $serveurDir & "\"
                If Not FileMove($fileSource, $fileDest, $FC_OVERWRITE + $FC_CREATEPATH) then
                    MsgBox($MB_SYSTEMMODAL,"","ECHEC lors du déplacement des images",10)
                    $LancerTransfere = False
                    TrayItemSetState($transfitem,$TRAY_UNCHECKED)
                    ExitLoop
                Else
                    $nbfile = $nbfile + 1
                    GUICtrlSetData($lblNbFile,$nbfile & " / " & $listeFichiers[0])
                EndIf
                If $btAnnuler = GUIGetMsg() Then
                    $LancerTransfere = False
                    TrayItemSetState($transfitem,$TRAY_UNCHECKED)
                    ExitLoop
                EndIf
                Sleep(20)
            Next
            Sleep(1000)
            GUISetState(@SW_HIDE , $FrmTransfere)
        EndIf
    Else
        MsgBox($MB_SYSTEMMODAL, "Erreur Reseau" , "Le service ne parvient pas à acceder au serveur !", 10)
    EndIf
EndFunc
; chargement des config depuis un fichier externe (non implémenté)
; masquer tout les controls non utilisé
; et affichage des parametre déja en place (affichage des variable dans les labels)
Func chargementDesPreference()
    ; masque les controls
    masquerPreferenceGroupeLocal()
    masquerPreferenceGroupeServeur()
    masquerPreferenceGroupeHeure()
    GUICtrlSetData($labPathLocal , $PathDirClient)
    GUICtrlSetData($labEtatPathLocal , verifierEtatServeur($PathDirClient))
    GUICtrlSetData($labPathServer , $PathDirServeur)
    GUICtrlSetData($labEtatPathServer , verifierEtatServeur($PathDirServeur))
    GUICtrlSetData($labHeureActuel , $HeureDefault)
EndFunc
func AfficherPreferenceGroupeLocal()
    ControlEnable($FrmPreference,"",$lab1)
    ControlShow($FrmPreference,"",$lab1)
    ControlEnable($FrmPreference,"",$lab2)
    ControlShow($FrmPreference,"",$lab2)
    ControlEnable($FrmPreference,"",$tbPathLocal)
    ControlShow($FrmPreference,"",$tbPathLocal)
    ControlEnable($FrmPreference,"",$btPathLocalValider)
    ControlShow($FrmPreference,"",$btPathLocalValider)
    ControlEnable($FrmPreference,"",$btPathLocalAnnuler)
    ControlShow($FrmPreference,"",$btPathLocalAnnuler)
    ControlDisable($FrmPreference,"",$btPathLocalModif)
EndFunc
func masquerPreferenceGroupeLocal()
    ControlDisable($FrmPreference,"",$lab1)
    ControlHide($FrmPreference,"",$lab1)
    ControlDisable($FrmPreference,"",$lab2)
    ControlHide($FrmPreference,"",$lab2)
    ControlDisable($FrmPreference,"",$tbPathLocal)
    ControlHide($FrmPreference,"",$tbPathLocal)
    ControlDisable($FrmPreference,"",$btPathLocalValider)
    ControlHide($FrmPreference,"",$btPathLocalValider)
    ControlDisable($FrmPreference,"",$btPathLocalAnnuler)
    ControlHide($FrmPreference,"",$btPathLocalAnnuler)
    ControlEnable($FrmPreference,"",$btPathLocalModif)
EndFunc
func AfficherPreferenceGroupeServeur()
    ControlEnable($FrmPreference,"",$lab3)
    ControlShow($FrmPreference,"",$lab3)
    ControlEnable($FrmPreference,"",$lab4)
    ControlShow($FrmPreference,"",$lab4)
    ControlEnable($FrmPreference,"",$tbPathServer)
    ControlShow($FrmPreference,"",$tbPathServer)
    ControlEnable($FrmPreference,"",$btPathServerValider)
    ControlShow($FrmPreference,"",$btPathServerValider)
    ControlEnable($FrmPreference,"",$btPathServerAnnuler)
    ControlShow($FrmPreference,"",$btPathServerAnnuler)
    ControlDisable($FrmPreference,"",$btPathServerModif)
EndFunc
func masquerPreferenceGroupeServeur()
    ControlDisable($FrmPreference,"",$lab3)
    ControlHide($FrmPreference,"",$lab3)
    ControlDisable($FrmPreference,"",$lab4)
    ControlHide($FrmPreference,"",$lab4)
    ControlDisable($FrmPreference,"",$tbPathServer)
    ControlHide($FrmPreference,"",$tbPathServer)
    ControlDisable($FrmPreference,"",$btPathServerValider)
    ControlHide($FrmPreference,"",$btPathServerValider)
    ControlDisable($FrmPreference,"",$btPathServerAnnuler)
    ControlHide($FrmPreference,"",$btPathServerAnnuler)
    ControlEnable($FrmPreference,"",$btPathServerModif)
EndFunc
func AfficherPreferenceGroupeHeure()
    ControlEnable($FrmPreference,"",$lab5)
    ControlShow($FrmPreference,"",$lab5)
    ControlEnable($FrmPreference,"",$cbHeure)
    ControlShow($FrmPreference,"",$cbHeure)
    ControlEnable($FrmPreference,"",$btHeureValider)
    ControlShow($FrmPreference,"",$btHeureValider)
    ControlEnable($FrmPreference,"",$btHeureAnnuler)
    ControlShow($FrmPreference,"",$btHeureAnnuler)
    ControlDisable($FrmPreference,"",$btHeureModif)
EndFunc
func masquerPreferenceGroupeHeure()
    ControlDisable($FrmPreference,"",$lab5)
    ControlHide($FrmPreference,"",$lab5)
    ControlDisable($FrmPreference,"",$cbHeure)
    ControlHide($FrmPreference,"",$cbHeure)
    ControlDisable($FrmPreference,"",$btHeureValider)
    ControlHide($FrmPreference,"",$btHeureValider)
    ControlDisable($FrmPreference,"",$btHeureAnnuler)
    ControlHide($FrmPreference,"",$btHeureAnnuler)
    ControlEnable($FrmPreference,"",$btHeureModif)
EndFunc
Func updatePreferenceLocal()
        ; verifier si textbox du chemin client est different de null
    Local $sTextClient = _GUICtrlEdit_GetText($tbPathLocal)
    If $sTextClient = ( "" Or " " OR Null) Then
        If FileExists($sTextClient)Then
            $PathDirClient = $sTextClient
            Return True
        EndIf
    Else
        MsgBox($MB_SYSTEMMODAL,"Erreur", "Veuillez remplir le champs !")
    EndIf
EndFunc
Func updatePreferenceServeur()
    ; verifier si textbox du chemin Serveur est different de null
    Local $sTextServeur = _GUICtrlEdit_GetText($tbPathServer)
    If $sTextServeur = ("" Or " " Or Null)Then
        If FileExists($sTextServeur)Then
            $PathDirServeur = $sTextServeur
            Return True
        EndIf
    Else
            MsgBox($MB_SYSTEMMODAL,"Erreur", "Veuillez remplir le champs !")
    EndIf
EndFunc
Func updatePreferenceHeure()
        ; verifier si l'heure est différente
    Local $heurChoisi = _GUICtrlComboBox_GetEditText ( $cbHeure )
    If StringRegExp( $heurChoisi , "(([0-9]{2})|([0-9]{1}))($|\n)") Then
        $HeureDefault = $heurChoisi
        Return True
    EndIf
EndFunc
Func _ReduceMemory($i_PID = -1)
    If $i_PID <> -1 Then
        Local $ai_Handle = DllCall("kernel32.dll", 'int', 'OpenProcess', 'int', 0x1f0fff, 'int', False, 'int', $i_PID)
        Local $ai_Return = DllCall("psapi.dll", 'int', 'EmptyWorkingSet', 'long', $ai_Handle[0])
        DllCall('kernel32.dll', 'int', 'CloseHandle', 'int', $ai_Handle[0])
    Else
        Local $ai_Return = DllCall("psapi.dll", 'int', 'EmptyWorkingSet', 'long', -1)
    EndIf
    Return $ai_Return[0]
EndFunc   ;==>_ReduceMemory
 Toute critique est bonne à prendre tant quelle est constructive


 
 

