[R] Script Sauvegarde PSt

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#21

Message par jujubois »

Et oui c'est encore moi ... désolé

J'ai encore un problème ! ... le script marche bien sur mes 2 PC mais sur mes PC clients l'archivage ne fonctionne pas ! sniff

Alors je voudrais savoir comment excecutée la ligne de comande 7za directement dans mon script sans passé par ta fonction

Merci d avance ^^ je suis vraiment désolé d etre aussi chiant

Julien
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#22

Message par Tlem »

jujubois a écrit :le script marche bien sur mes 2 PC mais sur mes PC clients l'archivage ne fonctionne pas ! sniff
Probablement un problème avec le chemin de 7za.exe ou tout simplement vous ne l'avez peut-être pas inclus dans votre programme ou avec votre script.
jujubois a écrit :Alors je voudrais savoir comment excecutée la ligne de comande 7za directement dans mon script sans passé par ta fonction
Récupérez le code de la fonction _Add7zaExe() qu'il vous suffit de rajouter au votre ...
Mais si vous ne fournissez pas 7za.exe le problème sera le même.

Autre solution, les machines sur lesquelles vous testez le script sont en compte limité et ne peuvent effectuer l'opération sans droits spécifique !

N'ayant pas plus d'informations à ma disposition, je ne peut vous suggérer que ceci.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#23

Message par jujubois »

Dans mon script je fais

Code : Tout sélectionner

$7zaPath = @TempDir & "\7za.exe"
$Archive = @ScriptDir & "\archive.7z"
 FileInstall("7za.exe",@TempDir & "\7za.exe")
FileInstall permet bien d inclure quand je le compile ?? non ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#24

Message par Tlem »

jujubois a écrit :FileInstall permet bien d inclure quand je le compile ?? non ?
Oui.

Vérifier après le lancement du script si vous avez bien dans le répertoire @TempDir le programme 7za.exe.
Au mieux, rajouter une condition de test avec la commande de compression :

Code : Tout sélectionner

If Not Fileexists(@TempDir & "\7za.exe") Then
    MsgBox(16,"Erreur","Le programme de compression n'à pas été trouvé !")
EndIf
Juste au cas ou ... Le programme 7za.exe ce trouve bien dans le même répertoire que le script .au3 avant la compilation ?
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#25

Message par jujubois »

Oui il se trouve bien dans le meme rep !

Merci je rajoute le test ^^ je referai un test demain :mrgreen:
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#26

Message par jujubois »

Et me revoila looool

Bonjour bonjour

Alors j'ai testé et le test passe bien mais toujours l'erreur au moment de la compression mais j'ai remarqué quelque chose !

L'erreur se produit sur les postes qui n'ont pas Autoit... :/

Alors j'ai peut etre oublié d inclure quelque chose ???
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#27

Message par Tlem »

Quel OS ?
Le script effectue t-il l'autre partie du code (Le bargraph) ?
Le processus Outlook se ferme t-il correctement ?
Le fichier .pst est-il copié dans la destination ?

Autant de questions qui vous apporterons des éléments de réponse.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#28

Message par jujubois »

je post mon code complet

Code : Tout sélectionner

#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <GUIConstants.au3>

HotKeySet("²", "endscript")
#NoTrayIcon

