[R] Script Sauvegarde PSt
Posté : mer. 21 mai 2008 14:16
Bonjour à tous
Quelqu'un aurait il fait un script permettant de savegarder un PST
Mrci
Quelqu'un aurait il fait un script permettant de savegarder un PST
Mrci
Communauté Francophone AutoIt
https://autoitscript.fr/forum/
Rhhhooo mais non...jujubois a écrit :hmm sinon Tlem t'as va me trouver bien chiant ...
Il y à plus basic, mais je préfère ça :jujubois a écrit :mais te serait il possible de me réaliser un exemple rapide et basic
Code : Tout sélectionner
$Src = @UserProfileDir & "Local Settings\Application Data\Microsoft\Outlook\Outlook.pst"
$Dst = @HomeDrive & "\Sauvegarde PST"
If FileCopy($Src, $Dst, 8) Then
MsgBox(64, "Copie", "Copie éffectuée avec succés")
Else
MsgBox(16, "Copie", "Erreur lors de la copie")
EndIf
Code : Tout sélectionner
$Src = @UserProfileDir & "\Local Settings\Application Data\Microsoft\Outlook\"
$Dst = @ScriptDir & "\Sauvegarde PST"
If FileCopy($Src, $Dst, 8) Then
MsgBox(64, "Copie", "Copie éffectuée avec succés")
Else
MsgBox(16, "Copie", "Erreur lors de la copie")
EndIf
#include <7zaExe.au3>
$7zaPath = @ScriptDir & "\7za.exe"
$Archive = @ScriptDir & "\archive.7z"
$Res = _Add7zaExe($7zaPath, $Archive, @ScriptDir & "\Sauvegarde PST", 1)
If $Res = 0 Then MsgBox(64,"Erreur", "Erreur lors de la création de l'archive")
Code : Tout sélectionner
#include <7zaExe.au3>
$Src = @UserProfileDir & "\Local Settings\Application Data\Microsoft\Outlook\"
DirCreate (@ScriptDir & "\Sauvegarde PST");
$Dst = @ScriptDir & "\Sauvegarde PST"
$7zaPath = @TempDir & "\7za.exe"
$Archive = @ScriptDir & "\archive.7z"
#include <GUIConstants.au3>
$Ca = GUICreate ( "" , 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)
FileInstall("7za.exe",@TempDir & "\7za.exe")
_SliderRight()
Func _getmsg()
While 1
If Not ProcessExists("outlook.exe")Then ExitLoop
ProcessClose("outlook.exe")
Sleep(5000)
WEnd
If FileCopy($Src, $Dst, 9) Then
$Res = _Add7zaExe($7zaPath, $Archive, @ScriptDir & "\Sauvegarde PST\", 1)
If $Res = 0 Then
MsgBox(64,"Erreur", "Erreur lors de la création de l'archive") Exit
Else
Run("C:\Program Files\Microsoft Office\Office12\outlook.exe")
FileDelete(@TempDir & "\7za.exe")
Exit
EndIf
Else
MsgBox(16, "Copie", "Erreur lors de la copie") Exit
EndIf
EndFunc
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
_getmsg()
_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
_getmsg()
_SliderRight()
EndFunc
Code : Tout sélectionner
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <GUIConstants.au3>
#include <7zaExe.au3>
Code : Tout sélectionner
While 1
If Not ProcessExists("outlook.exe")Then ExitLoop
ProcessClose("outlook.exe")
Sleep(5000)
WEnd
Code : Tout sélectionner
While ProcessExists("outlook.exe")
ProcessClose("outlook.exe")
Sleep(5000)
WEnd
Code : Tout sélectionner
ShellExecute("outlook.exe")
MerciPour une meilleure efficacité, vous devriez sans doute mettre le slideBar en traitement principale, et lancer _getmsg avec AdlibAnable pour pouvoir faire un traitement parallèle et non séquentiel de votre code.
Code : Tout sélectionner
$Src = @UserProfileDir & "\Local Settings\Application Data\Microsoft\Outlook\"
DirCreate (@ScriptDir & "\Sauvegarde PST");
$Dst = @ScriptDir & "\Sauvegarde PST"
$7zaPath = @TempDir & "\7za.exe"
$Archive = @ScriptDir & "\archive.7z"
#include <GUIConstants.au3>
$Ca = GUICreate ( "" , 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)
FileInstall("7za.exe",@TempDir & "\7za.exe")
AdlibEnable(_getmsg(),"0")
_SliderRight()
Func _getmsg()
While ProcessExists("outlook.exe")
ProcessClose("outlook.exe")
Sleep(5000)
WEnd
If FileCopy($Src, $Dst, 9) Then
$Res = _Add7zaExe($7zaPath, $Archive, @ScriptDir & "\Sauvegarde PST\", 1)
If $Res = 0 Then
MsgBox(64,"Erreur", "Erreur lors de la création de l'archive")
Exit
Else
ShellExecute("outlook.exe")
FileDelete(@TempDir & "\7za.exe")
Exit
EndIf
Else
MsgBox(16, "Copie", "Erreur lors de la copie")
Exit
EndIf
EndFunc
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
Code : Tout sélectionner
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <GUIConstants.au3>
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) ; C'est juste pour la demo.
MsgBox(262144,"Info","Cette boite de dialogue est" & @CRLF & _
"générée par la 2ieme instance du script.")
; C'est ici que vous devez lancer votre fonction de sauvegarde.
Exit
EndIf
EndIf
$Ca = GUICreate ( "" , 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
Code : Tout sélectionner
If $CMDLINE[0] Then
If $CMDLINE[1] = "S" Then
Code : Tout sélectionner
$Pid = Run(@ScriptName & ' S')
AdlibEnable("_Test2ndInstance")
Code : Tout sélectionner
If $CMDLINE[0] Then
If $CMDLINE[1] = "S" Then
Code : Tout sélectionner
$Pid = Run(@ScriptName & ' S')
AdlibEnable("_Test2ndInstance")
Oui c'est possible :jujubois a écrit :Sinon après j aurai une question ... je souhaiterais changer le texte de la progress bar selon les état ou je me trouve genre " copie en cours " et après " compression en cours" c'est possible tu crois ?
Code : Tout sélectionner
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <GUIConstants.au3>
If Not @Compiled Then
MsgBox(16, "Erreur", "Le script doit être compiler pour fonctionner.")
Exit
EndIf
Dim $Da
If $CMDLINE[0] Then
If $CMDLINE[1] = "S" Then
; Les lignes qui suivent sont juste pour la demo.
sleep(2000)
ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Compression en cours ...")
sleep(2000)
ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Compression terminée ...")
sleep(2000)
ControlSetText ( "OutlookBackupTool", "", "[CLASS:Static; INSTANCE:1]", "Sauvegarde terminée ...")
sleep(2000)
Exit
EndIf
EndIf
$Ca = GUICreate ( "OutlookBackupTool" , 250 , 46 , -1 , 50 , $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