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

Windows Discussion :

activer/désactiver une carte réseau


Sujet :

Windows

  1. #1
    Membre régulier Avatar de jehrikhan
    Inscrit en
    Mars 2008
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 90
    Points : 89
    Points
    89
    Par défaut activer/désactiver une carte réseau
    Bonjour a tous,
    je cherche un moyen, par API ou autres, de désactiver ou activer un périphérique quelconque.
    Notamment, dans mon cas, contrôler l'activation d' une carte wifi.

  2. #2
    Membre régulier Avatar de jehrikhan
    Inscrit en
    Mars 2008
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 90
    Points : 89
    Points
    89
    Par défaut
    Après de longue, très longue recherches j'ai fini par tomber sur ça :
    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    #include <netcon.h>
    // wszName is the name of the connection as appears in Network Connections folder
    // set bEnable to true to enable and to false to disable
    bool EnableConnection(LPCWSTR wszName, bool bEnable)
    {
      bool result = false;
      typedef void (__stdcall * LPNcFreeNetconProperties)(NETCON_PROPERTIES* pProps);
      HMODULE hmod = LoadLibrary("netshell.dll");
      if (!hmod)
        return false;
      LPNcFreeNetconProperties NcFreeNetconProperties = (LPNcFreeNetconProperties)GetProcAddress(hmod, "NcFreeNetconProperties");
    
      if (!NcFreeNetconProperties )
        return false;
    
     INetConnectionManager * pMan = 0;
     CoInitialize (NULL);
     HRESULT hres = CoCreateInstance(CLSID_ConnectionManager,0,CLSCTX_ALL,__uuidof(INetConnectionManager),(void**)&pMan);
     if (SUCCEEDED(hres))
     {
        IEnumNetConnection * pEnum = 0;
        hres = pMan->EnumConnections(NCME_DEFAULT, &pEnum);
        if (SUCCEEDED(hres))
        {
          INetConnection * pCon = 0;
          ULONG count;
          bool done = false;
          while (pEnum->Next(1, &pCon, &count) == S_OK && !done)
          {
            NETCON_PROPERTIES * pProps = 0;
            hres = pCon->GetProperties(&pProps);
            if (SUCCEEDED(hres))
            {
              if (wcscmp(pProps->pszwName,wszName) == 0)
              {
                if (bEnable)
                  result = (pCon->Connect() == S_OK);
                else
                  result = (pCon->Disconnect() == S_OK);
                done = true;
              }
              NcFreeNetconProperties(pProps);
            }
            pCon->Release();
          }
          pEnum->Release();
        }
        pMan->Release();
      }
      FreeLibrary(hmod);
      return result;
    }
    sur cette page : http://www.gershnik.com/faq/manage.asp#ics


    Et cela marche du tonnerre

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

Discussions similaires

  1. Activer une carte réseau
    Par Poulain dans le forum Windows Forms
    Réponses: 8
    Dernier message: 12/02/2008, 17h04
  2. Activer ou désactiver une connexion réseau et wifi
    Par koKoTis dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 10/10/2007, 23h49
  3. Activer / Désactiver une connexion réseau
    Par Neilos dans le forum Windows
    Réponses: 6
    Dernier message: 25/09/2006, 14h42
  4. importance de la qualité d'une carte réseau
    Par GMI3 dans le forum Hardware
    Réponses: 5
    Dernier message: 30/01/2005, 23h46
  5. Réponses: 5
    Dernier message: 22/12/2004, 16h50

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