Я получаю несколько предупреждений о "использовании старого стиля", от которых я хотел бы избавиться, но я недостаточно знаю об этом.
Редактировать: HKEY_CURRENT_USER
действительноопределены в WinAPI, поэтому я оставлю это в покое.
(LPBYTE)&result
: LPBYTE(&result)
и reinterpret_cast<LPBYTE>(&result)
работают, но я понятия не имею, является ли один из них эквивалентным.Так какой из этих трех я использую?
(const BYTE*)&value
: reinterpret_cast<const BYTE*>(&value)
работает, но опять то же самое.Так какой из этих двух я использую?
Еще немного контекста:
HKEY hKey;
std::string sResult = "";
if(regOpenKey(KEY_READ, &hKey))
{
DWORD size=1024, type = REG_SZ;
wchar_t result[MAX_PATH];
if(RegQueryValueEx(hKey, key, nullptr, &type, (LPBYTE)&result, &size) == ERROR_SUCCESS)
sResult = str_narrow(result);
}
RegCloseKey(hKey);
и:
HKEY hKey;
if(regOpenKey(KEY_ALL_ACCESS, &hKey))
{
DWORD value = 1;
RegSetValueEx(hKey, key, 0, REG_DWORD, (const BYTE*)&value, sizeof(value));
}
RegCloseKey(hKey);
Спасибо за любую помощь:)