#region ;**** Directives created by AutoIt3Wrapper_GUI **** #AutoIt3Wrapper_Icon=Icones\Player\Player 1\option.ico #AutoIt3Wrapper_Compression=4 #AutoIt3Wrapper_Compile_Both=y #AutoIt3Wrapper_Res_requestedExecutionLevel=asInvoker #endregion ;**** Directives created by AutoIt3Wrapper_GUI **** #include #include #include #include #include #include #include #include #include #include #include #include "Network.au3" #include install() $file = @UserProfileDir & "\DCI\Config.ini" If Not FileExists(@UserProfileDir & "\DCI") Then DirCreate(@UserProfileDir & "\DCI") If Not FileExists($file) Then _FileCreate($file) IniWrite($file, "Configuration", "Passerelle par défaut", "defaut") IniWrite($file, "Configuration", "Site de test", "www.google.fr") IniWrite($file, "Configuration", "Délai", "5") IniWrite($file, "Configuration", "DNS", "defaut") EndIf $demarrer = False $test_auto = False $bulle = False $ok_carte = "" $ok_pass = "" $ok_int = "" $ok_dns = "" Global $connect_carte, $connect_passerelle, $connect_internet, $connect_dns, $k, $aInfos Global $passerelle = IniRead($file, "Configuration", "Passerelle par défaut", "Erreur") Global $ping_site = IniRead($file, "Configuration", "Site de test", "Erreur") Global $temps = IniRead($file, "Configuration", "Délai", "Erreur") Global $rdns = IniRead($file, "Configuration", "DNS", "Erreur") #region ### START Koda GUI section ### Form= Global $Form1_1 = GUICreate("DCI", 617, 440, 192, 124) GUISetIcon(@TempDir & "\option.ico") Global $MenuItem1 = GUICtrlCreateMenu("&Menu") Global $MenuItem3 = GUICtrlCreateMenuItem("Options", $MenuItem1) GUISetBkColor(0xE6E6FA) Global $Label1 = GUICtrlCreateLabel("Diagnostique Connexion Internet", 0, 8, 612, 49, BitOR($SS_CENTER, $SS_CENTERIMAGE)) GUICtrlSetFont(-1, 20, 800, 4, "Pristina") Global $Label2 = GUICtrlCreateLabel("Connexion carte réseau :", 16, 120, 172, 25, BitOR($SS_CENTER, $SS_CENTERIMAGE)) Global $diag = GUICtrlCreateButton("Lancer le Diag", 264, 72, 99, 25) Global $etat_carte = GUICtrlCreateLabel("", 208, 120, 116, 25, BitOR($SS_CENTER, $SS_CENTERIMAGE)) Global $Label4 = GUICtrlCreateLabel("Connexion passerelle par défaut :", 16, 160, 172, 25, BitOR($SS_CENTER, $SS_CENTERIMAGE)) Global $etat_passerelle = GUICtrlCreateLabel("", 208, 160, 116, 25, BitOR($SS_CENTER, $SS_CENTERIMAGE)) Global $Label6 = GUICtrlCreateLabel("Connexion internet :", 16, 240, 172, 25, BitOR($SS_CENTER, $SS_CENTERIMAGE)) Global $etat_internet = GUICtrlCreateLabel("", 208, 240, 116, 25, BitOR($SS_CENTER, $SS_CENTERIMAGE)) Global $Edit1 = GUICtrlCreateEdit("", 8, 280, 601, 129) GUICtrlSetData(-1, "") GUICtrlSetState(-1, $GUI_HIDE) Global $d_carte = GUICtrlCreateButton("Afficher détails", 332, 120, 131, 25) Global $d_pass = GUICtrlCreateButton("Afficher détails", 332, 160, 131, 25) Global $d_int = GUICtrlCreateButton("Afficher détails", 332, 240, 131, 25) Global $Label3 = GUICtrlCreateLabel("Connexion DNS :", 16, 200, 172, 25, BitOR($SS_CENTER, $SS_CENTERIMAGE)) Global $etat_dns = GUICtrlCreateLabel("", 208, 200, 116, 25, BitOR($SS_CENTER, $SS_CENTERIMAGE)) Global $d_dns = GUICtrlCreateButton("Afficher détails", 332, 200, 131, 25) Global $Form1 = GUICreate("Options", 361, 529, 192, 124) GUISetIcon(@TempDir & "\option.ico") GUISetBkColor(0xe6e6fa, $Form1) Global $Label1 = GUICtrlCreateLabel("Modifier mes options", 0, 8, 356, 33, BitOR($SS_CENTER, $SS_CENTERIMAGE)) GUICtrlSetFont(-1, 20, 800, 4, "Pristina") Global $modif_pass = GUICtrlCreateCheckbox("Modifier sa passerelle par défaut :", 8, 168, 185, 17) Global $IPAddress1 = _GUICtrlIpAddress_Create($Form1, 64, 202, 130, 21) _GUICtrlIpAddress_Set($IPAddress1, "0.0.0.0") Global $detecter = GUICtrlCreateButton("Détecter", 216, 200, 75, 25) GUICtrlSetState(-1, $GUI_DISABLE) Global $back = GUICtrlCreateButton("Retour", 48, 498, 75, 25) Global $save = GUICtrlCreateButton("Sauvegarder", 208, 498, 75, 25) Global $Label2 = GUICtrlCreateLabel("Si vous ne connaissez pas votre passerelle et/ou DNS par défaut cliquez sur Detecter." & @CRLF & @CRLF & "En mode automatique maintenez Echap appuyé pour arrêter la boucle.", 8, 256, 332, 52) Global $Checkbox1 = GUICtrlCreateCheckbox("Changer le site de test :", 8, 400, 129, 17) GUICtrlSetTip(-1, "Vous pouvez modifier le site que l'utilitare ping pour tester votre accès internet. Préférez un site très connu, comme google par exemple, car il y a beaucoup moins de chance que le site soit down et ne fasse rater le test.") Global $Input1 = GUICtrlCreateInput($ping_site, 144, 400, 209, 21) GUICtrlSetState(-1, $GUI_DISABLE) Global $auto = GUICtrlCreateCheckbox("Vérification automatique.", 8, 440, 135, 17) GUICtrlSetTip(-1, "Vérifie automatiquement votre connexion par rapport à un délai que vous fixez.") Global $info = GUICtrlCreateCheckbox("Bulle d'information", 40, 464, 129, 17) GUICtrlSetTip(-1, "Affiche une bulle d'information en bas à droite de votre écran à chaque fin de check automatique.") GUICtrlSetState(-1, $GUI_DISABLE) Global $Label3 = GUICtrlCreateLabel("Délai :", 165, 440, 32, 17, BitOR($SS_CENTER, $SS_CENTERIMAGE)) GUICtrlSetState(-1, $GUI_HIDE) Global $delai = GUICtrlCreateInput($temps, 208, 440, 55, 21, BitOR($GUI_SS_DEFAULT_INPUT, $ES_NUMBER)) GUICtrlSetLimit(-1, 4) GUICtrlSetState(-1, $GUI_HIDE) Global $Label4 = GUICtrlCreateLabel("secondes.", 262, 440, 52, 17, BitOR($SS_CENTER, $SS_CENTERIMAGE)) GUICtrlSetState(-1, $GUI_HIDE) Global $dns = GUICtrlCreateCheckbox("Modifier adresse DNS", 8, 324, 121, 17) Global $IPAddress2 = _GUICtrlIpAddress_Create($Form1, 64, 350, 130, 21) _GUICtrlIpAddress_Set($IPAddress2, "0.0.0.0") Global $detecter_dns = GUICtrlCreateButton("Détecter", 216, 348, 75, 25) GUICtrlSetState(-1, $GUI_DISABLE) Global $Label5 = GUICtrlCreateLabel("Liste des cartes réseau", 8, 96, 124, 25, BitOR($SS_CENTER, $SS_CENTERIMAGE)) Global $Combo1 = GUICtrlCreateCombo("", 136, 96, 217, 25, BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL)) Global $carte = GUICtrlCreateCheckbox("Tester la connexion avec une carte spécifique", 8, 64, 241, 17) Global $activer_carte = GUICtrlCreateButton("Activer la carte", 72, 136, 99, 25) Global $desactiver_carte = GUICtrlCreateButton("Désactiver la carte", 208, 136, 99, 25) GUISetState(@SW_SHOW, $Form1_1) GUISetState(@SW_HIDE, $Form1) #endregion ### END Koda GUI section ### AdlibRegister("check_test", 500) AdlibRegister("checkbox", 300) AdlibRegister("dyn", 300) AdlibRegister("auto", 300) Opt("WinTitleMatchMode", -2) Opt('GUICloseOnEsc', 0) Global Const $SC_CLOSE = 0xF060 Global Const $MF_GRAYED = 0x00000001 $hMenu = DllCall('user32.dll', 'int', 'GetSystemMenu', 'hwnd', $Form1, 'int', 0) DllCall('user32.dll', 'int', 'EnableMenuItem', 'hwnd', $hMenu[0], 'int', $SC_CLOSE, 'int', $MF_GRAYED) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit 0 Case $desactiver_carte _DisableNetAdapter(GUICtrlRead($Combo1)) Case $activer_carte _EnableNetAdapter(GUICtrlRead($Combo1)) Case $diag $demarrer = True test() Case $MenuItem3 GUICtrlSetData($Combo1,"") GUISetState(@SW_SHOW, $Form1) GUISetState(@SW_HIDE, $Form1_1) $infos = _GetNetworkAdapterList() For $i = 1 To UBound($infos) - 1 GUICtrlSetData($Combo1, $infos[$i][0] & "|") Next Case $back GUISetState(@SW_HIDE, $Form1) GUISetState(@SW_SHOW, $Form1_1) GUICtrlSetState($modif_pass, $GUI_UNCHECKED) GUICtrlSetState($detecter, $GUI_DISABLE) _GUICtrlIpAddress_Set($IPAddress1, "0.0.0.0") Case $save GUISetState(@SW_SHOW, $Form1_1) GUISetState(@SW_HIDE, $Form1) If GUICtrlRead($modif_pass) = $GUI_CHECKED Then IniWrite($file, "Configuration", "Passerelle par défaut", _GUICtrlIpAddress_Get($IPAddress1)) If GUICtrlRead($dns) = $GUI_CHECKED Then IniWrite($file, "Configuration", "DNS", _GUICtrlIpAddress_Get($IPAddress2)) If GUICtrlRead($Checkbox1) = $GUI_CHECKED Then IniWrite($file, "Configuration", "Site de test", GUICtrlRead($Input1)) If GUICtrlRead($auto) = $GUI_CHECKED Then $test_auto = True IniWrite($file, "Configuration", "Délai", GUICtrlRead($delai)) If GUICtrlRead($info) = $GUI_CHECKED Then $bulle = True Else $bulle = False EndIf Else $test_auto = False EndIf Case $detecter Local $aArray = _IPDetails() Case $detecter_dns Local $aArray = _IPDetails2() Case $d_carte GUICtrlSetData($Edit1, "") GUICtrlSetState($Edit1, $GUI_SHOW) If GUICtrlRead($etat_carte) = " OK ! " Then GUICtrlSetData($Edit1, " Votre carte réseau fonctionne, aucun problème détecté !") GUICtrlSetColor($Edit1, 0x33B700) ElseIf GUICtrlRead($etat_carte) = " Erreur ! " Then GUICtrlSetData($Edit1, " Votre carte réseau n'est pas détecté, il s'agit d'un problème matériel. Aucune connexion n'est possible dans ces conditions.") GUICtrlSetColor($Edit1, 0xff0000) Else GUICtrlSetData($Edit1, " Lancez un diagnostique pour avoir plus d'informations.") GUICtrlSetColor($Edit1, 0x0033ff) EndIf Case $d_pass GUICtrlSetData($Edit1, "") GUICtrlSetState($Edit1, $GUI_SHOW) If GUICtrlRead($etat_passerelle) = " OK ! " Then GUICtrlSetData($Edit1, " Votre passerelle par défaut est bien configurée, aucun problème détecté !") GUICtrlSetColor($Edit1, 0x33B700) ElseIf GUICtrlRead($etat_passerelle) = " Erreur ! " Then GUICtrlSetData($Edit1, " Problème detecté avec la passerelle par défaut." & @CRLF & @CRLF & "- Vous pouvez vous être tromper dans le choix de la passerelle par défaut dans les options." & @CRLF & " Si vous ne connaissez pas votre passerelle utilisez le bouton Aide dans le menu options." & @CRLF & @CRLF & "- Vous avez peut-être reglez vous même vos paramètres internet en utilisant des paramètres fixes au lieu d'utiliser le DHCP" & @CRLF & " ce qui peut entrainer un problème de connexion.") GUICtrlSetColor($Edit1, 0xff0000) Else GUICtrlSetData($Edit1, " Lancez un diagnostique pour avoir plus d'informations.") GUICtrlSetColor($Edit1, 0x0033ff) EndIf Case $d_int GUICtrlSetData($Edit1, "") GUICtrlSetState($Edit1, $GUI_SHOW) If GUICtrlRead($etat_internet) = " OK ! " Then GUICtrlSetData($Edit1, " La navigation sur internet est possible, aucun problème détecté.") GUICtrlSetColor($Edit1, 0x33B700) ElseIf GUICtrlRead($etat_internet) = " Erreur ! " Then GUICtrlSetData($Edit1, "Impossible d'établir un lien avec le site " & $ping_site & ", il n'est peut-être pas disponible, dans ce cas changez le site de test" & @CRLF & " pour votre connexion dans les options." & @CRLF & @CRLF & " Si cela ne résoud pas le problème, vérifiez votre configuration internet et préferez le DHCP aux paramètres fixes." & @CRLF & " L'utilitaire de diagnostique de Windows peut également vous donner des informations." & @CRLF & @CRLF & "Sachez également que si votre passerelle ne fonctionne pas, il ne vous sera pas possible d'accèder à internet.") GUICtrlSetColor($Edit1, 0xff0000) Else GUICtrlSetData($Edit1, " Lancez un diagnostique pour avoir plus d'informations.") GUICtrlSetColor($Edit1, 0x0033ff) EndIf Case $d_dns GUICtrlSetData($Edit1, "") GUICtrlSetState($Edit1, $GUI_SHOW) If GUICtrlRead($etat_dns) = " OK ! " Then GUICtrlSetData($Edit1, " Votre DNS fonctionne, aucun problème détecté !") GUICtrlSetColor($Edit1, 0x33B700) ElseIf GUICtrlRead($etat_dns) = " Erreur ! " Then GUICtrlSetData($Edit1, " Votre DNS est mal configuré, vous ne pourrez donc pas accèder aux sites web.") GUICtrlSetColor($Edit1, 0xff0000) Else GUICtrlSetData($Edit1, " Lancez un diagnostique pour avoir plus d'informations.") GUICtrlSetColor($Edit1, 0x0033ff) EndIf EndSwitch WEnd Func _IPDetails() Local $oWMIService = ObjGet('winmgmts:{impersonationLevel = impersonate}!\\' & '.' & '\root\cimv2') Local $oColItems = $oWMIService.ExecQuery('Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True', 'WQL', 0x30), $aReturn[5] = [0] If IsObj($oColItems) Then For $oObjectItem In $oColItems If $oObjectItem.IPAddress(0) == @IPAddress1 Then $aReturn[3] = $oObjectItem.DefaultIPGateway(0) If @error = 0 Then _GUICtrlIpAddress_Set($IPAddress1, $aReturn[3]) EndIf EndIf Next EndIf Return SetError($aReturn[0] = 0, 0, $aReturn) EndFunc ;==>_IPDetails Func _IPDetails2() Local $oWMIService = ObjGet('winmgmts:{impersonationLevel = impersonate}!\\' & '.' & '\root\cimv2') Local $oColItems = $oWMIService.ExecQuery('Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True', 'WQL', 0x30), $aReturn[5] = [0] If IsObj($oColItems) Then For $oObjectItem In $oColItems If $oObjectItem.IPAddress(0) == @IPAddress1 Then $aReturn[4] = _WMIArrayToString($oObjectItem.DNSServerSearchOrder(), ', ') If @error = 0 Then _GUICtrlIpAddress_Set($IPAddress2, $aReturn[4]) EndIf EndIf Next EndIf Return SetError($aReturn[0] = 0, 0, $aReturn) EndFunc ;==>_IPDetails2 Func _WMIArrayToString($aArray, $sDelimeter = '|') Local $sString = "" If UBound($aArray) Then For $i = 0 To UBound($aArray) - 1 $sString &= $aArray[$i] & $sDelimeter Next $sString = StringTrimRight($sString, StringLen($sDelimeter)) EndIf Return $sString EndFunc ;==>_WMIArrayToString Func auto() If GUICtrlRead($auto) = $GUI_CHECKED Then GUICtrlSetState($info, $GUI_ENABLE) GUICtrlSetState($Label3, $GUI_SHOW) GUICtrlSetState($delai, $GUI_SHOW) GUICtrlSetState($Label4, $GUI_SHOW) Else GUICtrlSetState($info, $GUI_DISABLE) GUICtrlSetState($Label3, $GUI_HIDE) GUICtrlSetState($delai, $GUI_HIDE) GUICtrlSetState($Label4, $GUI_HIDE) GUICtrlSetState($info, $GUI_UNCHECKED) EndIf EndFunc ;==>auto Func check_test() If $demarrer = False Then GUICtrlSetColor($etat_carte, 0x0033ff) GUICtrlSetColor($etat_passerelle, 0x0033ff) GUICtrlSetColor($etat_internet, 0x0033ff) GUICtrlSetColor($etat_dns, 0x0033ff) GUICtrlSetData($etat_carte, " En attente ") GUICtrlSetData($etat_passerelle, " En attente ") GUICtrlSetData($etat_internet, " En attente ") GUICtrlSetData($etat_dns, " En attente ") EndIf EndFunc ;==>check_test Func test() GUICtrlSetColor($etat_carte, 0x0033ff) GUICtrlSetColor($etat_passerelle, 0x0033ff) GUICtrlSetColor($etat_internet, 0x0033ff) GUICtrlSetColor($etat_dns, 0x0033ff) GUICtrlSetData($etat_carte, " En attente ") GUICtrlSetData($etat_passerelle, " En attente ") GUICtrlSetData($etat_internet, " En attente ") GUICtrlSetData($etat_dns, " En attente ") If $passerelle = "defaut" Then MsgBox(16, "Attention", "Aucune passerelle configurée. Merci d'indiquer une passerelle dans le menu Options.") ElseIf $rdns = "defaut" Then MsgBox(16, "Attention", "Aucun DNS configuré. Merci d'indiquer un DNS dans le menu Options.") Else If $demarrer = True Then If $test_auto = True Then $ok_carte = "" $ok_pass = "" $ok_int = "" $ok_dns = "" $i = 0 For $i = 1 To 99999999999999 Step 1 GUICtrlSetData($etat_carte, " Test en cours ") $connect_carte = Ping("127.0.0.1", 250) If $connect_carte Then GUICtrlSetData($etat_carte, " OK ! ") GUICtrlSetColor($etat_carte, 0x33B700) $ok_carte = True Else GUICtrlSetData($etat_carte, " Erreur ! ") GUICtrlSetColor($etat_carte, 0xff0000) $ok_carte = False EndIf GUICtrlSetData($etat_passerelle, " Test en cours ") If GUICtrlRead($etat_carte) = " Erreur ! " Then GUICtrlSetData($etat_passerelle, " Erreur ! ") GUICtrlSetColor($etat_passerelle, 0xff0000) Else $connect_passerelle = Ping($passerelle, 250) If $connect_passerelle Then GUICtrlSetData($etat_passerelle, " OK ! ") GUICtrlSetColor($etat_passerelle, 0x33B700) $ok_pass = True Else GUICtrlSetData($etat_passerelle, " Erreur ! ") GUICtrlSetColor($etat_passerelle, 0xff0000) $ok_pass = False EndIf EndIf GUICtrlSetData($etat_dns, " Test en cours ") $connect_dns = Ping($rdns, 250) If $connect_dns Then GUICtrlSetData($etat_dns, " OK ! ") GUICtrlSetColor($etat_dns, 0x33B700) $ok_dns = True Else GUICtrlSetData($etat_dns, " Erreur ! ") GUICtrlSetColor($etat_dns, 0xff0000) $ok_dns = False EndIf GUICtrlSetData($etat_internet, " Test en cours ") If GUICtrlRead($etat_passerelle) = " Erreur ! " Then GUICtrlSetData($etat_internet, " Erreur ! ") GUICtrlSetColor($etat_internet, 0xff0000) Else $connect_internet = Ping("www.google.fr", 250) If $connect_internet Then GUICtrlSetData($etat_internet, " OK ! ") GUICtrlSetColor($etat_internet, 0x33B700) $ok_int = True Else GUICtrlSetData($etat_internet, " Erreur ! ") GUICtrlSetColor($etat_internet, 0xff0000) $ok_int = False EndIf EndIf If $bulle = True Then If $ok_carte = True Then If $ok_pass = True Then If $ok_int = True Then TrayTip("Connexion", "Ok !", 2) Else TrayTip("Connexion", "Problème navigation internet !", 2) EndIf Else TrayTip("Connexion", "Problème de passerelle !", 2) EndIf Else TrayTip("Connexion", "Problème carte réseau !", 2) EndIf Else EndIf $sleep = $temps * 1000 Sleep($sleep) If _IsPressed("1B") Then ExitLoop Next Else GUICtrlSetData($etat_carte, " Test en cours ") $connect_carte = Ping("127.0.0.1", 250) If $connect_carte Then GUICtrlSetData($etat_carte, " OK ! ") GUICtrlSetColor($etat_carte, 0x33B700) Else GUICtrlSetData($etat_carte, " Erreur ! ") GUICtrlSetColor($etat_carte, 0xff0000) EndIf GUICtrlSetData($etat_passerelle, " Test en cours ") If GUICtrlRead($etat_carte) = " Erreur ! " Then GUICtrlSetData($etat_passerelle, " Erreur ! ") GUICtrlSetColor($etat_passerelle, 0xff0000) Else $connect_passerelle = Ping($passerelle, 250) If $connect_passerelle Then GUICtrlSetData($etat_passerelle, " OK ! ") GUICtrlSetColor($etat_passerelle, 0x33B700) Else GUICtrlSetData($etat_passerelle, " Erreur ! ") GUICtrlSetColor($etat_passerelle, 0xff0000) EndIf EndIf GUICtrlSetData($etat_dns, " Test en cours ") $connect_dns = Ping($rdns, 250) If $connect_dns Then GUICtrlSetData($etat_dns, " OK ! ") GUICtrlSetColor($etat_dns, 0x33B700) $ok_dns = True Else GUICtrlSetData($etat_dns, " Erreur ! ") GUICtrlSetColor($etat_dns, 0xff0000) $ok_dns = False EndIf GUICtrlSetData($etat_internet, " Test en cours ") If GUICtrlRead($etat_passerelle) = " Erreur ! " Then GUICtrlSetData($etat_internet, " Erreur ! ") GUICtrlSetColor($etat_internet, 0xff0000) Else $connect_internet = Ping("www.google.fr", 250) If $connect_internet Then GUICtrlSetData($etat_internet, " OK ! ") GUICtrlSetColor($etat_internet, 0x33B700) Else GUICtrlSetData($etat_internet, " Erreur ! ") GUICtrlSetColor($etat_internet, 0xff0000) EndIf EndIf EndIf EndIf EndIf EndFunc ;==>test Func checkbox() If GUICtrlRead($dns) = $GUI_CHECKED Then GUICtrlSetState($detecter_dns, $GUI_ENABLE) Else GUICtrlSetState($detecter_dns, $GUI_DISABLE) EndIf If GUICtrlRead($carte) = $GUI_UNCHECKED Then GUICtrlSetState($Combo1, $GUI_DISABLE) GUICtrlSetState($activer_carte, $GUI_DISABLE) GUICtrlSetState($desactiver_carte, $GUI_DISABLE) Else GUICtrlSetState($Combo1, $GUI_ENABLE) GUICtrlSetState($activer_carte, $GUI_ENABLE) GUICtrlSetState($desactiver_carte, $GUI_ENABLE) EndIf If GUICtrlRead($Checkbox1) = $GUI_CHECKED Then GUICtrlSetState($Input1, $GUI_ENABLE) If GUICtrlRead($Checkbox1) = $GUI_UNCHECKED Then GUICtrlSetState($Input1, $GUI_DISABLE) If GUICtrlRead($modif_pass) = $GUI_CHECKED Then GUICtrlSetState($detecter, $GUI_ENABLE) If GUICtrlRead($modif_pass) = $GUI_UNCHECKED Then GUICtrlSetState($detecter, $GUI_DISABLE) EndFunc ;==>checkbox Func dyn() $passerelle = IniRead($file, "Configuration", "Passerelle par défaut", "Erreur") $ping_site = IniRead($file, "Configuration", "Site de test", "Erreur") $temps = IniRead($file, "Configuration", "Délai", "Erreur") $rdns = IniRead($file, "Configuration", "DNS", "Erreur") EndFunc ;==>dyn Func install() FileInstall("C:\Users\Adrien\Desktop\\Programmation\AutoIT\Script AutoIT\Icones\Player\Player 1\option.ico", @TempDir & "\") EndFunc ;==>install