Skip to content

Commit

Permalink
1.1.0-beta
Browse files Browse the repository at this point in the history
  • Loading branch information
PaysanBarbare committed Dec 16, 2022
1 parent 1b74a17 commit 16097da
Show file tree
Hide file tree
Showing 20 changed files with 2,278 additions and 728 deletions.
730 changes: 514 additions & 216 deletions BAO.au3

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions Logiciels/Matériel.ini
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@ lien=https://crystalmark.info/redirect.php?product=CrystalDiskMark
extension=zip
domaine=https://osdn.net/

[Display Driver Uninstaller]
lien=https://ftp.nluug.nl/pub/games/PC/guru3d/ddu/[Guru3D.com]-DDU.zip

[FurMark]
lien=https://geeks3d.com/furmark/downloads/
extension=exe
Expand Down
Binary file modified Outils/Smartmontools/smartctl.exe
Binary file not shown.
6 changes: 2 additions & 4 deletions UDF/_BureauDistant.au3
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,10 @@ This file is part of "Boîte A Outils"
Func _BureauDistant()

Local $programFilesDir = RegRead("HKLM64\SOFTWARE\Microsoft\Windows\CurrentVersion", "ProgramFilesDir")
Local $sAgent = IniRead($sConfig, "BureauDistant", "Agent", "DWAgent")
Local $sMailBD = IniRead($sConfig, "BureauDistant", "Mail", "")

If $sMailBD <> "" Then

If StringLeft($sNom, 4) <> "Tech" And FileExists($programFilesDir & "\DWAgent\runtime\dwagent.exe") Then
If($iModeTech = 0) And FileExists($programFilesDir & "\DWAgent\runtime\dwagent.exe") Then
If(_FichierCacheExist("BureauDistant") = 1) Then
_FileWriteLog($hLog, 'Désinstallation DWAgent')
_UninstallDWAgent()
Expand All @@ -39,7 +37,7 @@ Func _BureauDistant()
_DesactivationFondecran()
EndIf
Else
If(StringLeft($sNom, 4) <> "Tech") Then
If($iModeTech = 0) Then
_FileWriteLog($hLog, 'Activation du bureau distant')
_ChangerEtatBouton($iIDAction, "Patienter")
If MapExists($aMenu, $sAgent) Then
Expand Down
1 change: 1 addition & 0 deletions UDF/_Desinfection.au3
Original file line number Diff line number Diff line change
Expand Up @@ -169,6 +169,7 @@ Func _Desinstalleur()

While $idMsgDes <> $GUI_EVENT_CLOSE And $idMsgDes <> $iIDBQuit

_UpdateEveryMin()
Switch $idMsgDes

Case $iIDBDes
Expand Down
119 changes: 70 additions & 49 deletions UDF/_Desinstallation.au3
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ This file is part of "Boîte A Outils"
along with Boîte A Outils. If not, see <https://www.gnu.org/licenses/>.
#ce

Func _DesinstallerBAO($sFTPAdresse, $sFTPUser, $sFTPPort, $sFTPDossierRapports)
Func _DesinstallerBAO()

Local $iIDButtonDesinstaller, $iIDButtonAnnuler, $iAnnul = False, $iDeleteGUI = False, $eGet, $iRapport = 0, $iRapportInsc = 0, $iEteindre = 0, $sInput, $iIDInputInfo, $sProgDes, $t = 0, $sNomFichier = StringReplace(StringLeft(_NowCalc(),10), "/", "") & " " & $sNom & " - Rapport intervention.bao"
Local $iIDButtonDesinstaller, $iIDButtonAnnuler, $iAnnul = False, $iDeleteGUI = False, $eGet, $iRapport = 0, $iRapportInsc = 0, $iEteindre = 0, $sInput, $iIDInputInfo, $sProgDes, $t = 0, $sNomFichier = StringReplace(StringLeft(_NowCalc(),10), "/", "") & " " & $sNom & " - " & @ComputerName & " - Rapport intervention.bao"
Local $sNomRapportComplet = @LocalAppDataDir & "\bao\" & $sNomFichier

