[R] Garder l'interface utilisateur ouvert
Posté : mer. 04 sept. 2013 14:10
par thimmy
Bonjour à tous.
Voilà j'ai fait un script avec une interface utilisateur. Lorsque je lance le script, l'interface apparait et disparait aussitôt. Je n'arrive pas à voir mon erreur.
Je souhaite que ce soit l'utilisateur qui ferme la fenêtre lorsqu'il a fini. Vous trouverez le script ci-dessous pour m'aider à trouver mon erreur.
D'avance merci.
Voilà j'ai fait un script avec une interface utilisateur. Lorsque je lance le script, l'interface apparait et disparait aussitôt. Je n'arrive pas à voir mon erreur.
Je souhaite que ce soit l'utilisateur qui ferme la fenêtre lorsqu'il a fini. Vous trouverez le script ci-dessous pour m'aider à trouver mon erreur.
D'avance merci.
► Afficher le texte
Code : Tout sélectionner
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <AD.au3>
#include <Array.au3>
_AD_Open()
#Region ### START Koda GUI section ### Form=Création de groupe dans Active Directory.kxf
GUICreate("Création de groupes Admin Locaux", 371, 476, 192, 124)
GUICtrlCreateGroup("", 32, 40, 305, 369)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlCreateLabel("Création de groupe Admin locaux", 40, 40, 160, 17)
GUICtrlCreateLabel("Groupe", 64, 86, 39, 17)
GUICtrlCreateLabel("Utilisateur", 64, 158, 50, 17)
; Déclaration des zones de saisies
Global $admingroup = GUICtrlCreateInput("", 64, 104, 241, 25) ; saisie du nom du groupe à créer
Global $utilisateur = GUICtrlCreateInput("", 64, 176, 241, 25) ; saisie du nom de l'utilisateur à ajouter à un groupe
;Déclaration des boutons radios
Global $radio0 = GUICtrlCreateRadio("Vérifier l'existance du groupe", 64, 256, 249, 17)
Global $radio1 = GUICtrlCreateRadio("Ajouter un compte à un groupe déjà exitant", 64, 280, 241, 17)
Global $radio2 = GUICtrlCreateRadio("Créer un groupe et y ajouter un compte utilisateur", 64, 304, 257, 17)
;déclaration des boutons à cliquer
Global $valider = GUICtrlCreateButton("Valider", 64, 368, 75, 25)
Global $annulation = GUICtrlCreateButton("Effacer", 232, 368, 75, 25)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
Global $cgroupin = 'OU=Admin_Locaux,OU=Groupes,OU=ATC,DC=ENC92,DC=LOCAL' ;OU où se crée les groupes Admin Locaux
Global $dng = ("G_ADMINL_") ; Racine du Nom du Groupe
Global $sFQDN = _AD_SamAccountNameToFQDN() ;Compte utilisateur
Global $cgroupe = $dng & StringUpper(GUICtrlRead($admingroup)) ;Force la mise en majuscule du nom du groupe
Global $cutilisateur = GUICtrlRead($utilisateur)
Global $membres_du_groupe = _AD_GetGroupMembers($cgroupe)
While 1
$msg = GUIGetMsg()
Switch $msg
Case $msg = $GUI_EVENT_CLOSE
ExitLoop
Case $msg = $annulation
;Efface la saisie
GUICtrlSetData($admingroup, "")
GUICtrlSetData($utilisateur, "")
;Annule la sélection des boutons radio
GUICtrlSetState($radio0, $GUI_UNCHECKED)
GUICtrlSetState($radio1, $GUI_UNCHECKED)
GUICtrlSetState($radio2, $GUI_UNCHECKED)
Case $msg = $valider And BitAND(GUICtrlRead($radio0), $GUI_CHECKED) = $GUI_CHECKED
_radio0()
Case $msg = $valider And BitAND(GUICtrlRead($radio1), $GUI_CHECKED) = $GUI_CHECKED
MsgBox(1, "Ajout de compte utilisateur :", "Vous allez ajouter le compte "&$cutilisateur&" au groupe "&$cgroupe)
_radio1()
Case $msg = $valider And BitAND(GUICtrlRead($radio2), $GUI_CHECKED) = $GUI_CHECKED
MsgBox (1, "Création de Groupe Admin Locaux :", "Vous allez créer le groupe "&$cgroupe&" et y ajouter le compte "&$cutilisateur)
_radio2()
EndSwitch
WEnd
;Vérification de l'existence d'un groupe "Admin Locaux"
Func _radio0()
If _AD_ObjectExists($cgroupe) = 1 Then
MsgBox(0, "Info :", "Le groupe "&$cgroupe&" existe déjà.")
_ArrayDisplay($membres_du_groupe)
Else
MsgBox(0, "Info :", "Le groupe "&$cgroupe&" n'existe pas.")
EndIf
EndFunc
;Ajout de compte à un groupe "Admin Locaux"
Func _radio1()
If _AD_AddUserToGroup($cgroupe, $cutilisateur) = 1 Then
MsgBox(0, "Info :", "Le compte "&$cutilisateur&" a été ajouté au groupe "&$cgroupe&" avec succès")
Else
If @error = 1 Then
MsgBox(0, "Info :", "Le groupe "&$cgroupe&" n'existe pas.")
Else
If @error = 2 Then
MsgBox(0, "Erreur :", "Le compte "&$cutilisateur&" n'existe pas dans l'AD.")
Else
If @error = 3 Then
MsgBox (0, "Info :", "Le compte "&$cutilisateur&" est déjà membre du groupe "&$cgroupe)
Else
If @error = 4 Then
MsgBox(0, "Erreur", "Impossible d'ajouter le compte "&$cutilisateur&" "& @error, "Veullez contacter l'administrateur système")
EndIf
EndIf
EndIf
EndIf
EndIf
EndFunc
;Création du groupe "Admin Locaux" et ajout de compte utilisateur
Func _radio2()
If _AD_CreateGroup($cgroupin, $cgroupe) = 1 Then ;Création d'un nouveau groupe
If @error = 1 Then
MsgBox(0, "Erreur :", "Le groupe "&$cgroupe&" existe déjà.")
Else
If @error = 3 Then
MsgBox(0, "Erreur", "Impossible de créer le groupe "&$cgroupe&" "& @error, "Veullez contacter l'administrateur système")
Else
If @error = 0 Then
_AD_AddUserToGroup($cgroupe, $cutilisateur) ;Ajout de l'utilisateur au groupe créé
If @error = 0 Then
MsgBox(0, "Info :", "Le compte "&$cutilisateur&" a été ajouté au groupe "&$cgroupe&" avec succès")
Else
If @error = 1 Then
MsgBox(0, "Info :", "Le groupe "&$cgroupe&" n'existe pas.")
Else
If @error = 2 Then
MsgBox(0, "Erreur :", "Le compte "&$cutilisateur&" n'existe pas dans l'AD.")
Else
If @error = 3 Then
MsgBox (0, "Info :", "Le compte "&$cutilisateur&" est déjà membre du groupe "&$cgroupe)
Else
If @error = 4 Then
MsgBox(0, "Erreur", "Impossible d'ajouter le compte "&$cutilisateur&" "& @error, "Veullez contacter l'administrateur système")
EndIf
EndIf
EndIf
EndIf
EndIf
EndIf
EndIf
EndIf
EndIf
EndFunc
_AD_Close()
Exit