Tyleo-Dev-AutoIT-Oldies/YAWAT/YAWAT.au3

773 lines
26 KiB
AutoIt
Raw Permalink Normal View History

2024-02-18 21:17:39 +00:00
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=YAWAT.ico
#AutoIt3Wrapper_Outfile=C:\Users\tyleo\Nextcloud\Tyleo\Logiciels\YAWAT\yawa-toolbox-legacy32.exe
#AutoIt3Wrapper_Outfile_x64=C:\Users\tyleo\Nextcloud\Tyleo\Logiciels\YAWAT\yawa-toolbox.exe
#AutoIt3Wrapper_Compile_Both=y
#AutoIt3Wrapper_Res_Comment=Yet Another Windows Admin Toolbox - By TyleoDev
#AutoIt3Wrapper_Res_Description=Yet Another Windows Admin Toolbox - By TyleoDev
#AutoIt3Wrapper_Res_Fileversion=1.0.0.18
#AutoIt3Wrapper_Res_Fileversion_AutoIncrement=y
#AutoIt3Wrapper_Res_ProductName=Yet Another Windows Admin Toolbox
#AutoIt3Wrapper_Res_ProductVersion=1.0.0.0
#AutoIt3Wrapper_Res_CompanyName=Tyleo Softwares
#AutoIt3Wrapper_Res_LegalCopyright=Tyleo Softwares
#AutoIt3Wrapper_Res_LegalTradeMarks=Tyleo Softwares
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
; BeAdmin
if IsAdmin() Then
$BeAdmin = "(Admin Mode)"
$AsAdmin = 1
Else
$BeAdmin = "(User Mode)"
$AsAdmin = 0
EndIf
;
#include "MetroGUI-UDF\MetroGUI_UDF.au3"
#include "Extensions.au3"
GetSoftDetails(@AutoItExe,"DEV")
$SVer = "YAWAT " & $CurrentVersion
#cs
Tyleo Software Project Base v1
Created With CNP and DevTools Base Folder
All Softwares created with this base are Free and Open Sourced.
Join our Guilded Server ! https://www.guilded.gg/i/2DRlM7Mp
#ce
$ActiveUser = @UserName
$ActiveProfile = @UserProfileDir
$ActiveSysDir = @SystemDir
$LocalHost = @ComputerName
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <AutoItConstants.au3>
#include <EditConstants.au3>
#Region ### START Koda GUI section ### Form=
Global $GUI_Main_Frame = GUICreate($SVer & " | Logged in as " & $ActiveUser & " " & $BeAdmin, 651, 60)
GUISetBkColor($CurrentAccent,$GUI_Main_Frame)
GUISetFont(11.5,"","","Segoe UI",$GUI_Main_Frame)
; Systéme
Global $Menu_Sys = GUICtrlCreateMenu("Systeme")
Global $Menu_Sys_Run = GUICtrlCreateMenuItem("Executer (Systéme)",$Menu_Sys)
Global $Menu_Sys_RunB = GUICtrlCreateMenuItem("Executer (Toolbox)",$Menu_Sys)
GUICtrlCreateMenuItem("",$Menu_Sys)
Global $Menu_Sys_CfgPanelOld = GUICtrlCreateMenuItem("Panneau de Configuration" & @TAB & "Original",$Menu_Sys)
Global $Menu_Sys_CfgPanelNew = GUICtrlCreateMenuItem("Panneau de Configuration" & @TAB & "Next Gen",$Menu_Sys)
GUICtrlCreateMenuItem("",$Menu_Sys)
Global $Menu_Sys_AdmTools = GUICtrlCreateMenuItem("Outils d'Administration Windows",$Menu_Sys)
GUICtrlCreateMenuItem("",$Menu_Sys)
Global $Menu_Sys_SwitchtoAdmin = GUICtrlCreateMenuItem("Relancer YAWAT en Administrateur" & @TAB & "SWITCH",$Menu_Sys)
; Consoles
Global $Menu_Csl = GUICtrlCreateMenu("Consoles")
Global $Menu_Csl_Tpm = GUICtrlCreateMenuItem("Trusted Platform Module" & @TAB & "MMC",$Menu_Csl)
Global $Menu_Csl_Services = GUICtrlCreateMenuItem("Services" & @TAB & "MMC",$Menu_Csl)
Global $Menu_Csl_Crt = GUICtrlCreateMenuItem("Certificats" & @TAB & "MMC",$Menu_Csl)
Global $Menu_Csl_DiskMgmt = GUICtrlCreateMenuItem("Disques" & @TAB & "MMC",$Menu_Csl)
Global $Menu_Csl_GPLocal = GUICtrlCreateMenuItem("Politique de Groupes" & @TAB & "MMC",$Menu_Csl)
Global $Menu_Csl_GPSecur = GUICtrlCreateMenuItem("Politique Sécurité Locale" & @TAB & "MMC",$Menu_Csl)
GUICtrlCreateMenuItem("",$Menu_Csl)
Global $Menu_Csl_GPResul = GUICtrlCreateMenuItem("Politique Résultantes" & @TAB & "RSoP",$Menu_Csl)
Global $Menu_Csl_Wfw = GUICtrlCreateMenuItem("Pare-Feu interne Windows" & @TAB & "Control",$Menu_Csl)
; Users & Groups
Global $Menu_Ugr = GUICtrlCreateMenu("Utilisateurs && Groupes")
Global $Menu_Ugr_Console = GUICtrlCreateMenuItem("Gestionnaire Utilisateurs et Groupes locaux",$Menu_Ugr)
GUICtrlCreateMenuItem("",$Menu_Ugr)
GUICtrlCreateMenuItem("" & @TAB & "Utilisateurs",$Menu_Ugr)
GUICtrlSetState(-1,$GUI_DISABLE)
Global $Menu_Ugr_Add = GUICtrlCreateMenuItem("Création d'un Utilisateur" & @TAB & "ADDUSR",$Menu_Ugr)
Global $Menu_Ugr_Del = GUICtrlCreateMenuItem("Suppression d'un Utilisateur" & @TAB & "DELUSR",$Menu_Ugr)
GUICtrlCreateMenuItem("",$Menu_Ugr)
GUICtrlCreateMenuItem("" & @TAB & "Groupes",$Menu_Ugr)
GUICtrlSetState(-1,$GUI_DISABLE)
Global $Menu_Ugr_Grp_Add = GUICtrlCreateMenuItem("Création d'un Groupe" & @TAB & "ADDGRP",$Menu_Ugr)
Global $Menu_Ugr_Grp_Del = GUICtrlCreateMenuItem("Suppression d'un Groupe" & @TAB & "DELGRP",$Menu_Ugr)
GUICtrlCreateMenuItem("",$Menu_Ugr)
GUICtrlCreateMenuItem("" & @TAB & "Gestion des Groupes",$Menu_Ugr)
GUICtrlSetState(-1,$GUI_DISABLE)
Global $Menu_Ugr_Grp_Man_AddUserTo = GUICtrlCreateMenuItem("Ajouter un utilisateur dans un groupe" & @TAB & "ADDUSERTOGRP",$Menu_Ugr)
GUICtrlCreateMenuItem("",$Menu_Ugr)
GUICtrlCreateMenuItem("" & @TAB & "Visualiser les infos",$Menu_Ugr)
GUICtrlSetState(-1,$GUI_DISABLE)
Global $Menu_Ugr_Grp_Man_ListUsers = GUICtrlCreateMenuItem("Voir la liste des utilisateurs d'un groupe",$Menu_Ugr)
Global $Menu_Ugr_GetInfo = GUICtrlCreateMenuItem("Afficher les infos d'un utilisateur" & @TAB & "CURRENTUSER",$Menu_Ugr)
Global $Menu_Ugr_GetInfo_Spec = GUICtrlCreateMenuItem("Afficher les infos d'un utilisateur" & @TAB & "SPECIFICUSER", $Menu_Ugr)
; Commandes
Global $Menu_Cmd = GUICtrlCreateMenu("Commandes")
Global $Menu_Cmd_SFC = GUICtrlCreateMenuItem("Lancer le Scan auto SFC avec Scannow" & @TAB & "SFCSCAN",$Menu_Cmd)
Global $Menu_Cmd_DISM_Scan = GUICtrlCreateMenuItem("Scan DISM Santé du Systéme" & @TAB & "SCANDISMHEALTH",$Menu_Cmd)
Global $Menu_Cmd_DISM_Rest = GUICtrlCreateMenuItem("Restaurer la santé du systéme - DISM Restore" & @TAB & "RESTOREDISMHEALTH",$Menu_Cmd)
GUICtrlCreateMenuItem("",$Menu_Cmd)
GUICtrlCreateMenuItem("" & @TAB & "Commandes de Vérification du Systéme de Fichiers",$Menu_Cmd)
GUICtrlSetState(-1,$GUI_DISABLE)
Global $Menu_Cmd_CHK_C = GUICtrlCreateMenuItem("Vérifier et Réparer le Systéme de Fichier sur C:\" & @TAB & "CHKFIXSYSTEMDRIVE",$Menu_Cmd)
Global $Menu_Cmd_CHK_SPEC = GUICtrlCreateMenuItem("Vérifier et Réparer le Systéme de Fichier sur un lecteur défini" & @TAB & "CHKFIXSPECDRIVE",$Menu_Cmd)
GUICtrlCreateMenuItem("",$Menu_Cmd)
GUICtrlCreateMenuItem("" & @TAB & "Commandes de test Ping Spécifiques",$Menu_Cmd)
GUICtrlSetState(-1,$GUI_DISABLE)
Global $Menu_Cmd_PNG_HOST = GUICtrlCreateMenuItem("Ping vers l'Hôte (%COMPUTERNAME%)" & @TAB & "PINGHOST",$Menu_Cmd)
Global $Menu_Cmd_PNG_LOCAL = GUICtrlCreateMenuItem("Ping vers LocalHost" & @TAB & "PINGLOCAL",$Menu_Cmd)
Global $Menu_Cmd_PNG_INTERNALV6 = GUICtrlCreateMenuItem("Ping vers l'IPv6 Interne (::1)" & @TAB & "PINGV6",$Menu_Cmd)
Global $Menu_Cmd_PNG_INTERNALV4 = GUICtrlCreateMenuItem("Ping vers l'IPv4 Interne (127.0.0.1)" & @TAB & "PINGV4",$Menu_Cmd)
GUICtrlCreateMenuItem("",$Menu_Cmd)
GUICtrlCreateMenuItem("" & @TAB & "Commandes Chocolatey",$Menu_Cmd)
GUICtrlSetState(-1,$GUI_DISABLE)
Global $Menu_Cmd_CHOCOSETUP = GUICtrlCreateMenuItem("Installer Chocolatey Packages Manager for Windows" & @TAB & "CHOCOSETUP",$Menu_Cmd)
GUICtrlCreateMenuItem("--------------------- Paquets Choco ---------------------",$Menu_Cmd)
GUICtrlSetState(-1,$GUI_DISABLE)
Global $Menu_Cmd_CHOCOPKG_RECPACK = GUICtrlCreateMenuItem("Pack recommandé par Tyleo" & @TAB & "SETUPRECPACK",$Menu_Cmd)
; Gestion DNS
Global $Menu_DNS = GUICtrlCreateMenu("Gestion DNS")
Global $Menu_DNS_Clear = GUICtrlCreateMenuItem("Nettoyage par FlushDNS" & @TAB & "FLUSHDNS",$Menu_DNS)
Global $Menu_DNS_Console = GUICtrlCreateMenuItem("Console DNS Locale (Client)" & @TAB & "CSLDNS",$Menu_DNS)
GUICtrlCreateMenuItem("",$Menu_DNS)
GUICtrlCreateMenuItem("" & @TAB & "Informations DNS",$Menu_DNS)
GUICtrlSetState(-1,$GUI_DISABLE)
Global $Menu_DNS_GETINFO = GUICtrlCreateMenuItem("Voir la configuration DNS" & @TAB & "DNSGETINFO",$Menu_DNS)
; Gestion IP / NETWORK
Global $Menu_NET = GUICtrlCreateMenu("Gestion IP")
Global $Menu_NET_IPCFG_EASY = GUICtrlCreateMenuItem("Informations IP (Simple)" & @TAB & "IPCFGEASY",$Menu_NET)
Global $Menu_NET_IPCFG_ADVC = GUICtrlCreateMenuItem("Informations IP (Avancé)" & @TAB & "IPCFGADVC",$Menu_NET)
Global $Menu_NET_GetMacV = GUICtrlCreateMenuItem("Liste des MAC Physiques",$Menu_NET)
GUICtrlCreateMenuItem("",$Menu_NET)
GUICtrlCreateMenuItem("" & @TAB & "Actions Réseau",$Menu_NET)
GUICtrlSetState(-1,$GUI_DISABLE)
Global $Menu_NET_RenewIP = GUICtrlCreateMenuItem("Renouveler l'IP" & @TAB & "IPRENEW",$Menu_NET)
Global $Menu_NET_ReleaseIP = GUICtrlCreateMenuItem("Relacher l'IP sans renouveler" & @TAB & "IPRELEASE",$Menu_NET)
Global $Menu_NET_ReloadCard = GUICtrlCreateMenuItem("Relancer les Services Réseau" & @TAB & "NETCARDSERVICESRELOAD",$Menu_NET)
; Personnalisation
Global $Menu_Per = GUICtrlCreateMenu("Personnalisation")
Global $Menu_Per_RelColor = GUICtrlCreateMenuItem("Rafraichir Couleur d'Interface",$Menu_Per)
; Version & Devs
Global $Menu_Ver = GUICtrlCreateMenu("A propos")
Global $Menu_Ver_Dev = GUICtrlCreateMenuItem("Version && Devs",$Menu_Ver)
Global $Menu_Ver_Site = GUICtrlCreateMenuItem("Site Internet" & @TAB & "https://tyleodev.fr",$Menu_Ver)
Global $Button_HOST = GUICtrlCreateInput($LocalHost,5,5,280,32)
GUICtrlSetColor(-1,0xFFFFFF)
GUICtrlSetBkColor(-1,$CurrentAccent)
GUICtrlSetFont(-1,13,900)
Global $Button_PING = GUICtrlCreateButton("PING",287,5,50)
GUICtrlSetColor(-1,0xFFFFFF)
GUICtrlSetBkColor(-1,$CurrentAccent)
GUICtrlSetCursor(-1,0)
Global $Button_DNS = GUICtrlCreateButton("DNS",337,5,50)
GUICtrlSetColor(-1,0xFFFFFF)
GUICtrlSetBkColor(-1,$CurrentAccent)
GUICtrlSetCursor(-1,0)
Global $Button_WMIC = GUICtrlCreateButton("WMIC",387,5,50)
GUICtrlSetColor(-1,0xFFFFFF)
GUICtrlSetBkColor(-1,$CurrentAccent)
GUICtrlSetCursor(-1,0)
Global $Button_PSH = GUICtrlCreateButton("PSH",437,5,50)
GUICtrlSetColor(-1,0xFFFFFF)
GUICtrlSetBkColor(-1,$CurrentAccent)
GUICtrlSetCursor(-1,0)
Global $Button_CMD = GUICtrlCreateButton("CMD",487,5,50)
GUICtrlSetColor(-1,0xFFFFFF)
GUICtrlSetBkColor(-1,$CurrentAccent)
GUICtrlSetCursor(-1,0)
Global $Button_MMC = GUICtrlCreateButton("MMC",537,5,50)
GUICtrlSetColor(-1,0xFFFFFF)
GUICtrlSetBkColor(-1,$CurrentAccent)
GUICtrlSetCursor(-1,0)
Global $Button_NFO = GUICtrlCreateButton("INFO",587,5,50)
GUICtrlSetColor(-1,0xFFFFFF)
GUICtrlSetBkColor(-1,$CurrentAccent)
GUICtrlSetCursor(-1,0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
; Admin Features
if $AsAdmin = 0 Then
GUICtrlSetState($Menu_Cmd_CHK_C,$GUI_DISABLE)
GUICtrlSetState($Menu_Cmd_CHK_SPEC,$GUI_DISABLE)
GUICtrlSetState($Menu_Cmd_CHOCOPKG_RECPACK,$GUI_DISABLE)
GUICtrlSetState($Menu_Cmd_CHOCOSETUP,$GUI_DISABLE)
GUICtrlSetState($Menu_Cmd_DISM_Rest,$GUI_DISABLE)
GUICtrlSetState($Menu_Cmd_DISM_Scan,$GUI_DISABLE)
GUICtrlSetState($Menu_Cmd_SFC,$GUI_DISABLE)
;---------------------------------------------------------------
GUICtrlSetState($Menu_Ugr_Add,$GUI_DISABLE)
GUICtrlSetState($Menu_Ugr_Del,$GUI_DISABLE)
GUICtrlSetState($Menu_Ugr_Grp_Add,$GUI_DISABLE)
GUICtrlSetState($Menu_Ugr_Grp_Del,$GUI_DISABLE)
GUICtrlSetState($Menu_Ugr_Grp_Man_AddUserTo,$GUI_DISABLE)
;---------------------------------------------------------------
GUICtrlSetState($Menu_NET_ReleaseIP,$GUI_DISABLE)
GUICtrlSetState($Menu_NET_ReloadCard,$GUI_DISABLE)
GUICtrlSetState($Menu_NET_RenewIP,$GUI_DISABLE)
;---------------------------------------------------------------
GUICtrlSetState($Menu_DNS_Console,$GUI_DISABLE)
GUICtrlSetState($Menu_DNS_Clear,$GUI_DISABLE)
;Boutons--------------------------------------------------------
GUICtrlSetState($Button_HOST,$GUI_DISABLE)
GUICtrlSetState($Button_MMC,$GUI_DISABLE)
GUICtrlSetState($Button_WMIC,$GUI_DISABLE)
GUICtrlSetState($Button_PSH,$GUI_DISABLE)
GUICtrlSetState($Button_DNS,$GUI_DISABLE)
Else
GUICtrlSetState($Menu_Sys_SwitchtoAdmin,$GUI_DISABLE)
GUICtrlSetData($Menu_Sys_SwitchtoAdmin,"Déjà connecté en Administrateur" & @TAB & "DISABLED")
EndIf
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Menu_Ver_Dev
TyleoAbout("Yet.Another.Windows.Admin.Toolbox " & $SVer)
Case $Menu_Ver_Site
TyleoWebsite()
Case $Menu_Per_RelColor
ColorReload()
GUISetBkColor($CurrentAccent,$GUI_Main_Frame)
; Admin Switch
Case $Menu_Sys_SwitchtoAdmin
If @Compiled Then
ShellExecute(@AutoItExe, '', '', 'runas')
Else
ShellExecute(@AutoItExe, '"' & @ScriptFullPath & '"', '', 'runas')
EndIf
if @Error Then
; Keep Running as User
Else
exit(0)
EndIf
; Fonctions Actives (Boutons)
Case $Button_PING
$InHOST = GUICtrlRead($Button_HOST)
$Nb = InputBox("Nombre de ping pour le test","Choisir le nombre de ping a envoyer. Recommandation : Limitez vous a un maximum de 150 echo (avant Flood)","5")
WaitMsg()
If ($Nb = "") Then
MsgBox(0+16,"Erreur !","Un nombre de ping est nécessaire.")
Else
$OutPING = Run("ping -n " & $Nb & " " & $InHOST,@ScriptDir,@SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($OutPING)
$OutTrPING = StdoutRead($OutPING)
ClipPut($OutTrPING)
MsgBox(0,"Resultats du Ping - Données envoyées dans votre CTRL+V / +X",$OutTrPING)
EndIf
Case $Button_DNS
$InHOST = GUICtrlRead($Button_HOST)
$OutDNS = Run("nslookup " & $InHOST,@ScriptDir, @SW_HIDE, $STDOUT_CHILD)
ProcessWaitClose($OutDNS)
$OutTrDNS = StdoutRead($OutDNS)
ClipPut($OutTrDNS)
MsgBox(0,"Resultat NSLookup - Données envoyées dans votre CTRL+V / +X",$OutTrDNS)
Case $Button_NFO
WaitMsg()
$OutNFO = Run("systeminfo",@ScriptDir,@SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($OutNFO)
$OutTrNFO = StdoutRead($OutNFO)
ClipPut($OutTrNFO)
MsgBox(0,"System Informations (RAW) - Données envoyées dans votre CTRL+V / +X",$OutTrNFO)
Case $Button_CMD
Run("cmd")
Case $Button_PSH
Run("powershell")
Case $Button_WMIC
Run("wmic")
Case $Button_MMC
ShellExecute("mmc")
;Fonctions Passives (Menus)
;Source Shell (10/11) : https://winaero.com/windows-11-shell-commands-the-complete-list/
;Source Win11 (MSCmd) : https://techzoneonline.com/windows-11-run-commands-list/#Windows-11-Settings---System
Case $Menu_Sys_Run
ShellExecute("shell:::{2559a1f3-21d7-11d4-bdaf-00c04f60b9f0}")
Case $Menu_Sys_RunB
$TARGET_Program = InputBox("Run","Type the name of a program to run (Will be run in current mode)","","",378, 224)
Run($TARGET_Program)
; 378, 224
Case $Menu_Sys_CfgPanelOld
ShellExecute("shell:::{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}")
Case $Menu_Sys_CfgPanelNew
ShellExecute("ms-settings:")
Case $Menu_Sys_AdmTools
ShellExecute("shell:Common Administrative Tools")
; Fonctions Passives - Actions CMD
Case $Menu_Cmd_CHK_C
WaitMsg()
$oRun = Run("chkdsk /f", "", @SW_SHOW,$STDOUT_CHILD)
ProcessWaitClose($oRun)
$oTrRun = StdoutRead($oRun)
ClipPut($oTrRun)
MsgBox(0,"ChkDsk Resultats",$oTrRun)
Case $Menu_Cmd_CHK_SPEC
WaitMsg()
$SelDrive = InputBox("Disque Personnalisé","Disque ?","C")
$pRun = Run("chkdsk /f " & $SelDrive, "", @SW_SHOW,$STDOUT_CHILD)
ProcessWaitClose($pRun)
$pTrRun = StdoutRead($pRun)
ClipPut($pTrRun)
MsgBox(0,"ChkDsk Resultats",$pTrRun)
Case $Menu_Cmd_CHOCOSETUP
$ChocoGlobal = "feature enable -n=allowGlobalConfirmation"
$ChocoCMD = "Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))"
RunWait("powershell" & " " & $ChocoCMD)
RunWait("choco " & " " & $ChocoGlobal)
Case $Menu_Cmd_CHOCOPKG_RECPACK
Run("choco install curl wget git")
Case $Menu_Cmd_DISM_Scan
WaitMsg()
$dismcRun = Run("DISM /Online /Cleanup-Image /ScanHealth","", @SW_SHOW,$STDOUT_CHILD)
ProcessWaitClose($dismcRun)
$dismcTrRun = StdoutRead($dismcRun)
ClipPut($dismcTrRun)
MsgBox(0,"SFC Resultats",$dismcTrRun)
Case $Menu_Cmd_DISM_Rest
WaitMsg()
$dismhRun = Run("DISM /Online /Cleanup-Image /RestoreHealth","", @SW_SHOW,$STDOUT_CHILD)
ProcessWaitClose($dismhRun)
$dismhTrRun = StdoutRead($dismhRun)
ClipPut($dismhTrRun)
MsgBox(0,"SFC Resultats",$dismhTrRun)
Case $Menu_Cmd_SFC
WaitMsg()
$sfcRun = Run("sfc /scannow","", @SW_SHOW,$STDOUT_CHILD)
ProcessWaitClose($sfcRun)
$sfcTrRun = StdoutRead($sfcRun)
ClipPut($sfcTrRun)
MsgBox(0,"SFC Resultats",$sfcTrRun)
Case $Menu_Cmd_PNG_LOCAL
WaitMsg()
$pnglRun = Run("ping localhost","", @SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($pnglRun)
$pTrRun = StdoutRead($pnglRun)
ClipPut($pTrRun)
MsgBox(0,"Ping Resultats",$pTrRun)
Case $Menu_Cmd_PNG_HOST
WaitMsg()
$p2nglRun = Run("ping " & @ComputerName,"", @SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($p2nglRun)
$p2TrRun = StdoutRead($p2nglRun)
ClipPut($p2TrRun)
MsgBox(0,"Ping Resultats",$p2TrRun)
Case $Menu_Cmd_PNG_INTERNALV4
WaitMsg()
$p3nglRun = Run("ping 127.0.0.1","", @SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($p3nglRun)
$p3TrRun = StdoutRead($p3nglRun)
ClipPut($p3TrRun)
MsgBox(0,"Ping Resultats",$p3TrRun)
Case $Menu_Cmd_PNG_INTERNALV6
WaitMsg()
$p4nglRun = Run("ping ::1","", @SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($p4nglRun)
$p4TrRun = StdoutRead($p4nglRun)
ClipPut($p4TrRun)
MsgBox(0,"Ping Resultats",$p4TrRun)
; NET
Case $Menu_NET_IPCFG_EASY
$ipcfgeRun = Run("ipconfig", "", @SW_HIDE, $STDOUT_CHILD)
ProcessWaitClose($ipcfgeRun)
$ipcfgeTrRun = StdoutRead($ipcfgeRun)
ClipPut($ipcfgeTrRun)
MsgBox(0, "Configuration IP Simple", $ipcfgeTrRun)
Case $Menu_NET_IPCFG_ADVC
$ipcfgaRun = Run("ipconfig /all", "", @SW_HIDE, $STDOUT_CHILD)
ProcessWaitClose($ipcfgaRun)
$ipcfgaTrRun = StdoutRead($ipcfgaRun)
ClipPut($ipcfgaTrRun)
MsgBox(0, "Configuration IP Avancée", $ipcfgaTrRun)
Case $Menu_NET_ReleaseIP
$iprlRun = Run("ipconfig /release","",@SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($iprlRun)
$iprlTrRun = StdoutRead($iprlRun)
ClipPut($iprlTrRun)
MsgBox(0,"IP Relachée", $iprlTrRun)
Case $Menu_NET_RenewIP
$iprrRun = Run("ipconfig /renew","",@SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($iprrRun)
$iprrTrRun = StdoutRead($iprrRun)
ClipPut($iprrTrRun)
MsgBox(0,"IP Relachée", $iprrTrRun)
Case $Menu_NET_ReloadCard
RunWait("net stop WlanSvc", "", @SW_HIDE)
RunWait("sc WlanSvc start", "", @SW_HIDE)
RunWait("net stop WwanSvc", "", @SW_HIDE)
RunWait("sc WwanSvc start", "", @SW_HIDE)
RunWait("net stop IpxlatCfgSvc", "", @SW_HIDE)
RunWait("sc IpxlatCfgSvc start", "", @SW_HIDE)
RunWait("net stop NetSetupSvc", "", @SW_HIDE)
RunWait("sc NetSetupSvc start", "", @SW_HIDE)
RunWait("net stop NcbService", "", @SW_HIDE)
RunWait("sc NcbService start", "", @SW_HIDE)
Case $Menu_NET_GetMacV
$getmacrun = Run("getmac /FO LIST /V","",@SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($getmacrun)
$macdata = StdoutRead($getmacrun)
ClipPut($macdata)
MsgBox(0,"Liste des MAC Physiques",$macdata)
; DNS
Case $Menu_DNS_Clear
$dnsfRun = Run("ipconfig /flushdns","",@SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($dnsfRun)
$dnsfTrRun = StdoutRead($dnsfRun)
ClipPut($dnsfTrRun)
MsgBox(0,"DNS Flush", $dnsfTrRun)
Case $Menu_DNS_Console
LaunchShell("dnsmgmt.msc")
Case $Menu_DNS_GETINFO
$dnsservers = Run("powershell Get-DnsClientServerAddress | Select-Object ExpandProperty ServerAddresses","",@SW_HIDE,$STDOUT_CHILD)
$dnsserversTr = StdoutRead($dnsservers)
ProcessWaitClose($dnsservers)
ClipPut($dnsserversTr)
MsgBox(0,"Serveurs DNS",$dnsserversTr)
; UGR
Case $Menu_Ugr_Console
ShellExecute("lusrmgr.msc")
Case $Menu_Ugr_Add
CreateUser()
Case $Menu_Ugr_Del
DeleteUser()
Case $Menu_Ugr_Grp_Add
CreateGroup()
Case $Menu_Ugr_Grp_Del
DeleteGroup()
Case $Menu_Ugr_GetInfo
$CHX = 0
$UsernameSel = @UserName
$CHX = MsgBox(4,"Mode","Oui - Mode Simple (par défaut)" & @CRLF & "Non - Mode Avancé" & @CRLF & " " & @CRLF & "Mode par défaut dans 5s",5)
; GetUserInfo($UsernameSel)
if $CHX = 6 OR $CHX = "-1" Then
GetUserInfo($UsernameSel)
ElseIf $CHX = 7 Then
GetUserInfoEx($UsernameSel)
EndIf
Case $Menu_Ugr_GetInfo_Spec
$CHX = 0
$UsernameSel = InputBox("Nom d'utilisateur","Saisir le nom d'utilisateur LDAP (username)")
$CHX = MsgBox(4,"Mode","Oui - Mode Simple (par défaut)" & @CRLF & "Non - Mode Avancé" & @CRLF & " " & @CRLF & "Mode par défaut dans 5s",5)
; GetUserInfo($UsernameSel)
if $CHX = 6 OR $CHX = "-1" Then
GetUserInfo($UsernameSel)
ElseIf $CHX = 7 Then
GetUserInfoEx($UsernameSel)
EndIf
Case $Menu_Ugr_Grp_Man_AddUserTo
Case $Menu_Ugr_Grp_Man_ListUsers
; CSL
Case $Menu_Csl_DiskMgmt
LaunchShell("diskmgmt.msc")
Case $Menu_Csl_Crt
LaunchShell("certmgr.msc")
Case $Menu_Csl_GPLocal
LaunchShell("gpedit.msc")
Case $Menu_Csl_GPResul
Case $Menu_Csl_GPSecur
Case $Menu_Csl_Services
LaunchShell("services.msc")
Case $Menu_Csl_Tpm
LaunchShell("tpm.msc")
Case $Menu_Csl_Wfw
LaunchShell("wf.msc")
EndSwitch
WEnd
Func WaitMsg()
MsgBox(0,"Veuillez patienter","L'opération peut prendre quelques instants." & @CRLF & "Le logiciel n'est pas utilisable pendant ce laps de temps.",2)
EndFunc
;------------------------------------ Manage Users ------------------------------------
Func CreateUser()
HideMain()
Local $GUI_CreateUser = GUICreate("",350,180)
GUISetFont(14,100,"","Segoe UI",$GUI_CreateUser)
GUISetBkColor($CurrentAccent)
Local $UserLB = GUICtrlCreateLabel("Username :",5,8)
GUICtrlSetColor(-1,0xFFFFFF)
Local $UserID = GUICtrlCreateInput("",100,5,247,30)
GUICtrlSetBkColor(-1,$CurrentAccent)
GUICtrlSetColor(-1,0xFFFFFF)
Local $PassLB = GUICtrlCreateLabel("Password :",5,43)
GUICtrlSetColor(-1,0xFFFFFF)
Local $PassID = GUICtrlCreateInput("123+aze@#s",100,40,247,30)
GUICtrlSetBkColor(-1,$CurrentAccent)
GUICtrlSetColor(-1,0xFFFFFF)
Local $AsAdm = GUICtrlCreateCheckbox("Accés Administrateur",5,80,380,30)
GUICtrlSetBkColor(-1,0xFFFFFF)
Local $AsRdp = GUICtrlCreateCheckbox("Accés Remote Desktop",5,110,380,30)
GUICtrlSetBkColor(-1,0xFFFFFF)
Local $Cancel = GUICtrlCreateButton("Annuler",5,142,165,35)
GUICtrlSetCursor(-1,0)
Local $Create = GUICtrlCreateButton("Créer",180,142,165,35)
GUICtrlSetCursor(-1,0)
GUISetState(@SW_SHOW,$GUI_CreateUser)
While 1
$lMsg = GUIGetMsg()
Switch $lMsg
Case $GUI_EVENT_CLOSE,$Cancel
CloseGUI($GUI_CreateUser)
ExitLoop
Case $Create
$usr = GUICtrlRead($UserID)
$pss = GUICtrlRead($PassID)
$adm = GUICtrlRead($AsAdm)
if $adm = $GUI_CHECKED Then
$param_adm = 1
$settingadm = " Oui"
Else
$param_adm = 0
$settingadm = " Non"
EndIf
$rdp = GUICtrlRead($AsRdp)
if $rdp = $GUI_CHECKED Then
$param_rdp = 1
$settingrdp = " Oui"
Else
$param_rdp = 0
$settingrdp = " Non"
EndIf
ClipPut("Username : " & $usr & @CRLF & "Password : " & $pss & @CRLF & "Admin :" & $settingadm & @CRLF & "RDP :" & $settingrdp)
MsgBox(4,"Définition du nouvel utilisateur","Username : " & $usr & @CRLF & "Password : " & $pss & @CRLF & "Admin :" & $settingadm & @CRLF & "RDP :" & $settingrdp)
; User Creation
Run("Net User " & $usr & " " & $pss & " /add","",@SW_SHOW)
;Admin
if ($param_adm = 1) Then
Sleep(1200)
$edit_grp_run1 = Run('net localgroup "Administrators" ' & $usr & ' /add',"",@SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($edit_grp_run1)
$grp_tr1 = StdoutRead($edit_grp_run1)
ConsoleWrite($grp_tr1)
EndIf
;Rdp
if ($param_rdp = 1) Then
Sleep(1200)
$edit_grp_run2 = Run('net localgroup' & ' "Remote Desktop Users" ' & $usr & ' /add',"",@SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($edit_grp_run2)
$grp_tr2 = StdoutRead($edit_grp_run2)
ConsoleWrite($grp_tr2)
EndIf
$lMsg = 0
$param_adm = 0
$param_rdp = 0
$settingadm = 0
$settingrdp = 0
$usr = 0
$pss = 0
$adm = 0
$rdp = 0
CloseGUI($GUI_CreateUser)
;---------------
EndSwitch
WEnd
EndFunc
Func GetUserInfo($UsernameID)
$GIRun = Run("powershell Get-ADUser " & $UsernameID,"",@SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($GIRun)
$GIRunTR = StdoutRead($GIRun)
ClipPut($GIRunTR)
MsgBox(0,"Information Utilisateur " & $UsernameID,$GIRunTR)
EndFunc
Func GetUserInfoEx($UsernameID)
$GIRun = Run("powershell Get-ADUser " & $UsernameID & " -Properties *","",@SW_HIDE,$STDOUT_CHILD)
ProcessWaitClose($GIRun)
$GIRunTR = StdoutRead($GIRun)
ClipPut($GIRunTR)
MsgBox(0,"Information Utilisateur - Mode Etendue de données - " & $UsernameID,$GIRunTR)
EndFunc
Func DeleteUser()
EndFunc
Func CreateGroup()
EndFunc
Func DeleteGroup()
EndFunc
Func LaunchProgram($program)
Run($program,"",@SW_SHOW)
EndFunc
Func LaunchShell($shellcommand)
ShellExecute($shellcommand)
EndFunc
;BuiltinUsersProtection
Func UserProtectCheck($UserID)
if $UserID = "Administrator" OR $UserID = "Administrateur" Then
$IsAdministrator = 1
EndIf
EndFunc
;--------------------------------------------------------------------------------------
Func CloseGUI($GUI)
GUISetState(@SW_HIDE,$GUI)
GUISetState(@SW_SHOW,$GUI_Main_Frame)
EndFunc
Func HideMain()
GUISetState(@SW_HIDE,$GUI_Main_Frame)
EndFunc