Russian Qt Forum

Qt => Общие вопросы => Тема начата: spectre71 от Июль 15, 2009, 16:01



Название: QSettings - читает не из того места!
Отправлено: spectre71 от Июль 15, 2009, 16:01
Под виндами читаем из реестра:

В реестре прописано:
HKEY_LOCAL_MACHINE\Software\MyCompany\MyApp
root = "MyRoot"

HKEY_CURRENT_USER\Software\MyCompany\MyApp  - нет такого пути


QSettings SettingsU(QSettings::NativeFormat, QSettings::UserScope, "MyCompany", "MyApp");
QStrng  root = SettingsU.value("root", "").toString();

root == "MyRoot" вместо root == ""
В чем прикол?
Почему если не находит в "UserScope" читается из "SystemScope" ???
Это баг?




Название: Re: QSettings - читает не из того места!
Отправлено: lit-uriy от Июль 15, 2009, 16:10
Нет, это не бага, это следует из документации


Название: Re: QSettings - читает не из того места!
Отправлено: lit-uriy от Июль 15, 2009, 16:11
QSettings, раздел "Fallback Mechanism":
Цитировать
If a key cannot be found in the first location, the search goes on in the second location, and so on. This enables you to store system-wide or organization-wide settings and to override them on a per-user or per-application basis. To turn off this mechanism, call setFallbacksEnabled(false).


Название: Re: QSettings - читает не из того места!
Отправлено: spectre71 от Июль 15, 2009, 16:14
QSettings, раздел "Fallback Mechanism":
Цитировать
If a key cannot be found in the first location, the search goes on in the second location, and so on. This enables you to store system-wide or organization-wide settings and to override them on a per-user or per-application basis. To turn off this mechanism, call setFallbacksEnabled(false).
Спасибо!