清理“QSettings”注册表项的最佳方法(Windows 上的 Qt 5)

Posted

技术标签:

【中文标题】清理“QSettings”注册表项的最佳方法(Windows 上的 Qt 5)【英文标题】:Best way to clean up `QSettings` registry entries (Qt 5 on Windows) 【发布时间】:2020-06-08 18:32:49 【问题描述】:

Qt 在 Windows 注册表中存储 QSettings 值:https://doc.qt.io/qt-5/qsettings.html

用户通常希望应用程序在会话中记住其设置(窗口大小和位置、选项等)。此信息通常存储在 Windows 的系统注册表中,以及 macOS 和 ios 的属性列表文件中。在 Unix 系统上,在没有标准的情况下,许多应用程序(包括 KDE 应用程序)使用 INI 文本文件。

如果我卸载我的 Qt 应用程序,我希望删除这些条目。有没有一种简单的方法可以做到这一点,而无需明确删除所有值。我在问一个 Qt 函数来删除我的特定应用程序的所有值。

【问题讨论】:

【参考方案1】:

如果使用公司和应用程序名称或使用默认构造函数初始化 QSettings 对象,则可以使用方法clear()

例子:

QSettings settings;
settings.clear();

或者,您也可以尝试:

QSettings settings(QSettings::SystemScope, "Org", "App");
settings.clear();

【讨论】:

以上是关于清理“QSettings”注册表项的最佳方法(Windows 上的 Qt 5)的主要内容,如果未能解决你的问题,请参考以下文章

QSettings使用方法

QSettings setvalue 方法将 QVariant 数据类型写入 Windows 注册表

关于右键菜单没有新建项的问题

QSettings 类

QSettings提供了非常方便的注册表读写

请问如何使用批处理命令改变注册表项的权限?