Я попытался добавить значение в реестр в C++. Программа запускается и не имеет ошибок. I Значение не создается (RegSetValueEx). Код:C++ RegSetValueEx - Regedit
HKEY hkey;
long regOpenResult;
const char path[] = "C:\\test";
regOpenResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", 0,
KEY_ALL_ACCESS | KEY_WOW64_64KEY, &hkey);
LPCSTR stuff = "test";
RegSetValueEx(hkey, stuff, 0, REG_SZ, (BYTE*)path, strlen(path));
Спасибо Вам за помощь! :)
Вы проверили с помощью 'GetLastError()'? Видел правильный реестр? – Ajay
Может быть проблемой с разрешениями. Вы запрашиваете KEY_ALL_ACCESS (самый высокий уровень доступа) на уровне машинного уровня. –
HKEY hkey; \t long regOpenResult; \t const char path [] = "C: \\ test"; \t regOpenResult = RegOpenKeyEx (HKEY_LOCAL_MACHINE, "SOFTWARE \\ Microsoft \\ Windows, \\ CurrentVersion \\ Run", 0, KEY_ALL_ACCESS | KEY_WOW64_64KEY, &hkey); \t LPCSTR материал = "тест"; \t RegSetValueEx (HKEY, материал, 0, REG_SZ, (BYTE *) path, strlen (path)) \t GetLastError(); 0 error: c – S0rkBlank