Query and set the display string using data length counted in bytes.

svn path=/trunk/; revision=31433
This commit is contained in:
Eric Kohl 2007-12-25 13:59:57 +00:00
parent 2caea04e87
commit 046826a03e

View file

@ -29,14 +29,14 @@ TCHAR m_Text[MAX_PATH];
void LoadSettings()
{
HKEY hkey;
DWORD len = MAX_PATH;
DWORD len = MAX_PATH * sizeof(WCHAR);
RegCreateKeyEx(HKEY_CURRENT_USER, _T("Software\\Microsoft\\ScreenSavers\\Text3D"), 0,
_T(""), 0, KEY_READ, NULL, &hkey, NULL);
if(RegQueryValueEx(hkey, _T("DisplayString"), 0, 0, (LPBYTE)m_Text, &len) != ERROR_SUCCESS)
if (RegQueryValueEx(hkey, _T("DisplayString"), NULL, NULL, (LPBYTE)m_Text, &len) != ERROR_SUCCESS)
{
_tcscpy(m_Text , _TEXT("ReactOS Rocks!"));
_tcscpy(m_Text, _TEXT("ReactOS Rocks!"));
}
RegCloseKey(hkey);
@ -49,7 +49,7 @@ void SaveSettings()
RegCreateKeyEx(HKEY_CURRENT_USER, _T("Software\\Microsoft\\ScreenSavers\\Text3D"), 0,
_T(""), 0, KEY_WRITE, NULL, &hkey, NULL);
RegSetValueEx(hkey, _T("DisplayString"), 0, REG_SZ, (BYTE *)&m_Text, sizeof (m_Text));
RegSetValueEx(hkey, _T("DisplayString"), 0, REG_SZ, (LPBYTE)m_Text, (_tcslen(m_Text) + 1) * sizeof(WCHAR));
RegCloseKey(hkey);
}