Probleme de lecture de clés de registre
Bonjour,
J'ai besoin de lire 2 clés de registre, et veut retourner lúne d'elles via un pointeur sur une CString.
J'ai donc écrit 2 lectures de clés de registre. Mais voila quelquesoit la valeur que je choisit de renvoyer (soit la première valeur lue soit la deuxième), c'est toujours la seconde qui est renvoyée!!!!
Dans l'exemple ci-dessous. je lis les 2 clés et lit le &OPRunFolder renvoyé . On remarque que je demande la première valeur, cependant &OPRunFolder contient la seconde valeur!
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
HKEY hKey = NULL;
LONG lResult;
DWORD type, size=255;
CString OPFolderPath, RunFolder;
CString NoOPResultString="NoOP";
//PDSView+VLC Study Case
lResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE,"Software\\Schlumberger\\PDSView",0,KEY_QUERY_VALUE,&hKey);
if (lResult != ERROR_SUCCESS)
{
//OP is not installed
return &NoOPResultString;
}
lResult = RegQueryValueEx( hKey, "Path", NULL, &type, (unsigned char *)(LPCTSTR)OPFolderPath, &size );
RegCloseKey(hKey);
OPRunFolderPath = OPFolderPath;
lResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE,"Software\\VideoLAN\\VLC",0,KEY_QUERY_VALUE,&hKey);
if (lResult != ERROR_SUCCESS)
{
//OP is not installed
return &NoOPResultString;
}
lResult = RegQueryValueEx( hKey, "InstallDir", NULL, &type, (unsigned char *)(LPCTSTR)RunFolder, &size );
RegCloseKey(hKey);
return &OPRunFolderPath; |