qsettings删除注册表_Qt QSettings读取注册表和ini | 学步园
1.读取注册表,以读取已经安装的软件为例。
已经安装的软件信息的注册表位置:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
void Widget::initSoftWareList()
{
softWareCount=0;
softWareList=new QListWidget;
softWareList->setFrameShape(QFrame::NoFrame);
QSettings reg("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall",QSettings::NativeFormat);
QStringList groupsList=reg.childGroups();
foreach(QString group,groupsList)
{
reg.beginGroup(group);
QString softWareName=reg.value("DisplayName").toString();
if(!softWareName.isEmpty())
{
softWareList->addItem(new QListWidgetItem(softWareName));
softWareCount++;
}
reg.endGroup();
}
}
主要是要分清childGroups和childKeys。
再看看读取开机自启动信息:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
void Widget::initRunOnStart()
{
runOnStartCount=0;
runOnStartTree=new QTreeWidget;
runOnStartTree->setColumnCount(2);
runOnStartTree->setHeaderLabels(QStringList()<
runOnStartTree->setFrameShape(QFrame::NoFrame);
QSettings reg("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",QSettings::NativeFormat);
QStringList keyList=reg.childKeys();
foreach(QString key,keyList)
{
QString location=reg.value(key).toString();
if(!location.isEmpty())
{
runOnStartTree->addTopLevelItem(new QTreeWidgetItem(QStringList()<
runOnStartCount++;
}
}
}
2.读取ini文件
void Widget::initIniText()
{
QString text;
QSettings iniTest("C:\\Users\\Administrator\\Desktop\\test.ini",QSettings::IniFormat);
QStringList groupList=iniTest.childGroups();
foreach(QString group,groupList)
{
iniTest.beginGroup(group);
QStringList keyList=iniTest.childKeys();
foreach(QString key,keyList)
{
text+=key+" "+tr(iniTest.value(key).toString().toStdString().c_str());
}
iniTest.endGroup();
}
iniText=new QTextEdit(text);
iniText->setFrameShape(QFrame::NoFrame);
iniText->setReadOnly(true);
}
qsettings删除注册表_Qt QSettings读取注册表和ini | 学步园相关推荐
- c 语言读取注册表信息,C++读取注册表的实现方法
C++读取注册表 GetRegValue.h: #ifndef __GETREGVALUE_H__ #define __GETREGVALUE_H__ #include //------------- ...
- qt mysql怎么选表_Qt的Mysql数据库表操作(1)
Qt中的QSqlDatabase.QSqlQueryModel.QSqlRecord.QSqlTableModel等类为我们提供了快速开发数据库的方式,支持多种数据库连接,例如oracle,db2,M ...
- java 解析p12_java读取*.p12证书的信息 | 学步园
现在很多通讯都是在SSL上进行的.本文主要针对*.p12证书 读取里面信息. /** * ReadP12Cert.java * 版权所有(C) 2012 * 创建:cuiran 2012-07-31 ...
- mysql mediumblob读取_JSP如何读取MySql中MEDIUMBLOB字符串 | 学步园
JSP如何读取MySql中MEDIUMBLOB字符串,并显示? 实现向MYSQL数据库中存储或提取图片文件 一些情况下,需要向数据库中存储一些2进制文件,比如图片文件等,这时候,向数据库存储数据不同于 ...
- java打开db文件_java 读取DB.properties文件方式 | 学步园
读properties文件的时候,出现了或多或少的奇怪问题,这里把最终成功的方式描述一下. PropUtil工具类 public class PropUtil { private String fil ...
- qpushbutton 设置字体大小_QT设置QPushButton的Text字体颜色 | 学步园
调色板类QPalette QPalette类包含了Qt窗口不见的颜色组(collor group); 1.Active组,该组的颜色用户当前活动的(active)窗口,即具有键盘或鼠标焦点的窗口; 2 ...
- php excel 获取列数,利用PHPEXCEL读取EXCEL内容,主要是读取EXCEL可用列数 | 学步园...
require_once '../Classes/PHPExcel.php'; $objPHPExcel = PHPExcel_IOFactory::load('simple.xls'); $objA ...
- java 封装表单数据类型_ActionForm封装字段的数据类型 | 学步园
今天碰到了一个很费解的问题,在原来的actionForm中添加了几个字段,然后在页面中引用,点击提交,却跳转不到下面的action,把刚刚添加的字段去掉又能跳转过去,我将目标锁定在了这几个字段上面,有 ...
- qsettings删除注册表_QSettings读写ini文件和注册表
qt4.0一个非常有用的类QSettings QSettings是qt4.0提供的一个读取配置文件的类,在windows平台,它提供了ini文件读些,注册表读写的功能. 而且使用也非常简单.大家可以参 ...
最新文章
- 【NOIP2016】愤怒的小鸟
- sql server与java实例_Origin数据处理实例教程50节02040101
- 基础问题:在一个 Activity 中定义的串口接收程序,如果 Activity 切换到其它 Activity 后还能接收到串口数据吗?...
- python 当前目录_virtualenvwrapper打造多版本Python环境
- 文科思维Java_开源之Processing:这好玩的编程语言是为文科生艺术家准备的
- ArcGIS Server 10 for java 注册SOE出现的问题
- Windows Communication Foundation from msdn
- 第十章:基本数据结构(2)
- 使用dmidecode获取常用的硬件信息
- 《JAVA程序设计教程(第7版)英文版》pdf 附下载链接
- 【答粉丝问】前公司挽留涨薪,已经接到下一家公司的offer,是走还是留?
- IDV软件相关中英文对照
- 调起APP功能的实现
- 学习笔记 | NIPS 2021 regularization cocktail 调优的 MLPs 在表格数据上优于 GBDTs | Regularization is All Your Need
- 爬取B站弹幕制作词云图
- 基于域名的虚拟主机配置
- Android开发学习网站集锦
- 51单片机制作脉冲发生器
- 招行股东会通过收购永隆银行议案
- 如何测试数字硅麦软件,硅麦参考电路及layout注意事项.PDF