Salut à tous ,


Je viens vous exposer mon problème...

Je souhaite récupérer les port COM disponible via le registre.
Donc j'ai fait un petit bout de code :
EDIT : modification du code :
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
HKEY key;
    RegOpenKeyEx(HKEY_LOCAL_MACHINE,"HARDWARE\\DEVICEMAP\\SERIALCOMM",0,KEY_ALL_ACCESS,&key);
    //définition des variables local 
    unsigned long NNom=25,NVal=25;
    char *Valeur=new char[25],*NomVal=new char[25];
    int Ret,i=0;

    //parcourt la partie concernee de la base de registre
    do {
        //ouverture d'une clé
        NNom=25;
        NVal=25;
        Ret=RegEnumValue(key,i,NomVal,&NNom,0,0,Valeur,&NVal);
        //si pas d'erreur
        if (Ret != ERROR_NO_MORE_ITEMS) {
            printf("%s %s\n",Valeur,NomVal); // affichage
        }
        i++;
    } while (Ret != ERROR_NO_MORE_ITEMS);
    //fermeture de la base de registre
    RegCloseKey(key);
et cela me retourne :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
COM6 \Device\porte6
COM7 \Device\porte7
COM10 \Device\porte10
COM11 \Device\porte11
COM12 \Device\porte12
COM13 \Device\porte13
COM14 \Device\porte14
COM20 \Device\porte20
COM21 \Device\porte21
COM22 \Device\porte22
COM3 Winachsf0
COM3 Winachsf0
COM3 Winachsf0

alors que cela devrais m'afficher quelque chose dans le genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
COM1\Device\MosChipQuadSerial0
COM2 \Device\MosChipQuadSerial1
COM6 \Device\porte6
COM7 \Device\porte7
COM10 \Device\porte10
COM11 \Device\porte11
COM12 \Device\porte12
COM13 \Device\porte13
COM14 \Device\porte14
COM20 \Device\porte20
COM21 \Device\porte21
COM22 \Device\porte22
COM3 Winachsf0
Donc mon probleme est que la fonction ne me retourne pas les port virtuelle.. Ceux créés par mon port USB!

Si quelqu'un connait la solution pour voir les PORT COM virtuelle qui pourtant sont affiché dans le registre ! merci
Merci d'avance aux personnes qui regarderons