if $sNom <> "" Then
Expand Down Expand Up @@ -51,7 +51,10 @@ Func _DesinstallerBAO($sFTPAdresse, $sFTPUser, $sFTPPort, $sFTPDossierRapports)
$iIDButtonDesinstaller = GUICtrlCreateButton("Désinstaller", 100, 80, 90, 25, $BS_DEFPUSHBUTTON)
$iIDButtonAnnuler = GUICtrlCreateButton("Annuler", 210, 80, 90, 25)


If $iModeTech = 1 Then
GUICtrlSetState($iIDCheckRapport, $GUI_DISABLE)
GUICtrlSetState($iIDCheckComplet, $GUI_DISABLE)
EndIf

GUISetState(@SW_SHOW)

Expand Down Expand Up @@ -94,59 +97,68 @@ Func _DesinstallerBAO($sFTPAdresse, $sFTPUser, $sFTPPort, $sFTPDossierRapports)
$sSplashTxt = "Enregistrement des changements apportés"
SplashTextOn("Désinstallation de BAO", $sSplashTxt, $iSplashWidth, $iSplashHeigh, $iSplashX, $iSplashY, $iSplashOpt, "", $iSplashFontSize)

_FileWriteLog($hLog, "Enregistrement des changements saisi dans le champs intervention")
If $iModeTech = 0 Then

_SaveInter()
_FileWriteLog($hLog, "Enregistrement des changements saisi dans le champs intervention")

If $iRapportInsc = 1 Then
_FileWriteLog($hLog, "Inscription automatique des changements logiciels et matériels")
_SaveChangeToInter()
EndIf
_SaveInter()

_FileWriteLog($hLog, "Fermeture des logs")
FileClose($hLog)
If $iRapportInsc = 1 Then
_FileWriteLog($hLog, "Inscription automatique des changements logiciels et matériels")
_SaveChangeToInter()
EndIf

_CompleterRapport($iRapport, $sNomRapportComplet)
_FileWriteLog($hLog, "Fermeture des logs")
FileClose($hLog)

Local $iRetour = 0
_CompleterRapport($iRapport, $sNomRapportComplet)

$sSplashTxt = $sSplashTxt & @LF & "Sauvegarde du rapport"
ControlSetText("Désinstallation de BAO", "", "Static1", $sSplashTxt)
Local $iRetour = 0

If StringLeft(@ScriptDir, 2) <> "\\" Then
Local $nb = 0
Do
$iRetour = _EnvoiFTP($sFTPAdresse, $sFTPUser, $sFTPPort, $sNomRapportComplet, $sFTPDossierRapports & $sNomFichier)
$nb+=1
Until $iRetour <> -1 or $nb = 3
Else
Local $aFileToDel = FileReadToArray(@LocalAppDataDir & "\bao\FichierASupprimer.txt")
If @error = 0 Then
For $sFileToDel In $aFileToDel
FileDelete($sFileToDel)
Next
EndIf
$sSplashTxt = $sSplashTxt & @LF & "Sauvegarde du rapport"
ControlSetText("Désinstallation de BAO", "", "Static1", $sSplashTxt)

EndIf
If StringLeft(@ScriptDir, 2) <> "\\" Then
Local $nb = 0
Do
$iRetour = _EnvoiFTP($sNomRapportComplet, $sFTPDossierRapports & $sNomFichier)
$nb+=1
Until $iRetour <> -1 or $nb = 3
Else
Local $aFileToDel = FileReadToArray(@LocalAppDataDir & "\bao\FichierASupprimer.txt")
If @error = 0 Then
For $sFileToDel In $aFileToDel
FileDelete($sFileToDel)
Next
EndIf

