Исходные данные:
Доступ к ключу реестра — чтение (полного доступа нет)
Задача:
Работа с ключом (чтение, запись, удаление, перечисление)
Достигнутый результат:
...
HANDLE hToken;
TOKEN_PRIVILEGES tkp;
// Получаем маркер текущего процесса.
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken)) return false;
// Получаем LUID для соответствующей привелегии.
if (LookupPrivilegeValue(NULL, SE_TAKE_OWNERSHIP_NAME , &tkp.Privileges[0].Luid))
{
tkp.PrivilegeCount = 1; // будет установлена одна привелегия
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
// Получаем привелегию завершения работы для этого процесса.
AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES) NULL, 0);
RegOpenKeyEx(m_hKey, m_sSubKey.c_str(), 0, WRITE_OWNER, &m_hRegKey);
}
...
Проблема:
Не знаю что делать дальше...
Надо
RegOpenKeyEx(m_hKey, m_sSubKey.c_str(), 0, KEY_SET_VALUE | KEY_QUERY_VALUE | KEY_ENUMERATE_SUB_KEYS, &m_hRegKey);
, или что-то в этом роде.... вообщем для работы.
Помогите пожалуйста!