hab ein Beispiel für die Registry und ein Problem
-
Hallo Leute!
Hier hab ich ein Beispie wie ich einen String aus der Registry lese(funktioniert auch):
bool CRegistryCtrl::Read(CString &retur, CString szSubKey,CString name, HKEY hMainKey) { LONG lResult; HKEY hKey; char szVal[255] = {'\0'}; DWORD dwSize = 255,dwType; if((lResult = RegOpenKeyEx( hMainKey,szSubKey,0,KEY_QUERY_VALUE,&hKey))!=ERROR_SUCCESS) { #ifdef _DEBUG MessageBox(NULL,"Es wurde kein Eintrag...","Registry",MB_OK); #endif return false; } if(lResult == ERROR_SUCCESS) { RegQueryValueEx(hKey,name,NULL,&dwType,LPBYTE(szVal),&dwSize); RegCloseKey(hKey);//Rückgabe nicht beachtet retur = szVal; return true; } return false; }jetzt mein Problem:
Ich möchte aus der Registry eine Variable vom Type REG_DWORD auslesen(ist eine zahl).
Wie Stell ich das an? Bzw: Wie ender ich den obigen Code?
Hab schon einige Versuche gestartet. Hat nicht geklappt.Verzweifle! Bitte hilf!
SIGI
-
bool CRegistryCtrl::Read(DWORD &retur, CString szSubKey,CString name, HKEY hMainKey) { LONG lResult; HKEY hKey; char szVal[255] = {'\0'}; DWORD dwSize = 255,dwType; if((lResult = RegOpenKeyEx( hMainKey,szSubKey,0,KEY_QUERY_VALUE,&hKey))!=ERROR_SUCCESS) { #ifdef _DEBUG MessageBox(NULL,"Es wurde kein Eintrag...","Registry",MB_OK); #endif return false; } if(lResult == ERROR_SUCCESS) { RegQueryValueEx(hKey,name,NULL,&dwType,LPBYTE(szVal),&dwSize); RegCloseKey(hKey);//Rückgabe nicht beachtet retur = *(DWORD*)szVal; return true; } return false; }