C++ och register i windows

C/C++

2 svar · 382 visningar · startad av RanXeroX

Medlem sedan maj 2000829 inlägg
Trådstart#1

Hej

Är ute efter någon sida/howto mm, som hanterar register förändringer i windows, skapa, tabort, ändra på nycklar mm.

Är helt färsk på programmering, men det är någon som jag vill lära mig mer av.

Medlem sedan aug. 20039 340 inlägg
Medlem sedan juli 2002581 inlägg
#3

Lite kod jag skrev för ett par, tre år sedan:

Den sparar/läser en datatyp (int, bool, struct) i registret.

szRegDirPath är tänkt att vara lika med "Software\\DittFöretag\\Dittprogram".

template <typename T>
bool Write(char* ValueName,const T tData)
{
    HKEY hKey;
    bool ok=false;
    if (RegCreateKey(HKEY_CURRENT_USER,szRegDirPath,&hKey)==ERROR_SUCCESS)
    {
        if (RegSetValueEx(hKey,ValueName,NULL,REG_BINARY,(BYTE*)&tData,sizeof(T))==ERROR_SUCCESS)
            ok=true;
        RegCloseKey(hKey);
    }
    return ok;
}

template<typename T>
bool Read(char* ValueName,T& tData)
{
    HKEY hKey;
    DWORD dwSize = sizeof(T);
    bool ok=false;
    if (RegOpenKeyEx(HKEY_CURRENT_USER,szRegDirPath,NULL,KEY_ALL_ACCESS,&hKey)==ERROR_SUCCESS)
    {
        if (RegQueryValueEx(hKey,ValueName,NULL,NULL,(BYTE*)&tData,&dwSize)==ERROR_SUCCESS)
            ok=true;
        RegCloseKey(hKey);
    }
    return ok;
}
262 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)