Ecrire une valeur dans la base de registre

Signaler
Messages postés
18
Date d'inscription
jeudi 4 novembre 2004
Statut
Membre
Dernière intervention
15 janvier 2007
-
Messages postés
18
Date d'inscription
jeudi 4 novembre 2004
Statut
Membre
Dernière intervention
15 janvier 2007
-
bonjour,

en dépit de toute la littérature trouvée sur ce site concernant l'écriture de clé dans la base de registre windows, je n'y arrive pas ou pas tout à fait.
J'arrive à créer ma clé mais pas à mettre une valeur.
Voici à quoi ressemble ma fonction.

BOOL CleFixation()
{
HKEY hkey;
// DWORD dwDisposition;
DWORD dwType, dwSize;
TCHAR m_szLastFileName[]="aaa";

if (RegCreateKeyEx(HKEY_CURRENT_USER, TEXT("Software\\MaSociete\\MonApplication\\Bureau"), 0, NULL, REG_OPTION_NON_VOLATILE, 0, NULL, &hkey, 0) == ERROR_SUCCESS)
{
dwType = REG_SZ;
dwSize = (strlen(m_szLastFileName) + 1);
if(RegSetValueEx(hkey, TEXT("01"), 0, dwType, (PBYTE)&m_szLastFileName, dwSize)){MessageBox(NULL,"ca marche","info",MB_ICONINFORMATION);}
RegCloseKey(hkey);
return TRUE;
}
return FALSE;
}

Je m'attends à trouver sous :
HKCU\Software\MaSociete\MonApplication\Bureau
une clé dont le nom est Bureau et la valeur = aaa.

Je trouve bien la clé mais sans valeur, cad il y a
(par defaut) REG_SZ Valeur non définie.

Qu'est ce que je n'ai pas compris ?

Cordialement,

Jerome

3 réponses

Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
met KEY_ALL_ACCESS pour les accès (ou au moins un accès en écriture) dans le 6ème param de RegCreateKeyEx() (samdesired)
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
Comme pour RegCreateKeyEx, RegSetValueEx renvoie ERROR_SUCCES (0) en cas de réussite.
Messages postés
18
Date d'inscription
jeudi 4 novembre 2004
Statut
Membre
Dernière intervention
15 janvier 2007

C'était ça qui me manquait "KEY_ALL_ACCESS", merci beaucoup

Jerome