Bonjour.
Je vous propose cet UDF qui permet de configurer la connexion réseau, obtenir des informations sur votre carte ou connexion.
Les fonctions utilisent WMI, ce qui évite de passer par des commandes externes telles que netsh.
Pour ceux qui utilisent une ancienne version de cet UDF, la fonction _InitWmi() a été supprimée. Il suffit donc de supprimer cette ligne dans votre script
Liste des fonctions disponibles :
► Afficher le texteFonctions
_DisableNetAdapter ; Désactive la carte réseau spécifiée
_EnableDHCP ; Configure la carte réseau spécifiée en DHCP (Adresse IP)
_EnableDHCP_DNS ; Configure la carte réseau spécifiée en DHCP (DNS)
_EnableNetAdapter ; Active la carte réseau spécifiée
_EnableStatic ; Configure l'adresse(s) IP statique(s) et masque(s) de sous-réseau de la carte réseau spécifiée
_FlushDNS ; Vide le cache DNS
_GetNetworkAdapterFromID ; Récupére le nom de la carte réseau (physique) en fonction du nom de la connexion (Connexion au réseau local par ex)
_GetNetworkAdapterInfos ; Récupère des informations sur la/les carte(s) réseau
_GetNetworkAdapterList ; Liste les cartes/connexions réseau
_GetNetworkGUI ; Récupère le GUID de la carte spécifiée (tel qu'il est défini dans la base de registre)
_GetNetworkIDFromAdapter ; Récupérer le nom de la connexion réseau (Connexion au réseau local) en fonction du nom de la carte (physique)
_IsWirelessAdapter ; Permet de savoir si la carte spécifiée est une carte wifi ou non
_ReleaseDHCPLease ; Libère la configuration DHCP actuelle
_RenewDHCPLease ; Renouvelle la configuration DHCP
_SetDNSDomain ; Configure le suffixe DNS pour la carte spécifiée
_SetDNSServerSearchOrder ; Configurer les adresses IP DNS et leur ordre pour la carte spécifiée
_SetDNSSuffixSearchOrder ; Configure l'ordre de recherche des domaines DNS pour la carte spécifiée
_SetDynamicDNSRegistration ; Active ou désactive les options d'enregistrement DNS pour la carte spécifiée
_SetGateways ; Configure la/les passerelle(s) pour la carte spécifiée
_SetWINSServer ; Configure le(s) serveur(s) WINS pour la carte spécifiée
#Include <array.au3> ; uniquement pour _ArrayDisplay()
#Include "network.au3"
; Liste des connexions/cartes disponibles
$infos = _GetNetworkAdapterList()
_ArrayDisplay($infos)
; Savoir si une carte est une carte wifi
If _IsWirelessAdapter("Intel(R) Centrino(R) Advanced-N 6205") Then MsgBox(0, "", "Cette carte est une carte wifi")
; Informations sur la carte dont la connexion réseau se nomme "Connexion au réseau local"
$infos = _GetNetworkAdapterInfos("Connexion au réseau local")
_ArrayDisplay($infos)
; Désactivation de la connexion correspondant à la carte réseau "Broadcom NetLink (TM) Gigabit Ethernet"
_DisableNetAdapter("Broadcom NetLink (TM) Gigabit Ethernet")
; Activation de la connexion correspondant à la carte réseau "Connexion au réseau local"
_EnableNetAdapter("Connexion au réseau local")
; Configurer la connexion en DHCP
_EnableDHCP("Broadcom NetLink (TM) Gigabit Ethernet")
; Configurer l'adresse IP manuellement
_EnableStatic("Broadcom NetLink (TM) Gigabit Ethernet", "192.168.10.11", "255.255.255.0")
; Configurer la passerelle par défaut
_SetGateways("Broadcom NetLink (TM) Gigabit Ethernet", "192.168.10.1")
; Configuration des serveurs DNS
Local $DNS_SERVERS[4] = [ "192.168.100.1", "192.168.100.2", "192.168.100.3", "192.168.100.4" ]
_SetDNSServerSearchOrder("Connexion au réseau local", $DNS_SERVERS)
; Configurer le domaine DNS
_SetDNSDomain ("Connexion au réseau local", "mondomain.loc")
; Configurer les suffixes DNS :
Local $DNS_SUFFIXES[2] = [ "mondomain.loc", "mydomain.priv" ]
_SetDNSSuffixSearchOrder("Connexion au réseau local", $DNS_SUFFIXES)
; Vider le cache DNS
FlushDNS()
; Configurer les serveurs WINS
_SetWINSServer("Connexion au réseau local", "192.168.100.251", "192.168.100.252")
; Cocher les options "Enregistrer les adresses de cette connexion dans le système DNS et
; Enregistrer le suffixe DNS de cette connexion pour l'enregistrement DNS
_SetDynamicDNSRegistration("Connexion au réseau local", True, True)
; Libère le bail DHCP
_ReleaseDHCPLease()
; Renouvelle le bail DHCP
_RenewDHCPLease()
Modifications :
- Ajout de la fonction _IsWirelessAdapter qui permet de savoir si une carte est une carte wifi (merci le forum US)
- Modification dans la fonction _GetNetworkAdapterList : filtre les cartes avec le champs 'AdapterType' au lieu du champ IPEnable
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Petite mise à jour de l'UDF :
- Correction de bugs relatifs à Windows XP
- Utilisation de la base de registre au lieu de WMI pour certaines requêtes (plus rapide)
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Comme je suis tordu j'aurais passé quelques heures à chercher d'où pouvait bien venir cette foutue erreur (après tout ya bien un Const ByRef dans la _ArrayToString() d'origine, ndd !)
Et à la fin j'aurais fait comme toi
" L'échec est le fondement de la réussite. " (Lao-Tseu ) " Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Bonjour à tous,
Je rencontre un souci avec l'UDF sous Windows10
La fonction _GetNetworkAdapterList me retourne une carte qui n’apparaît pas via la commande ipconfig ou l'interface graphique de gestion.
Bonjour
J'utilise cette udf pour changer mon adresse ip suivant le site ou je suis mais depuis le passage a win10 ca ne marche plus.
Je voulais savoir si cette udf était compatible avec win10 car certaine fonction marche mais le changement d'adresse ip ne fonctionne pas .
_enablestatic me met une erreur @error 6 mais je ne trouve pas d'infos sur cette erreur?
quelqu'un a t'il utilisé cette udf sous win10 ?