1. 概述
为软件提供了可选的自启功能(系统启动后就启动应用程序)。Windows中字体功能可以通过注册表进行实现,核心的注册表项为HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run
,其key
一般为应用程序名称,value
则为可执行程序文件的绝对路径。
2. Code示例
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QSettings>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
// 核心:开启自启
void MainWindow::on_pushButton_clicked()
{
// 获取当前应用程序的绝对路径
QString app = QApplication::applicationFilePath();
// 创建注册表操作对象
QSettings settings("HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",QSettings::NativeFormat);
settings.setValue("AutoStart",app.replace("/","\\"));
}
// 核心:关闭自启
void MainWindow::on_pushButton_2_clicked()
{
QSettings settings("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run",QSettings::NativeFormat);
settings.remove("AutoStart");
}
界面展示: