Code : Tout sélectionner
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <EditConstants.au3>
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Variable Fenetre ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Global $title = "AngelXuser"
$Version = StringLeft(FileGetVersion(@ScriptName), 9)
$width = 300
$height = 220
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Variable Fenetre ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Fenetre ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
$xuser = GUICreate($title, $width, $height, -1, -1, $WS_EX_CLIENTEDGE)
GUISetIcon(@AutoItExe, 0)
GUISetBkColor(0xFFFFFF)
GUICtrlCreateIcon(@AutoItExe, 0, $height + 25, 9, 40, 40)
; Info
GUICtrlCreateGroup("", 5, 0, $width - 15, 57)
$info1 = GUICtrlCreateLabel("Bienvenue dans le programme de création du compte Administrateur .", 10, 15, 205, 35)
GUICtrlSetState($info1, $GUI_SHOW)
GUICtrlSetFont(-1, 10, 500)
; Info Creation
GUICtrlCreateGroup("Info", 5, 63, $width - 15, 79)
; Login
GUICtrlCreateLabel("Entrez le Login :", 10, 77, 120)
GUICtrlSetFont(-1, 9, 500)
$lire1 = GUICtrlCreateInput("", 145, 75, $width - 160, 17)
GUICtrlSetTip($lire1, "Entrez votre Pseudo pour créer le compte Administrateur","/!\ accents (éèçà) et espaces ( ) non vallide /!\",2)
; Password
GUICtrlCreateLabel("Entrez le password :", 10, 97, 150)
GUICtrlSetFont(-1, 9, 500)
$lire2 = GUICtrlCreateInput("", 145, 96, $width - 160, 17, $ES_PASSWORD)
GUICtrlSetTip($lire2, " Laisser vide pour n'en avoir aucun","Mot de passe d'ouverture de session.",1)
; Re Password
GUICtrlCreateLabel("Re-entrez le password :", 10, 117, 150)
GUICtrlSetFont(-1, 9, 500)
$lire3 = GUICtrlCreateInput("", 145, 117, $width - 160, 17, $ES_PASSWORD)
GUICtrlSetTip($lire3, "Si vous avez fait le choix de créer un mot de passe,il vous faudra le re-entrer ici.")
; Autologon
$autologon = GUICtrlCreateCheckbox("Autologon au démarrage", 7, $height - 74)
GUICtrlSetTip($autologon, "Décocher la case pour acceder a l'écran de bienvenue et pouvoir choisir une séssion")
GUICtrlSetState($autologon, $GUI_CHECKED)
; Mettre le nom a coté de l'heure
$nom_a_cote_horloge = GUICtrlCreateCheckbox("Nom à coté de l'horloge", 7, $height - 55)
GUICtrlSetTip($nom_a_cote_horloge, "Décocher la case pour que votre nom de séssion n'apparaisse pas à coté de l'horloge")
GUICtrlSetState($nom_a_cote_horloge, $GUI_CHECKED)
; Exit
$exit = GUICtrlCreateButton("Exit", 145, $height - 70, 60, 32)
GUICtrlSetTip($exit, "Exit")
GUICtrlSetFont(-1, 14, 400, 2)
GUICtrlSetCursor(-1, 0)
; Créer
$creer = GUICtrlCreateButton("Créer", 210, $height - 70, $width - 220, 32)
GUICtrlSetTip($creer, "Vallider pour créer le compte Administrateur")
GUICtrlSetFont(-1, 14, 400)
GUICtrlSetCursor(-1, 0)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Fenetre ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; GUISetState ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
GUISetState()
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
Select
; Exit
Case $msg = $exit
$quitter = MsgBox(4, $title, "Etes vous sûr de voulloir quitter l'assistant de configuration Administrateur")
If $quitter == 6 Then
ExitLoop
Else
EndIf
Case $msg = $creer
If GUICtrlRead($lire1) <> "" Then
If GUICtrlRead($lire2) == GUICtrlRead($lire3) Then
WinSetState($xuser, "", @SW_MINIMIZE)
; Création du nom dans le registre
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultUserName", "REG_SZ", GUICtrlRead($lire1))
; Création du nom de la Séssion
Run(@ComSpec & " /k net user " & GUICtrlRead($lire1) & " " & GUICtrlRead($lire2) & " /add", "", @SW_HIDE)
MsgBox(0, "Xuser", "Le compte Administrateur a bien été créer", 3)
; Création du nom dans le compte Administateur
Run(@ComSpec & " /k net localgroup Administrateurs " & GUICtrlRead($lire1) & " /add", "", @SW_HIDE)
; Création du Password dans le registre
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultPassword", "REG_SZ", GUICtrlRead($lire2))
Sleep(3000)
; enleve l'expiration du mot de passe (après 14 jours)
Run(@ComSpec & " /k net accounts /maxpwage:unlimited", "", @SW_HIDE)
Sleep(2000)
If BitAND(GUICtrlRead($autologon), $GUI_CHECKED) Then
; Autolog au démarrage
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "AutoAdminLogon", "REG_SZ", "1")
EndIf
If BitAND(GUICtrlRead($nom_a_cote_horloge), $GUI_CHECKED) Then
; Mettre le nom a coté de l'heure
RegWrite("HKEY_CURRENT_USER\Control Panel\International", "s1159", "REG_SZ", GUICtrlRead($lire1))
RegWrite("HKEY_CURRENT_USER\Control Panel\International", "s2359", "REG_SZ", GUICtrlRead($lire1))
RegWrite("HKEY_CURRENT_USER\Control Panel\International", "sTimeFormat", "REG_SZ", "HH:mm tt")
EndIf
Exit
Else
MsgBox(48, $title, "Les mots de passe ne sont pas similaire", 5)
EndIf
Else
MsgBox(48, $title, "Il vous faut un Pseudo pour créer le compte", 5)
EndIf
EndSelect
WEnd
Exit