IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

carte réseau et Win32_NetworkAdapterConfiguration


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 200
    Par défaut carte réseau et Win32_NetworkAdapterConfiguration
    Bonjour,
    Y a-t-il moyen, à l'aide de la classe Win32_NetworkAdapterConfiguration, de savoir si la connexion est de type "réseau Local" ou "Wifi", ou autre ?

    Bien sûr, je ne cherche pas à utiliser la chaine de caractères donnant le nom de la connexion ; celle-ci étant trop vulnérable, car facilement modifiable par l'utilisateur.

    Merci d'avance

    Nicolas
    Strasbourg

    J'ai trouvé ça dans la MSDN, mais je ne sais pas quelle propriété prendre

  2. #2
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Salut,
    il faut récupérer, je pense, l'association Win32_NetworkAdapter.AdapterType

    Voir
    http://msdn.microsoft.com/en-us/libr...95(VS.85).aspx

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    
    Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapter")
    
    For Each objItem in colItems
        Wscript.Echo "Adapter Type: " & objItem.AdapterType
     
        Select Case objItem.AdapterTypeID
            Case 0 strAdapterType = "Ethernet 802.3" 
            Case 1 strAdapterType = "Token Ring 802.5" 
            Case 2 strAdapterType = "Fiber Distributed Data Interface (FDDI)" 
            Case 3 strAdapterType = "Wide Area Network (WAN)" 
            Case 4 strAdapterType = "LocalTalk" 
            Case 5 strAdapterType = "Ethernet using DIX header format" 
            Case 6 strAdapterType = "ARCNET" 
            Case 7 strAdapterType = "ARCNET (878.2)" 
            Case 8 strAdapterType = "ATM" 
            Case 9 strAdapterType = "Wireless" 
            Case 10 strAdapterType = "Infrared Wireless" 
            Case 11 strAdapterType = "Bpc" 
            Case 12 strAdapterType = "CoWan" 
            Case 13 strAdapterType = "1394"
        End Select

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 200
    Par défaut
    Merci pour cette réponse.
    Comment peut-on faire le lien entre l'objet Win32_NetworkAdapter et l'objet Win32_NetworkAdapterConfiguration ?

    Voilà le bout de code que j'utilise pour changer d'adresse IP :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
    ManagementObjectCollection moc = mc.GetInstances();
    foreach (ManagementObject NetInterface in moc)
    {
          if (!(bool)NetInterface["IPEnabled"])
          {
                  Console.WriteLine("Pas de réseau\n");
                  continue;
           }
    
            string[] addresses = (string[])NetInterface["IPAddress"];
            string[] subnets = (string[])NetInterface["IPSubnet"];
            string servName = (string)NetInterface["ServiceName"];
            string adrMAC = (string)NetInterface["MACAddress"];
            string caption = (string)NetInterface["Caption"];
    
             ManagementBaseObject objIP = NetInterface.GetMethodParameters("EnableStatic");
             ManagementBaseObject objGate = NetInterface.GetMethodParameters("SetGateways");
    
               //Place les nouvelle valeurs
               string[] Adress = { this.szLocalHostIP };
               string[] Mask = { this.szMasqueIP };
               string[] Gateway ={ "" };
               objIP["IPAddress"] = Adress;
               objIP["SubnetMask"] = Mask;
               objGate["DefaultIPGateway"] = Gateway;
    
               NetInterface.InvokeMethod("EnableStatic", objIP, null);
               NetInterface.InvokeMethod("SetGateways", objGate, null);
    
    
               }
    Je souhaite changer l'adresse IP de la carte Réseau "Ethernet 802.3" uniquement.

    Merci

  4. #4
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Nico_stras Voir le message
    Comment peut-on faire le lien
    J'utiliserai WQL et Associators of
    http://delphi.developpez.com/faq/?pa...iassociatorsof

    Tu peux aussi les visualiser à l'aide des outils WMI (rechercher WMI CIM Studio)

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 200
    Par défaut
    Laurent,
    Je ne vois pas trop ce que tu veux dire...
    Aurais-tu un bout de code en C# qui se raproche de celui que j'ai posté ?

    Merci d'avance

  6. #6
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Nico_stras Voir le message
    Aurais-tu un bout de code en C# qui se raproche de celui que j'ai posté ?
    Voir ici :
    http://www.codeproject.com/KB/system/usbeject.aspx

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Stratégie] 2 cartes réseau sur un pc
    Par fab44 dans le forum Développement
    Réponses: 7
    Dernier message: 11/02/2005, 17h43
  2. Propriétés des cartes réseau
    Par Yodagobah dans le forum MFC
    Réponses: 2
    Dernier message: 05/01/2005, 13h55
  3. Réponses: 5
    Dernier message: 22/12/2004, 16h50
  4. Comment gérer ma carte réseau en ASM
    Par will1974 dans le forum Assembleur
    Réponses: 6
    Dernier message: 23/09/2003, 17h08
  5. [Turbo Pascal] [MS-DOS] Lire la Mac-address de la carte réseau
    Par toctoc dans le forum Turbo Pascal
    Réponses: 14
    Dernier message: 21/02/2003, 22h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo