Pb de variable (enfin je croi)

Signaler
Messages postés
55
Date d'inscription
mercredi 24 décembre 2003
Statut
Membre
Dernière intervention
14 avril 2007
-
Messages postés
55
Date d'inscription
mercredi 24 décembre 2003
Statut
Membre
Dernière intervention
14 avril 2007
-
Regardé ce code :

#define PIDVALIDE "6.0.2800.1106"

...
void LitTexte(HKEY HK,char* cle,char* nom,char* valeur,unsigned long taille)
{
    HKEY Retour;
    unsigned long type;
    
::RegOpenKeyEx(HK,cle,0,KEY_ALL_ACCESS,&Retour);
::RegQueryValueEx( Retour,nom,NULL,&type,(unsigned char *)valeur,&taille);
::RegCloseKey(Retour);
}

...
char PID[24];
LitTexte(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Internet Explorer","Version",PID,24);
if(PID!=PIDVALIDE) {
MessageBox(NULL, PID, "Exception", MB_OK);
exit(-1);
}
    else {
        MessageBox(NULL, "bon pid", "Exception", MB_OK);
}


Tout est bon tout fonctionne pas d'erreur de compilation mais pourtant il y'a bien une erreur. En effet mm s'il la variable PID corespond avec la variable PIDVALIDE le code en rouge et toujours exécuté. Et le code en vers ne ce lance pas. Pourtant mm dans le MessageBox du code rouge la variable PID corespond et est trés affiché.

Cela peut provenir aussi de ma fonction LitTexte() franchement le je ne s'ai plus

J'ai tout esayé mais le je n'y arrive pas.
SVP en me repondant expliké moi bien, je débute à la limite remetté moi le code corrigé. ;)

Merci de vos reponses !!

PS: je s'ai pas pk kelle ke soit la grandeur ke je donne a la variable PID (ligne en bleu) ce ki mais retourné dans le messagebox et toujours bien affiché ?

2 réponses

Messages postés
1905
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
17 septembre 2012
2
Salut,On ne peut pas comparer 2 chaines de caractere avec !ou.
Tu peux utiliser strcmp():

if(strcmp(PID,PIDVALIDE))
{
...
}
Messages postés
55
Date d'inscription
mercredi 24 décembre 2003
Statut
Membre
Dernière intervention
14 avril 2007

Et bien un grand merci c'était si simple
mais kon on s'ai pas c'est plus dur

Merci aussi pour une réponse aussi rapide !