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

C++ Discussion :

statut d'une carte réseau


Sujet :

C++

  1. #1
    Nouveau membre du Club
    Inscrit en
    Décembre 2005
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 73
    Points : 32
    Points
    32
    Par défaut statut d'une carte réseau
    Bonjour.
    Est-il possible en C++ de connaître le statut d'une carte réseau, à savoir si elle est connectée ou déconnectée ?
    Je vous remercie.

  2. #2
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 145
    Points
    23 145
    Par défaut
    Oui c'est possible après je pense qu'il faut regarder l'API de ton OS cible.

    Pour les linux, je pense que tu peux regarder les sources de ifconfig par exemple.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Décembre 2005
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    Comment faire, en C++ sous Windows, pour détecter si la carte réseau est branchée (statut active) ou débranchée (statut inactive) ?

  4. #4
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 145
    Points
    23 145
    Par défaut
    Une recherche sur google ne donne rien ?

    http://msdn.microsoft.com/fr-fr/libr.../hh465168.aspx

  5. #5
    Nouveau membre du Club
    Inscrit en
    Décembre 2005
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    En fait, ma question exacte est :
    Comment détecter la présence du réseau en fonction du nom de la carte et de son type (en particulier le type Dial-up) ?

  6. #6
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    En gros, tu veux savoir la même chose que quand Windows dit "un câble réseau est débranché"?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Nouveau membre du Club
    Inscrit en
    Décembre 2005
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    Oui.
    Sur l'ordinateur à tester, il y a quatre cartes réseaux différentes : deux de types LAN et deux de type Dial-up.
    Lorsqu'une carte de type Dial-up est connectée ou déconnectée (activée ou désactivée), est-il possible en c++ de récupérer cette information et d'afficher un message du genre "le câble réseau de la carte **nom de la carte** est débranché" ?

  8. #8
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Oui, il y a plusieurs manières de faire :
    • Tout d'abord demander poliment à ton OS (mais là, cela dépend de l'OS et comme tu ne nous dit rien à ce sujet, dur de t'aider)
    • Ensuite, il y a SNMP (si un agent SNMP est installé sur ta machine, tu peux le requêter même en C++)
    • Sous Windows, il y a aussi WMI qui doit pouvoir te donner des infos
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  9. #9
    Nouveau membre du Club
    Inscrit en
    Décembre 2005
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    Merci pour la réponse.
    L'OS en question est Windows XP Embedded.
    Le protocole SNMP sert à administrer un réseau. Comment peut-il permettre de récupérer une information comme l'état actif ou inactif d'une carte réseau Dial-up ?
    Concernant le système WMI, il permet de contrôler les ressources système mais je ne vois pas d'informations réseaux.

  10. #10
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Citation Envoyé par Davesique Voir le message
    Le protocole SNMP sert à administrer un réseau. Comment peut-il permettre de récupérer une information comme l'état actif ou inactif d'une carte réseau Dial-up ?
    Chaque interface réseau, s'il est vu par l'agent SNMP, dispose d'un status qui indique UP, down.
    Citation Envoyé par Davesique Voir le message
    Concernant le système WMI, il permet de contrôler les ressources système mais je ne vois pas d'informations réseaux.
    On peut récupérer plein de choses avec WMI (mais je ne suis pas la bonne personne pour en parler)
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  11. #11
    Nouveau membre du Club
    Inscrit en
    Décembre 2005
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    Merci pour ces éclaircissements.
    Je pense que je vais utiliser WMI, car je suis sous windows.
    Apparemment il faut utiliser le langage WQL pour interroger WMI.
    Mais où faut-il écrire les requêtes WQL ?

  12. #12
    Membre émérite
    Inscrit en
    Avril 2010
    Messages
    1 495
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 1 495
    Points : 2 274
    Points
    2 274
    Par défaut
    Salut,

    Il faut passer par l'interface COM de WMI
    une fois fait, il faut interroger la classe Win32_NetworkAdapter du namespace root\cimv2

    edit:

    COM API for WMI
    Creating a WMI Application Using C++
    Win32_NetworkAdapter class

  13. #13
    Nouveau membre du Club
    Inscrit en
    Décembre 2005
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    Avec la classe Win32_NetworkAdapter je n'ai accès qu'aux cartes réseaux.
    La classe Win32_NetworkAdapter ne donne pas d'informations sur les connexions de type Dial-Up (ce n'est pas une carte réseau, mais un Remote Access Service).
    Quelle classe dois-je alors utiliser pour accéder aux informations des connexions RAS (Remote Access Service) qui ne sont pas des cartes réseaux et qui sont de type Dial-up ?

  14. #14
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Remote Access Service Functions ?

    Je pense que la première fonction que tu devrais tester est RasEnumConnections() afin de voir si tu retrouves tes petits
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  15. #15
    Nouveau membre du Club
    Inscrit en
    Décembre 2005
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 73
    Points : 32
    Points
    32
    Par défaut
    RasEnumConnections() ne détecte que les connexions actives.
    RasEnumConnections cannot enumerate a connection as Active until RAS has successfully connected.
    Cependant, la connexion dial-up que je veux détecter est inactive.
    Comment faire pour la détecter même si elle est inactive ?

  16. #16
    Membre émérite
    Inscrit en
    Avril 2010
    Messages
    1 495
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 1 495
    Points : 2 274
    Points
    2 274
    Par défaut
    regarde si ceci peut t'aider... -> http://www.windowsdevcenter.com/pub/...alup_0600.html

Discussions similaires

  1. Tester une carte réseau
    Par mouloudéen dans le forum Dépannage et Assistance
    Réponses: 7
    Dernier message: 04/06/2006, 19h51
  2. Changer une valeur d'une carte réseau
    Par Mut dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 21/02/2006, 16h25
  3. Réponses: 4
    Dernier message: 22/02/2005, 17h08
  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