; Sauvegarde du rapport complet sur le pc
FileCopy($sNomRapportComplet, @AppDataCommonDir & "\BAO\" & $sNomFichier, 9)
EndIf

If $iRetour <> 1 Then
FileCopy($sNomRapportComplet, @ScriptDir & "\Rapports\" & @YEAR & "-" & @MON & "\", 9)
$iRetour = 1
EndIf
; Sauvegarde du rapport complet sur le pc
FileCopy($sNomRapportComplet, @AppDataCommonDir & "\BAO\" & $sNomFichier, 9)

if($iRetour = 1) Then
If(_FichierCacheExist("Suivi") And _FichierCache("Suivi") <> 1) Then
_FinIntervention(_FichierCache("Suivi"), $sFTPAdresse, $sFTPUser, $sFTPPort, $sInput)
_SupprimerIDSuivi(_FichierCache("Suivi"))
If $iRetour <> 1 Then
FileCopy($sNomRapportComplet, @ScriptDir & "\Rapports\" & @YEAR & "-" & @MON & "\", 9)
$iRetour = 1
EndIf

if($iRetour = 1) Then
If(_FichierCacheExist("Suivi") And _FichierCache("Suivi") <> 1) Then
_FinIntervention(_FichierCache("Suivi"), $sInput)
;_SupprimerIDSuivi(_FichierCache("Suivi"))
EndIf

If _FichierCacheExist("EnCours") Then
If FileExists(_FichierCache("EnCours")) Then
FileDelete(_FichierCache("EnCours"))
EndIf
EndIf
EndIf
EndIf

$sSplashTxt = $sSplashTxt & @LF & "Suppression des dépendances de BAO"
ControlSetText("Désinstallation de BAO", "", "Static1", $sSplashTxt)
_ReiniBAO($sFTPAdresse, $sFTPUser, $sFTPPort)
_ReiniBAO()
$sSplashTxt = $sSplashTxt & @LF & "Suppression de BAO"
ControlSetText("Désinstallation de BAO", "", "Static1", $sSplashTxt)
_Uninstall($iEteindre)
Expand All @@ -159,7 +171,7 @@ Func _DesinstallerBAO($sFTPAdresse, $sFTPUser, $sFTPPort, $sFTPDossierRapports)
EndIf
EndFunc

Func _ReiniBAO($sFTPAdresse, $sFTPUser, $sFTPPort)
Func _ReiniBAO()

If(_FichierCacheExist("Fondecran") = 1) Then
_ActivationFondecran()
Expand Down Expand Up @@ -195,7 +207,7 @@ Func _ReiniBAO($sFTPAdresse, $sFTPUser, $sFTPPort)

If _FichierCacheExist("Supervision") Then
Local $sFTPDossierCapture = IniRead($sConfig, "FTP", "DossierCapture", "")
_EnvoiFTP($sFTPAdresse, $sFTPUser, $sFTPPort, "", $sFTPDossierCapture & $sNom & ".png", 1)
_EnvoiFTP("", $sFTPDossierCapture & $sNom & ".png", 1)

If StringLeft(@ScriptDir, 2) <> "\\" Then
FileDelete(@ScriptDir & "\Cache\Supervision\" & $sNomCapture)
Expand All @@ -207,7 +219,9 @@ Func _ReiniBAO($sFTPAdresse, $sFTPUser, $sFTPPort)
_UninstallDWAgent()
EndIf

DirRemove(@LocalAppDataDir & "\bao", 1)
If Not DirRemove(@LocalAppDataDir & "\bao", 1) Then
_FileWriteLog($hLog, 'Suppression du dossier "' & @LocalAppDataDir & "\bao" & '" impossible')
EndIf
RegDelete("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce\", "BAO")
_UACEnable()

Expand All @@ -230,11 +244,15 @@ Func _Uninstall($iRep)
FileDelete(@UserProfileDir & "\Downloads\BAO-sfx.exe")
Run(@ComSpec & ' /c del "' & @DesktopDir & '\ZHPCleaner*"', "", @SW_HIDE)

If $sRestauration = 1 Then
If $iModeTech = 0 And $sRestauration = 1 Then
_Restauration($sSociete & " - Fin d'intevervention")
EndIf

If @Compiled And StringLeft(@ScriptDir, 2) = $HomeDrive Then
If $iModeTech = 1 And FileExists(@ScriptDir & "\Rapports") Then
DirCopy(@ScriptDir & "\Rapports", @DesktopDir & "\Rapports", 1)
_Attention("Les rapports ont été sauvegardés sur le bureau")
EndIf
ShellExecute ( @ComSpec , ' /c RMDIR /S /Q "' & FileGetShortName(@ScriptDir) & '"', "" , "", @SW_HIDE )
EndIf

Expand All @@ -256,12 +274,15 @@ EndFunc
; ===============================================================================================================================
Func _ChangerMode()

If(StringLeft($sNom, 4) <> "Tech") Then ;Mode lecture
_FichierCache("Client", -1)
_FichierCache("Client", "Tech " & $sNom)
If($iModeTech = 0) Then
_FichierCache("Technicien", 1)
_FileWriteLog($hLog, 'Passage en mode Technicien')
Else
_FichierCache("Client", -1)
_FichierCache("Client", StringTrimLeft($sNom, 5))
_FichierCache("Technicien", -1)
_FileWriteLog($hLog, 'Passage en mode Client')
_FichierCache("Intervention", -1)
If DirCreate($sDossierRapport) = 0 Then _Erreur("Impossible de créer le dossier '" & $sDossierRapport & "' sur le bureau")
FileCopy(@ScriptDir & "\A copier\*", $sDossierRapport & "\", 8)
EndIf

EndFunc
34 changes: 23 additions & 11 deletions UDF/_FTP.au3
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ This file is part of "Boîte A Outils"
along with Boîte A Outils. If not, see <https://www.gnu.org/licenses/>.
#ce

Func _EnvoiFTP($sFTPAdresse, $sFTPUser, $sFTPPort, $sFichier, $sDossier, $bRemove = 0, $bCheckmdp = 0)
Func _EnvoiFTP($sFichier, $sDossier, $bRemove = 0, $bCheckmdp = 0)

Local $bRetour = 0

Expand Down Expand Up @@ -172,20 +172,22 @@ Func _EnvoiFTP($sFTPAdresse, $sFTPUser, $sFTPPort, $sFichier, $sDossier, $bRemov
Return $bRetour
EndFunc

Func _RecupFTP($sFTPAdresse, $sFTPUser, $sFTPPort, $sFTPDossier)
Func _RecupFTP()

Local $bRetour = 0

If($sFTPAdresse <> "" And $sFTPUser <> "" And $sFTPDossier <> "") Then
If($sFTPAdresse <> "" And $sFTPUser <> "" And $sFTPDossierRapports <> "") Then

If(_FichierCacheExist("FTPRecup") = 0) Then
_FichierCache("FTPRecup", 1)
EndIf

If(_FichierCache("FTPRecup") <> _NowDate()) Then

$sSplashTxt = $sSplashTxt & @LF & "Récupération des rapports sur le FTP/SFTP"
ControlSetText("Initialisation de BAO (SHIFT = démarrage rapide)", "", "Static1", $sSplashTxt)
;$sSplashTxt = $sSplashTxt & @LF & "Récupération des rapports sur le FTP/SFTP"
;ControlSetText("Initialisation de BAO (SHIFT = démarrage rapide)", "", "Static1", $sSplashTxt)
GUICtrlSetData($statusbar, "Téléchargement rapports sur FTP")
GUICtrlSetData($statusbarprogress, 25)

Local $sMdp, $bSVGMdp = 0, $iIdFTP

Expand Down Expand Up @@ -226,6 +228,7 @@ Func _RecupFTP($sFTPAdresse, $sFTPUser, $sFTPPort, $sFTPDossier)

If $sMdp <> "" Then

GUICtrlSetData($statusbarprogress, 50)
; Ajout de BAO dans le pare-feu Windows
RunWait(@ComSpec & " /c " & 'netsh advfirewall firewall delete rule name = "BAO" dir = in', "", @SW_HIDE)
RunWait(@ComSpec & " /c " & 'netsh advfirewall firewall add rule name = "BAO" dir = in action = allow program = "' & @AutoItExe & '" enable = yes', "", @SW_HIDE)
Expand Down Expand Up @@ -264,7 +267,7 @@ Func _RecupFTP($sFTPAdresse, $sFTPUser, $sFTPPort, $sFTPDossier)
_Crypter("ftp", $sMdp, $sFTPUser)
EndIf

_SFTP_DirSetCurrent($hConn, $sFTPDossier)
_SFTP_DirSetCurrent($hConn, $sFTPDossierRapports)
If @error Then
_FileWriteLog($hLog, 'Erreur de récupération des fichiers sur le FTP: ' & @error)
Else
Expand All @@ -274,8 +277,10 @@ Func _RecupFTP($sFTPAdresse, $sFTPUser, $sFTPPort, $sFTPDossier)

If($aFile[0] <> 0) Then

$sSplashTxt = $sSplashTxt & @LF & " " & $aFile[0] & " rapport(s) à récupérer"
ControlSetText("Initialisation de BAO (SHIFT = démarrage rapide)", "", "Static1", $sSplashTxt)
;$sSplashTxt = $sSplashTxt & @LF & " " & $aFile[0] & " rapport(s) à récupérer"
GUICtrlSetData($statusbar, "Téléchargement : " & $aFile[0] & " rapport(s) à récupérer")
GUICtrlSetData($statusbarprogress, 75)
;ControlSetText("Initialisation de BAO (SHIFT = démarrage rapide)", "", "Static1", $sSplashTxt)
_ArrayDelete($aFile, 0)
Sleep(2000)

Expand Down Expand Up @@ -318,15 +323,17 @@ Func _RecupFTP($sFTPAdresse, $sFTPUser, $sFTPPort, $sFTPDossier)
_Crypter("ftp", $sMdp, $sFTPUser)
EndIf

_FTP_DirSetCurrent($hConn, $sFTPDossier)
_FTP_DirSetCurrent($hConn, $sFTPDossierRapports)

Local $sDocY, $sDocM
Local $aFile = _FTP_ListToArray($hConn, 2)

If($aFile[0] <> 0) Then

$sSplashTxt = $sSplashTxt & @LF & " " & $aFile[0] & " rapport(s) à récupérer"
SplashTextOn("", $sSplashTxt, $iSplashWidth, $iSplashHeigh, $iSplashX, $iSplashY, $iSplashOpt, "", $iSplashFontSize)
;$sSplashTxt = $sSplashTxt & @LF & " " & $aFile[0] & " rapport(s) à récupérer"
;SplashTextOn("", $sSplashTxt, $iSplashWidth, $iSplashHeigh, $iSplashX, $iSplashY, $iSplashOpt, "", $iSplashFontSize)
GUICtrlSetData($statusbar, "Téléchargement : " & $aFile[0] & " rapport(s) à récupérer")
GUICtrlSetData($statusbarprogress, 75)
_ArrayDelete($aFile, 0)

For $sFTPFile in $aFile
Expand All @@ -350,7 +357,12 @@ Func _RecupFTP($sFTPAdresse, $sFTPUser, $sFTPPort, $sFTPDossier)
_FTP_Close($hConn)
_FTP_Close($hOpen)
EndIf
GUICtrlSetData($statusbarprogress, 100)
_SupprimerSuivisAnciens()
EndIf
GUICtrlSetData($statusbar, "")
GUICtrlSetData($statusbarprogress, 0)

EndIf
EndIf

Expand Down
3 changes: 1 addition & 2 deletions UDF/_Infosys.au3
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,6 @@ Func _RapportInfos($iReset = 0)
Else
$hEntete = FileOpen($sFileEntete, 1) ; append
EndIf
FileWriteLine($hEntete, '; Ce fichier peut être lu avec "Lecteur-bao.exe" présent dans le dossier "Outils" de BAO')
FileWriteLine($hEntete, "")
FileWriteLine($hEntete, "[CUSTOMER]" & $sNom & "[/CUSTOMER]")
FileWriteLine($hEntete, "")
FileWriteLine($hEntete, "[START]" & _Now() & "[/START]")
Expand All @@ -44,6 +42,7 @@ Func _RapportInfos($iReset = 0)

_FileWriteLog($hLog, 'Copie des fichiers "A copier" dans le dossier rapport')
; copie du contenu du dossier à copier
If DirCreate($sDossierRapport) = 0 Then _Erreur("Impossible de créer le dossier '" & $sDossierRapport & "' sur le bureau")
FileCopy(@ScriptDir & "\A copier\*", $sDossierRapport & "\", 8)

_FileWriteLog($hLog, "Récupération des informations système")
Expand Down
Loading

0 comments on commit 16097da

Please sign in to comment.