首页| 论坛| 消息

标题:Qt5QSettings读写注册表
作者:kongxz
日期:2021-03-26 09:44
内容:

QSettings *settings = new QSettings("HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Test1", QSettings::NativeFormat);
Test1是我在注册表里手动添加的测试用项。
以QSettings::NativeFormat读取打开的情况下一切正常。
但是以QSettings::IniFormat存储的模式下写入内容
settings->setValue("Test", 1);则会在我生成exe目录下重新建立一套文件夹 HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\
有人知道这是什么原因吗


#1 [20091001753 03-26 11:43]
QSettings::IniFormat,表示运用文件系统存储配置。
所以会把你输入的路径理解成文件路径。

QSettings::NativeFormat,表示系统推荐的方式存储配置。
不同的系统不一样,win系统下,就是注册表。
#2 [kongxz 03-26 13:16]
感谢,我的理解错误。
以Native模式其实是可以写进去的,不过需要管理员权限。

回复 发表
主题 版块