Bonjour
j'aimerais avoir un exemple de lecture de valeur chaine dans la base de registre.
Je n'arrive pas à récupérer une valeur en faisant CRegKey::QueryValue(etc.)
Merci d'avance.
Bonjour
j'aimerais avoir un exemple de lecture de valeur chaine dans la base de registre.
Je n'arrive pas à récupérer une valeur en faisant CRegKey::QueryValue(etc.)
Merci d'avance.
salut,
que renvoi la méthode Open ? ERROR_SUCCESS ?
montre ton code .
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
Salut,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 CRegKey m_key; if(m_key.open(HKEY_LOCAL_MACHINE,"SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters")==ERROR_SUCCESS) { char valeur[60]=""; DWORD taille=strlen(valeur); if(m_key.QueryValue(valeur,"Domain",&taille)==ERROR_SUCCESS) { // plante à QueryValue MessageBox(valeur); } }
normal ,tu confonds taille de la variable et longueur du contenu...
la fonction a besoin de savoir la longueur du répertoire de destination.
strlen renvoie 0 dans ton cas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 CRegKey m_key; if(m_key.open(HKEY_LOCAL_MACHINE,"SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters")==ERROR_SUCCESS) { char valeur[60]; DWORD taille=sizeof(valeur); if(m_key.QueryValue(valeur,"Domain",&taille)==ERROR_SUCCESS) { // plante à QueryValue MessageBox(valeur); } }
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
Ok merci !
Effectivement.
On est obligé de passer par un char[], on peut pas utiliser un CString ?
![]()
vu la signature pas le choix.
LONG QueryValue( DWORD& dwValue, LPCTSTR lpszValueName );
LONG QueryValue( LPTSTR szValue, LPCTSTR lpszValueName, DWORD* pdwCount )
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
Merci bien!![]()
Partager