$Src = @UserProfileDir & "\Local Settings\Application Data\Microsoft\Outlook\"
DirCreate (@ScriptDir  & "\" & @UserName & "_" & @YEAR & @MON & @MDAY );
$Dst = @ScriptDir  & "\" & @UserName & "_" & @YEAR & @MON & @MDAY

$7zaPath = @TempDir & "\7za.exe"
$Archive = @ScriptDir & "\" & @UserName & "_" & @YEAR & @MON & @MDAY & ".7z"
$Outlook = "non"

FileInstall("7za.exe",@TempDir & "\7za.exe")

If Not Fileexists(@TempDir & "\7za.exe") Then
    MsgBox(16,"Erreur","Le programme de compression n'à pas été trouvé !")
    exit
EndIf


;===============================================================================
;===============================================================================

Func _Extract7zaExe($7zaPath, $Archive, $OutDir, $Recurse = 0, $Filter = "*.*")
    If $Recurse = 1 Then
        $Recurse = ' -r '
        $Extract = 'x'
    Else
        $Recurse = ''
        $Extract = 'e'
    EndIf
    ShellExecuteWait($7zaPath, $Extract & ' "' & $Archive & '" -o"' & $OutDir & '" ' & $Filter & $Recurse & ' -y', "", "", @SW_HIDE)
    $error = @error
    If $error Then
        Return 0
    Else
        Return 1
    EndIf
EndFunc   ;==>_Extract7zaExe

;===============================================================================

Func _Add7zaExe($7zaPath, $Archive, $InDir, $Recurse = 0, $Filter = "*.*")
        $array = StringSplit($Archive, ".")
        $Type = StringTrimLeft($Archive, StringLen($array[1])+1)
    If $Type = "7Z" Or $Type = "zip" Or $Type = "gzip" Or $Type = "bzip2" Or $Type = "tar" Then
        If FileExists($InDir & '' & $Filter) Then
            If $Recurse = 1 Then
                $Recurse = ' -r '
            Else
                $Recurse = ''
            EndIf
            ShellExecuteWait($7zaPath, 'a -t' & $Type & ' "' & $Archive & '" "' & $InDir & '' & $Filter & '"' & $Recurse, "", "", @SW_HIDE)
            $error = @error
            If $error Then
                Return 0
            Else
                Return 1
            EndIf
        Else
            Return 0
        EndIf
    Else
        Return 0
    EndIf
EndFunc   ;==>_Add7zaExe

;===============================================================================

Func _CMD7zaExe($7zaPath, $sCMDLine)
    ShellExecuteWait($7zaPath, $sCMDLine, "", "", @SW_HIDE)
    $error = @error
    If $error Then
        Return 0
    Else
        Return 1
    EndIf
EndFunc   ;==>_CMD7zaExe

;===============================================================================
;===============================================================================


If Not @Compiled Then
    MsgBox(16, "Erreur", "Le script doit être compiler pour fonctionner.")
    Exit
EndIf

If $CMDLINE[0] Then
    If $CMDLINE[1] = "S" Then
        sleep(1000)  
        
        ;  MsgBox(262144,"Info","Cette boite de dialogue est" & @CRLF & _
       ; "générée par la 2ieme instance du script.")
       
        While ProcessExists("outlook.exe")
        ProcessClose("outlook.exe")
        $Outlook = "oui"
        Sleep(5000)
        WEnd
       
        If FileCopy($Src, $Dst, 9) Then
            ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Compression en cours ...")
            $Res = _Add7zaExe($7zaPath, $Archive, $Dst & "\" , 1)
            ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Compression terminée ...")
            sleep(1000) 
            If $Res = 0 Then 
                MsgBox(64,"Erreur Archive", "Erreur lors de la création de l'archive") 
                Exit
            Else
                ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Sauvegarde terminée ...")
                sleep(1000) 
                If $Outlook = "oui" Then
                    ShellExecute("outlook.exe")
                EndIf
                FileDelete(@TempDir & "\7za.exe")
                Exit
            EndIf
        Else
            MsgBox(64,"Erreur Copie", "Erreur lors de la copie") 
            Exit
        EndIf
        
        
        Exit
    EndIf
EndIf


$Ca = GUICreate ( "OutlookBackupTool" , 250 , 46 , -1 , -1 , $WS_POPUP,$WS_EX_TOPMOST+$WS_EX_WINDOWEDGE+$WS_EX_DLGMODALFRAME)
GUISetBkColor ( 0x000000 , $Ca )
$Da = GUICtrlCreateLabel ("Sauvegarde Outlook en cours ...",  23, -1, 250,23)
GuiCtrlCreateGraphic(-1, 1, 252,45,$SS_SUNKEN)
GUICtrlSetColor(-1, 0XFFFFFF)
GUICtrlSetColor ( $Da, 0XFFFFFF)
GUICtrlSetFont ($Da, "12" , "50" , "" , "Courrier New")
GUICtrlCreateGraphic(1, 23, 250,20)
GUICtrlSetColor(-1, 0x007F00)
GuiSetState(@SW_SHOW)


$Pid = Run(@ScriptName & ' S')
AdlibEnable("_Test2ndInstance")
_SliderRight()


Func _SliderRight()
        Local $newcolor,$color = 0x050000
    For $m = 0 To 245 Step 5
        $newcolor += $color
        $ba = GUICtrlCreateLabel( "", $m, 25, 4,16)
        GUICtrlSetBkColor($ba, $newcolor)
        Sleep(50)
    Next
     _SliderLeft()
EndFunc

Func _SliderLeft()
    Local $backcolor,$color = 0x050000
    For $m = 245 To 0 Step -5
        $backcolor += $color  
        $ba = GUICtrlCreateLabel( "", $m, 25, 4,16)
        GUICtrlSetBkColor($ba, $backcolor)
        Sleep(50)
    Next
    _SliderRight()
EndFunc

Func _Test2ndInstance()
    If Not ProcessExists($Pid) Then Exit
EndFunc
    
Func endscript()
    While ProcessExists("7za.exe")
    ProcessClose("7za.exe")
    Sleep(5000)
    WEnd
    
    Exit
EndFunc
Test effectué sur un pc XP et Vista ayant Autoit d'installé, ça fonctionne nikel

Test effectué sur des pc Vista sans Autoit, tout se lance bien la copie s'effectué bien et au moment de la compression j ai l erreur du MsgBox !

voila j vais essayé de voir ça cette ap midi
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#29

Message par ani »

bonjour jujubois

ci-dessous vous créez une variable de destination pour 7za.exe
$7zaPath = @TempDir & "\7za.exe"

Pourquoi ne pas l'indiquer dans le fileinstall ?
FileInstall("7za.exe",@TempDir & "\7za.exe")

FileInstall, fonctionne de cette manière
"7za.exe" erreur, exemple "c:\7za.exe", le 7za se trouve sur le C, qui sera installé dans l'exe lors de la compilation, si vous laissez tel quel vous obtiendrez ce message d'erreur Le programme de compression n'à pas été trouvé !
Correction
FileInstall("c:\7za.exe",$7zaPath)


je perçois aussi quelque petite erreur au niveau d'une boucle while processexist, indiquez plutôt
Si le processus existe alors
fermer le processus
dort 5seconde
fin de condition

Ligne 99
If processExist("outlook") then
...
...
endif

idem pour la fonction endscript


voilàvoilà
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#30

Message par jujubois »

Merci pour tes modif. que j ai realisé mais j ai toujours le même pb.... sur les pc qui n ont pas autoit ....

Code à jour :

Code : Tout sélectionner

#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <GUIConstants.au3>

HotKeySet("²", "endscript")
#NoTrayIcon

$Src = @UserProfileDir & "\Local Settings\Application Data\Microsoft\Outlook\"
DirCreate (@ScriptDir  & "\" & @UserName & "_" & @YEAR & @MON & @MDAY );
$Dst = @ScriptDir  & "\" & @UserName & "_" & @YEAR & @MON & @MDAY

$7zaPath = @TempDir & "\7za.exe"
$Archive = @ScriptDir & "\" & @UserName & "_" & @YEAR & @MON & @MDAY & ".7z"
$Outlook = "non"

FileInstall("c:\7za.exe",$7zaPath)

If Not Fileexists($7zaPath) Then
    MsgBox(16,"Erreur","Le programme de compression n'à pas été trouvé !")
    exit
EndIf


;===============================================================================
;===============================================================================

Func _Extract7zaExe($7zaPath, $Archive, $OutDir, $Recurse = 0, $Filter = "*.*")
    If $Recurse = 1 Then
        $Recurse = ' -r '
        $Extract = 'x'
    Else
        $Recurse = ''
        $Extract = 'e'
    EndIf
    ShellExecuteWait($7zaPath, $Extract & ' "' & $Archive & '" -o"' & $OutDir & '" ' & $Filter & $Recurse & ' -y', "", "", @SW_HIDE)
    $error = @error
    If $error Then
        Return 0
    Else
        Return 1
    EndIf
EndFunc   ;==>_Extract7zaExe

;===============================================================================

Func _Add7zaExe($7zaPath, $Archive, $InDir, $Recurse = 0, $Filter = "*.*")
        $array = StringSplit($Archive, ".")
        $Type = StringTrimLeft($Archive, StringLen($array[1])+1)
    If $Type = "7Z" Or $Type = "zip" Or $Type = "gzip" Or $Type = "bzip2" Or $Type = "tar" Then
        If FileExists($InDir & '' & $Filter) Then
            If $Recurse = 1 Then
                $Recurse = ' -r '
            Else
                $Recurse = ''
            EndIf
            ShellExecuteWait($7zaPath, 'a -t' & $Type & ' "' & $Archive & '" "' & $InDir & '' & $Filter & '"' & $Recurse, "", "", @SW_HIDE)
            $error = @error
            If $error Then
                Return 0
            Else
                Return 1
            EndIf
        Else
            Return 0
        EndIf
    Else
        Return 0
    EndIf
EndFunc   ;==>_Add7zaExe

;===============================================================================

Func _CMD7zaExe($7zaPath, $sCMDLine)
    ShellExecuteWait($7zaPath, $sCMDLine, "", "", @SW_HIDE)
    $error = @error
    If $error Then
        Return 0
    Else
        Return 1
    EndIf
EndFunc   ;==>_CMD7zaExe

;===============================================================================
;===============================================================================


If Not @Compiled Then
    MsgBox(16, "Erreur", "Le script doit être compiler pour fonctionner.")
    Exit
EndIf

If $CMDLINE[0] Then
    If $CMDLINE[1] = "S" Then
        sleep(1000)  
        
        ;  MsgBox(262144,"Info","Cette boite de dialogue est" & @CRLF & _
       ; "générée par la 2ieme instance du script.")
       
        If ProcessExists("outlook.exe") Then
        ProcessClose("outlook.exe")
        $Outlook = "oui"
        Sleep(5000)
        EndIf
       
        If FileCopy($Src, $Dst, 9) Then
            ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Compression en cours ...")
            $Res = _Add7zaExe($7zaPath, $Archive, $Dst & "\" , 1)
            ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Compression terminée ...")
            sleep(1000) 
            If $Res = 0 Then 
                MsgBox(64,"Erreur Archive", "Erreur lors de la création de l'archive") 
                Exit
            Else
                ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Sauvegarde terminée ...")
                sleep(1000) 
                If $Outlook = "oui" Then
                    ShellExecute("outlook.exe")
                EndIf
                FileDelete($7zaPath)
                Exit
            EndIf
        Else
            MsgBox(64,"Erreur Copie", "Erreur lors de la copie") 
            Exit
        EndIf
        
        
        Exit
    EndIf
EndIf


$Ca = GUICreate ( "OutlookBackupTool" , 250 , 46 , -1 , -1 , $WS_POPUP,$WS_EX_TOPMOST+$WS_EX_WINDOWEDGE+$WS_EX_DLGMODALFRAME)
GUISetBkColor ( 0x000000 , $Ca )
$Da = GUICtrlCreateLabel ("Sauvegarde Outlook en cours ...",  23, -1, 250,23)
GuiCtrlCreateGraphic(-1, 1, 252,45,$SS_SUNKEN)
GUICtrlSetColor(-1, 0XFFFFFF)
GUICtrlSetColor ( $Da, 0XFFFFFF)
GUICtrlSetFont ($Da, "12" , "50" , "" , "Courrier New")
GUICtrlCreateGraphic(1, 23, 250,20)
GUICtrlSetColor(-1, 0x007F00)
GuiSetState(@SW_SHOW)


$Pid = Run(@ScriptName & ' S')
AdlibEnable("_Test2ndInstance")
_SliderRight()


Func _SliderRight()
        Local $newcolor,$color = 0x050000
    For $m = 0 To 245 Step 5
        $newcolor += $color
        $ba = GUICtrlCreateLabel( "", $m, 25, 4,16)
        GUICtrlSetBkColor($ba, $newcolor)
        Sleep(50)
    Next
     _SliderLeft()
EndFunc

Func _SliderLeft()
    Local $backcolor,$color = 0x050000
    For $m = 245 To 0 Step -5
        $backcolor += $color  
        $ba = GUICtrlCreateLabel( "", $m, 25, 4,16)
        GUICtrlSetBkColor($ba, $backcolor)
        Sleep(50)
    Next
    _SliderRight()
EndFunc

Func _Test2ndInstance()
    If Not ProcessExists($Pid) Then Exit
EndFunc
    
Func endscript()
    If ProcessExists("7za.exe") Then
    ProcessClose("7za.exe")
    Sleep(5000)
    EndIf
    
    Exit
EndFunc
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#31

Message par ani »

ok, mais quel erreur tu obtiend ?
le 7za se trouve bien sur le C ?

je vais mettre çà sur clé et testé au cyber ^^
je reviend d'ici 20 minutes ^^
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#32

Message par jujubois »

Au moment de la compression j ai l erreur du MsgBox ! "Erreur lors de la création de l'archive"

Merci de ton test au cyber ^^
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#33

Message par ani »

ok, alors le lien du 7za n'est pas bon :o

exemple chez moi 7za se trouve sur le G:\7-zip\
donc dans le FileInstall on indique FileInstall("G:\7-zip\7za.exe",$7zaPath)

Le test effectué au cyber, affiche un msg d'erreur (erreur de copie)
Le outlook utilisé est outlook express :(

mais il crée bien un dossier avec le nom de l'utlisateur/année/mois/jour

voilàvoilà ^^
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#34

Message par jujubois »

Oui il est fait pour marché avec Outllook et pas le express ^^

mais moi mon fichier 7za.exe, il est direct sur c:\ donc C:\7za.exe ( je veux bien essayé en le mettant dans un dossier )

et le script fonctionne sur des machines qui ont autoit d installé mais pas le contraire ....

Merci

[edit]

là chez moi ( donc autoit installé et j ai jamais eu de pb ici ) , j ai mis 7za.exe dans C:\7za qui me donne FileInstall("C:\7za\7za.exe",$7zaPath) ça fonctionne

Mais si je prend la main sur un poste de taff sans autotit et test le meme exe que chez moi ; erreur du MsgBox ! "Erreur lors de la création de l'archive"
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#35

Message par jujubois »

Salut à tous

voici mon nouveau code et là ça marche pour tout le monde^^ et pourtant je ne vois pas la difference avec le precedent .... je procede de maniere differente mais dans le principe c est pareil !

Sinon je souhaiterais avoir la progress pas au milieu de mon écran mais en bas à droite , c'est possible ??

merci

Code : Tout sélectionner

#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <GUIConstants.au3>

HotKeySet("²", "endscript")
#NoTrayIcon

$Src = @UserProfileDir & "\Local Settings\Application Data\Microsoft\Outlook\"
$Dst = @ScriptDir  & "\" & @UserName & "_" & @YEAR & @MON & @MDAY

$7zaPath = @TempDir & "\7za.exe"
$Archive = @ScriptDir & "\" & @UserName & "_" & @YEAR & @MON & @MDAY & ".7z"
$Outlook = "non"

FileInstall("c:\7za\7za.exe",$7zaPath)

If Not Fileexists($Src) Then
    MsgBox(16,"Erreur","Aucun profil Outlook trouvé !")
    exit
Else
    DirCreate (@ScriptDir  & "\" & @UserName & "_" & @YEAR & @MON & @MDAY )
EndIf

If Not Fileexists($7zaPath) Then
    MsgBox(16,"Erreur","Le programme de compression n'à pas été trouvé !")
    exit
EndIf


$sCMDLine = " a -r " & '"' &$Archive& '"' & " " & '"' & $Dst & '"'

;===============================================================================

Func _CMD7zaExe($7zaPath, $sCMDLine)
    If  Fileexists($Archive) Then
        FileDelete($Archive)
    EndIf
    
    ShellExecuteWait($7zaPath, $sCMDLine, "", "", @SW_HIDE)
    $error = @error
    
    If $error Then
        Return 0
    Else
        Return 1
    EndIf
EndFunc   ;==>_CMD7zaExe

;===============================================================================



If Not @Compiled Then
    MsgBox(16, "Erreur", "Le script doit être compiler pour fonctionner.")
    Exit
EndIf

If $CMDLINE[0] Then
    If $CMDLINE[1] = "S" Then
        sleep(1000)  
       
        If ProcessExists("outlook.exe") Then
            ProcessClose("outlook.exe")
            $Outlook = "oui"
            Sleep(5000)
        EndIf
    
        ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Copie en cours ...")
        
        If FileCopy($Src, $Dst, 9) Then
            
            ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Copie terminée ...")
            sleep(1000)
            
            If $Outlook = "oui" Then
                ShellExecute("outlook.exe")
            EndIf
        
            ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Compression en cours ...")
            $Res = _CMD7zaExe($7zaPath, $sCMDLine)
            ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Compression terminée ...")
            sleep(1000) 
            
            If $Res = 0 Then 
                MsgBox(64,"Erreur Archive", "Erreur lors de la création de l'archive") 
                Exit
            Else
        
            ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Sauvegarde terminée ...")
            sleep(1000) 
            FileDelete($7zaPath)
            DirRemove (@ScriptDir  & "\" & @UserName & "_" & @YEAR & @MON & @MDAY,1)
            Exit
        EndIf
        Else
            MsgBox(64,"Erreur Copie", "Erreur lors de la copie") 
            Exit
        EndIf
                
        Exit
    
    EndIf
EndIf


$Ca = GUICreate ( "OutlookBackupTool" , 250 , 46 , -1 , -1 , $WS_POPUP,$WS_EX_TOPMOST+$WS_EX_WINDOWEDGE+$WS_EX_DLGMODALFRAME)
GUISetBkColor ( 0x000000 , $Ca )
$Da = GUICtrlCreateLabel ("Sauvegarde Outlook en cours ...",  23, -1, 250,23)
GuiCtrlCreateGraphic(-1, 1, 252,45,$SS_SUNKEN)
GUICtrlSetColor(-1, 0XFFFFFF)
GUICtrlSetColor ( $Da, 0XFFFFFF)
GUICtrlSetFont ($Da, "12" , "50" , "" , "Courrier New")
GUICtrlCreateGraphic(1, 23, 250,20)
GUICtrlSetColor(-1, 0x007F00)
GuiSetState(@SW_SHOW)


$Pid = Run(@ScriptName & ' S')
AdlibEnable("_Test2ndInstance")
_SliderRight()


Func _SliderRight()
        Local $newcolor,$color = 0x050000
    For $m = 0 To 245 Step 5
        $newcolor += $color
        $ba = GUICtrlCreateLabel( "", $m, 25, 4,16)
        GUICtrlSetBkColor($ba, $newcolor)
        Sleep(50)
    Next
     _SliderLeft()
EndFunc

Func _SliderLeft()
    Local $backcolor,$color = 0x050000
    For $m = 245 To 0 Step -5
        $backcolor += $color  
        $ba = GUICtrlCreateLabel( "", $m, 25, 4,16)
        GUICtrlSetBkColor($ba, $backcolor)
        Sleep(50)
    Next
    _SliderRight()
EndFunc

Func _Test2ndInstance()
    If Not ProcessExists($Pid) Then Exit
EndFunc
    
Func endscript()
    
    If ProcessExists("7za.exe") Then
        ProcessClose("7za.exe")
        Sleep(5000)
    EndIf
    
    If  Fileexists(@ScriptDir  & "\" & @UserName & "_" & @YEAR & @MON & @MDAY) Then
        DirRemove (@ScriptDir  & "\" & @UserName & "_" & @YEAR & @MON & @MDAY,1)
    EndIf

    If  Fileexists($Archive) Then
        FileDelete($Archive)
    EndIf
    
    Exit
    
EndFunc
Modifié en dernier par jujubois le mer. 04 juin 2008 20:55, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#36

Message par Tlem »

jujubois a écrit :Sinon je souhaiterais avoir la progress pas au milieu de mon écran mais en bas à droite , c'est possible ??
Oui
Modifiez les valeurs -1 de la création de la fenêtre (GUICreate) et remplacez-lez par les coordonnées.

Attention sur le PC du client la résolution n'est peut être pas la même que sur votre PC.
Donc récupérez la résolution en cours (@DesktopHeight et @DesktopWidth), et retranchez les valeurs nécessaires.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#37

Message par jujubois »

Merci j vais regarder ça ^^

sinon encore une question ma fonction endscript() n'arrete pas le script hmmm pourquoi ?


merci
Julien
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#38

Message par Tlem »

jujubois a écrit :sinon encore une question ma fonction endscript() n'arrete pas le script hmmm pourquoi ?
A première vue tout semble normal.
Mais si le script bloque sur une des trois actions de la fonction endscript alors il ne se terminera pas.
Voyez de ce coté là ...
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [..] Script Sauvegarde PSt

#39

Message par jujubois »

Oui dac :)

Sinon pour le positionnement de la progress bar c 'est tout bon merci ^^

Je tiens à tous vous remercier pour votre aide en tout cas vous êtes bien patient :lol:

Allez je file au taff et reviens vers vous s'il me reste une question ^^ :oops:
jujubois
Niveau 3
Niveau 3
Messages : 44
Enregistré le : mer. 07 mai 2008 23:06
Status : Hors ligne

Re: [R] Script Sauvegarde PSt

#40

Message par jujubois »

Salut tout le monde

Jaurais une p'tite question par hasard non autoit , j ai deja cherché mais sans succés, est ce que quelqu un sait si le chemin de fichier de données outlook est stocké quelque part, registre ou autre

Car j ai un cas particulier si quelqu un le stock sur une partition autre de C:\....

Merci
Tchao, Julien
Répondre