Bonjour,

Je suis en train d'élaborer une classe pour avoir accès au registre Windows, mais je rencontre un problème de type d'argument :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
int res = RegOpenKeyEx(
  HKEY_LOCAL_MACHINE, 
  (LPCWSTR) keyPath, 
  0,
  KEY_QUERY_VALUE, 
  &hKeyTmp);
 
res = RegOpenKeyEx(
  HKEY_LOCAL_MACHINE,
  (LPCWSTR) TEXT("SYSTEM\\CurrentControlSet\\Control\\ProductOptions"), 
  0, 
  KEY_QUERY_VALUE, 
  &hKeyTmp );
La variable keyPath est de type const char * et contient la chaîne : "SYSTEM\\CurrentControlSet\\Control\\ProductOptions"

La seconde ligne fonctionne mais pas la première qui me retourne le code d'erreur 2.

Le problème est au niveau de la variable keyPath mais je ne vois pas pourquoi cela ne fonctionne pas (tout compile et s'execute correctement). Peut être est-ce un problème d'encodage ?

Avez-vous une réponse à ce problème ?

Merci.