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

Visual C++ Discussion :

[VC++]liste des ports COM "ouverts"


Sujet :

Visual C++

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 60
    Points : 50
    Points
    50
    Par défaut [VC++]liste des ports COM "ouverts"
    Bonjour,

    lorsque je branche un périphérique USB, celui-ci est automatiquement reconnu par windows et ajouté dans les "Gestionnaires de périphériques->Port(COM et LPT)" avec un numéro de port COM différent à chaque fois.

    Sachant qu'il y a plusieurs COM "ouverts" en meme temps, comment pourrais je récupéré ce numéro ?
    Peut-etre y a t'il moyen de récupérer la liste des ports "ouverts" ?

    Voilà, si quelqu'un a une 'tite idée, merci d'avance,

    Yéyé

  2. #2
    Xno
    Xno est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 71
    Points : 83
    Points
    83
    Par défaut
    Salut,

    Tu peux utiliser la fonction CreateFile pour connaître si un port est ouvert ou pas en fonction du code de retour qui t'es donné.

    Il y a aussi la FAQ: http://c.developpez.com/faq/vc/?page...WithSerialPort

    C'est une piste...


  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 11
    Points : 18
    Points
    18
    Par défaut
    Sinon, tu peux tenter d'utiliser la WMI qui te facilitera la vie.
    Puisque tu veux récupèrer le numéro du port COM qu'utilise ton périphérique USB, tu commences par créer un timer qui viendra lancer une requete WMI dans un temps raisonnable (on va dire 5 secondes)

    Là tu appelles ce genre de fonction : http://msdn.microsoft.com/library/de...pplication.asp

    Attention, cet exemple vaut pour une utilisation unique, pas pour être appellé tt les X secondes donc pour le CoInitializeEx() ou le CoInitializeSecurity(), tu fais ca ailleurs et avant.

    Ensuite tu modifies la requete WMI pour ton périphériques USB. Tu n'utiliseras pas la classe Win32_PerfFormattedData_Spooler_PrintQueue comme dans l'exemple mais plutot Win32_SerialPort. Sinon http://msdn.microsoft.com/library/de...re_classes.asp elles sont toutes là, tu peux tester.
    D'ailleurs pour tester, procures toi le WMI Creator (en DL chez Microsoft) qui te permet de tester tes requetes.

    Les objets (car ta requete va te remonter une collection que tu vas énumérer) auront une propriété Name que tu n'auras plus qu'à identifier et par un sscanf tu devrais remonter le numéro de port COM sur lequel ton périphérique USB est installé.

    En espérant que c'est clair.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 60
    Points : 50
    Points
    50
    Par défaut
    merci pour vos suggestions.
    Outre vos solutions, j'ai aussi trouvé celle de lire directement dans la base de registres (HARDWARE\\DEVICEMAP\\SERIALCOMM).
    Ca marche plutot bien.

    Merci encore,
    Yéyé

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

Discussions similaires

  1. Liste des Port COM
    Par Nico28 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 10/10/2007, 13h40
  2. Liste des port com
    Par tryonyco dans le forum C++Builder
    Réponses: 6
    Dernier message: 22/05/2007, 23h04
  3. Mise à jour de la liste des ports COM détectées
    Par chourmo dans le forum Composants VCL
    Réponses: 2
    Dernier message: 23/12/2005, 15h11

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