Работа с реестром на Qt
Используется Qt 5.6.1 C++ Вообще, мне надо изменять существующее значение параметра, перед этим его проверив. Но сначала я решил просто попробовать создать параметр со значением. После долгого изучения классов Qt написал такой код:
QSettings checkinst("HKEY_LOCAL_MACHINE\\SOFTWARE\\MYPROGRAMM", QSettings::NativeFormat);
checkinst.setValue("JustUpdated", 20);
Программа компилируется без ошибок. Путь, написанный в первой строке, существует, такого параметра там до запуска программы нет. Затем я запускаю программу, данный код выполняется. Однако, в реестре данный параметр не появляется. Почему? Что я делаю не так?
Upd. Я прочитал параметр и вывел на экран, вывелось значение, которое я задал, однако в реестре я его не наблюдаю. Похоже, что-то с адресом не так, не могу понять, что...
Upd2. Додумался сделать поиск по реестру того параметра, который я создаю. Он нашелся! Но совсем по непонятному пути:
HKEY_CLASSES_ROOT\VirtualStore\Machine\Software\Wow6432Node\Myprogram
Что это за путь такой, откуда он взялся? Я ведь указывал другой путь.
Ответы (1 шт):
https://990x.top/virtualstore-chto-eto-za-papka-i-mozhno-li-ee-udalit.html
Вот здесь довольно весело описывается, откуда берется этот путь. При этом если программа будет запущена от имени администратора, путь будет тем, который указан в коде. Чтобы разницы не было, лучше сразу в коде указать путь в этот раздел.