;===========================GUI=======================================
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <TabConstants.au3>
#include <Timers.au3>
#include <GuiEdit.au3>
Global $User=@UserName ; Attribution du nom de l'utilisateur
$User=StringLower($User) ; Mise en minuscule du nom
Local $fichuser="c:\mydesk\archive\" & $User ; Attribution du chemin vers le dossier de stockage des archives
Global $nbr_de_bouton=0, $nbr_de_tab=0 ; Attribution de valeur
Global $bouton_et_valeur[300][2], $TabSheet[300] ; Creation d'un tableau de 300 lignes et 2 collones et une tableau de 300 lignes
Global $Form1=GUICreate("Programmes de " & $User, 617, 617, 192, 124) ; Création de la GUI
Global $appli="\ApplisArch.txt" ; Attribution de valeur
Global $info="
http://www.xxx.xx/Info.html" ; Attribution de valeur
Global $starttime=_Timer_Init() ; Initialisation du compteur
Global $obj, $Tab1 ; Création d'une variable
If FileExists($fichuser & "\Info.html") And FileExists($fichuser & "\InfoArch.html") Then ; Si les fichiers Info et InfoArch existent alors
FileDelete($fichuser & "\InfoArch.html") ; Je supprime InfoArch
FileCopy($fichuser & "\Info.html", $fichuser & "\InfoArch.html",1) ; Je copie et renomme Info
Else ; Sinon
FileCopy($fichuser & "\Info.html", $fichuser & "\InfoArch.html",1) ; Je copie et renomme Info
Sleep(500) ; Stop le script 0.5 sec
EndIf ; Fin Si
InetGet($info,$fichuser & "\Info.html",1) ; Telechargement d'Info
$Fileinfo=FileOpen($fichuser & "\Info.html") ; Ouverture d'Info
$lineinfo=FileReadLine($Fileinfo) ; Lecture de la première ligne
If $lineinfo <> "RAS" Then ; Si la première ligne est diffiérente de "RAS" alors
_Example() ; Je lance la fonction _Example (ligne 388)
EndIf ; Fin Si
If $lineinfo = "RAS" Then
_bouton1()
Else
_bouton() ; fonction pour la création de la gui avec boutons (ligne 356)
EndIf
Do ; boucle infini de la gui
$msg = GUIGetMsg() ; Attribution de valeur
For $i = 1 To $nbr_de_bouton ; boucle sur le nombre d'élément
If $msg = $bouton_et_valeur[$i][0] Then ; Si c'est ce menu ( handle ) qui est sélectioné alors
Run($bouton_et_valeur[$i][1]) ; Execution de la valeur stocké dans le tableau
EndIf ; Fin Si
Next ; Fin For
If _Timer_Diff($starttime) >= 30000 Then ; Si le compteur dépasse 5 minutes alors
Global $starttime=_Timer_Init() ; Je remet à zéro le compteur
If FileExists($fichuser & "\Info.html") And FileExists($fichuser & "\InfoArch.html") Then ; Si les fichiers Info et InfoArch existent alors
FileDelete($fichuser & "\InfoArch.html") ; Je supprime InfoArch
FileCopy($fichuser & "\Info.html", $fichuser & "\InfoArch.html",1) ; Je copie et renomme Info
Else ; Sinon
FileCopy($fichuser & "\Info.html", $fichuser & "\InfoArch.html",1) ; Je copie et renomme Info
Sleep(500) ; Stop le script 0.5 sec
EndIf ; Fin Si
InetGet($info,$fichuser & "\Info.html",1) ; Téléchargement d'Info
$Fileinfo=FileOpen($fichuser & "\Info.html") ; Ouverture d'Info
$FileinfoArch=FileOpen($fichuser & "\InfoArch.html") ; Ouverture d'InfoArch
$lineinfo=FileReadLine($Fileinfo) ; Lecture de la première ligne d'Info
$lineinfoArch=FileReadLine($FileinfoArch) ; Lecture de la première ligne d'InfoArch
If $lineinfo <> $lineinfoArch And $lineinfo = "RAS" Then ; Si les deux lignes sont différentes et que la ligne d'Info est égale à "RAS" alors
GUICtrlDelete($Tab1)
GUICtrlDelete($obj) ; Je supprime la zone d'information de la GUI
_bouton1()
EndIf ; Fin Si
If $lineinfo <> $lineinfoArch And $lineinfo <> "RAS" Then ; Si les deux lignes sont différentes et que la ligne d'Info est différente de "RAS" alors
GUICtrlDelete($Tab1)
GUICtrlDelete($obj) ; Je supprime la zone d'information de la GUI
_Example() ; Je lance la fonction _Example (ligne 388)
_bouton()
Local $oIE, $msg1 ; Création de variable
$oIE = ObjCreate("Shell.Explorer.2") ; Attribution de valeur
GUICreate("ATTENTION", 640, 580, (@DesktopWidth - 640) / 2, (@DesktopHeight - 580) / 2, BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS, $WS_CLIPCHILDREN)) ; Création de la GUI "pop-up" affichant les nouvelles information en premier plan
GUICtrlCreateObj($oIE, 2, 2, 636, 576) ; Création de la zone
GUISetState() ; Affichage de la GUI
$oIE.navigate($fichuser & "\Info.html") ; déffinition de la page à afficher
While 1 ; Tant Que
$msg1 = GUIGetMsg() ; Attribution de valeur
Select ; Début d'un cas selectif
Case $msg1 = $GUI_EVENT_CLOSE ; Si le cas correspond alors je quitte la fenêtre
ExitLoop ; Sortie de Tant Que
EndSelect ; Fin de cas selectif
WEnd ; Fin TQ
GUIDelete() ; Suppression de la GUI
EndIf ; Fin Si
FileClose($Fileinfo) ; Fermeture de fichier
FileClose($FileinfoArch) ; Fermeture de fichier
EndIf ; Fin Si
Until $msg = $GUI_EVENT_CLOSE ; Fin de la boucle Infini si on ferme la GUI
Shutdown(0) ; Fermeture de session
Exit ; Fermeture du script
Func _bouton() ; fonction pour la création des boutons (ligne 304)
Global $nbr_de_bouton=0, $nbr_de_tab=0 ; Attribution de valeur
Global $bouton_et_valeur[300][2], $TabSheet[300] ; Creation d'un tableau de 300 lignes et 2 collones et une tableau de 300 lignes
Global $Tab1=GUICtrlCreateTab(0, 232, 617, 385) ; Création de l'espace des onglets
Local $file = FileOpen($fichuser & $appli, 0) ; Ouverture de fichier
If $file = -1 Then Exit MsgBox(4096, "", "Il manque le fichier " & $fichuser & $appli, 50) ; Si le fichier ne souvre pas alors j'affiche un message disant qu'il est manquant et je sors du SI
While 1 ; Tant Que
Local $ligne = FileReadLine($file) ; lecture ligne par ligne du fichier
If @error = -1 OR StringLeft($ligne, 3) = "fin" Then ExitLoop ; Si il y a une erreur ou que la ligne est "fin" je sors du Tant que
Local $element = StringSplit($ligne, "|") ; Découpage de la ligne en trois morceaux (séparés par |)
If Not IsArray($element) Then ExitLoop ; Si le découpage ne s'est pas bien passé je sors du Tant Que
If StringRight($element[1],1) = "t" Then ; Si le premier élément du tableau est "t" alors
$nbr_de_tab = $nbr_de_tab +1 ; Incrémentation du nombre d'onglets
$TabSheet[$nbr_de_tab] = GUICtrlCreateTabItem($element[2]) ; Création de l'élément et stockage du handle dans le tableau
Local $i = 10 ; Attribution de valeur
Local $j = 272 ; Attribution de valeur
Else ; Sinon
$nbr_de_bouton = $nbr_de_bouton + 1 ; Incrémentation du nombre de boutons
$bouton_et_valeur[$nbr_de_bouton][0] = GUICtrlCreateButton("", $i, $j, 64, 64,$BS_BITMAP) ; Création de l'élément et stockage du handle dans le tableau
InetGet($element[3],$fichuser & "\" & $element[2] & ".bmp",1) ; Téléchargement de l'icone
GUICtrlSetImage(-1,$fichuser & "\" & $element[2] & ".bmp") ; Attribution de l'icone au bouton
GUICtrlCreateLabel($element[2],$i+5,$j + 70) ; Création du nom du bouton
$bouton_et_valeur[$nbr_de_bouton][1] = $element[4] ; Attribution de valeur
$i = $i + 75 ; Attribution de valeur
If $i > 550 Then ; Si $i est plus grand que 550 alors
$i = 10 ; Attribution de valeur
$j = $j + 94 ; Attribution de valeur
EndIf ; Fin Si
EndIf ; Fin Si
WEnd ; Fin TQ
FileClose($file) ; Fermeture du fichier
Redim $TabSheet[$nbr_de_tab+1]
Redim $bouton_et_valeur[$nbr_de_bouton+1][2]
GUISetState(@SW_SHOW) ; Affichage de la GUI
EndFunc ;==>_bouton ; Fin de la Fonction
Func _bouton1() ; fonction pour la création des boutons (ligne 304)
Global $nbr_de_bouton=0, $nbr_de_tab=0 ; Attribution de valeur
Global $bouton_et_valeur[300][2], $TabSheet[300] ; Creation d'un tableau de 300 lignes et 2 collones et une tableau de 300 lignes
Global $Tab1=GUICtrlCreateTab(0, 0, 617, 617) ; Création de l'espace des onglets
Local $file = FileOpen($fichuser & $appli, 0) ; Ouverture de fichier
If $file = -1 Then Exit MsgBox(4096, "", "Il manque le fichier " & $fichuser & $appli, 50) ; Si le fichier ne souvre pas alors j'affiche un message disant qu'il est manquant et je sors du SI
While 1 ; Tant Que
Local $ligne = FileReadLine($file) ; lecture ligne par ligne du fichier
If @error = -1 OR StringLeft($ligne, 3) = "fin" Then ExitLoop ; Si il y a une erreur ou que la ligne est "fin" je sors du Tant que
Local $element = StringSplit($ligne, "|") ; Découpage de la ligne en trois morceaux (séparés par |)
If Not IsArray($element) Then ExitLoop ; Si le découpage ne s'est pas bien passé je sors du Tant Que
If StringRight($element[1],1) = "t" Then ; Si le premier élément du tableau est "t" alors
$nbr_de_tab = $nbr_de_tab +1 ; Incrémentation du nombre d'onglets
$TabSheet[$nbr_de_tab] = GUICtrlCreateTabItem($element[2]) ; Création de l'élément et stockage du handle dans le tableau
Local $i = 10 ; Attribution de valeur
Local $j = 40 ; Attribution de valeur
Else ; Sinon
$nbr_de_bouton = $nbr_de_bouton + 1 ; Incrémentation du nombre de boutons
$bouton_et_valeur[$nbr_de_bouton][0] = GUICtrlCreateButton("", $i, $j, 64, 64,$BS_BITMAP) ; Création de l'élément et stockage du handle dans le tableau
InetGet($element[3],$fichuser & "\" & $element[2] & ".bmp",1) ; Téléchargement de l'icone
GUICtrlSetImage(-1,$fichuser & "\" & $element[2] & ".bmp") ; Attribution de l'icone au bouton
GUICtrlCreateLabel($element[2],$i+5,$j + 70) ; Création du nom du bouton
$bouton_et_valeur[$nbr_de_bouton][1] = $element[4] ; Attribution de valeur
$i = $i + 75 ; Attribution de valeur
If $i > 550 Then ; Si $i est plus grand que 550 alors
$i = 10 ; Attribution de valeur
$j = $j + 94 ; Attribution de valeur
EndIf ; Fin Si
EndIf ; Fin Si
WEnd ; Fin TQ
FileClose($file) ; Fermeture du fichier
Redim $TabSheet[$nbr_de_tab+1]
Redim $bouton_et_valeur[$nbr_de_bouton+1][2]
GUISetState(@SW_SHOW) ; Affichage de la GUI
EndFunc ;==>_bouton ; Fin de la Fonction
Func _Example() ; Fonction pour la création d'une pop-up (ligne 302 et 333)
Local $oIE, $msg ; Création de variable
Local $info="
http://www.xxx.xx/Info.html" ; Attribution de valeur
InetGet($info,$fichuser & "\Info.html",1) ; Téléchargement d'Info
$oIE = ObjCreate("Shell.Explorer.2") ; Attribution de valeur
Global $obj=GUICtrlCreateObj($oIE, 2, 2, 617, 228) ; Création de la zone d'information
$oIE.navigate($fichuser & "\Info.html") ; définition de la page à afficher
EndFunc ;==>_Example ; Fin de la Fonction