admin管理员组文章数量:1026989
设置Qt程序开机后自动启动
本文只讨论windows环境下,qt程序设置自启动的方法。对于linux系统,不作说明。
一.开机自启动原理
原理就是在开机启动的注册表中,增加一项即可。
win10系统的开机启动项可以通过下面方法查看:
1.按 windows键 + R,输入regedit,然后确定
2.依次展开,
HKEY_CURRENT_USER
SOFTWARE
Microsoft
Windows
Run
上图中,右边列表,就是开机启动项了。我们也可以右键菜单来新建一个启动项。
二.qt程序设置自身开机启动
通过第一点中的描述,可以知道,只需要在开机启动注册表中增加一项即可,项的值为应用程序本身的路径。根据上图,可知,注册表的项名为:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
#define AUTO_RUN_KEY "HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run"
//设置/取消自启动
//isStart: true(开机启动) false(开机不启动)
void ServiceMediaPlayer::setMyAppAutoRun(bool isStart)
{
QString application_name = QApplication::applicationName();//获取应用名称
QSettings *settings = new QSettings(AUTO_RUN_KEY, QSettings::NativeFormat);//创建QSetting, 需要添加QSetting头文件
if(isStart)
{
QString application_path = QApplication::applicationFilePath();//找到应用的目录
settings->setValue(application_name, application_path.replace("/", "\\"));//写入注册表
}
else
{
settings->remove(application_name); //从注册表中删除
}
}
设置Qt程序开机后自动启动
本文只讨论windows环境下,qt程序设置自启动的方法。对于linux系统,不作说明。
一.开机自启动原理
原理就是在开机启动的注册表中,增加一项即可。
win10系统的开机启动项可以通过下面方法查看:
1.按 windows键 + R,输入regedit,然后确定
2.依次展开,
HKEY_CURRENT_USER
SOFTWARE
Microsoft
Windows
Run
上图中,右边列表,就是开机启动项了。我们也可以右键菜单来新建一个启动项。
二.qt程序设置自身开机启动
通过第一点中的描述,可以知道,只需要在开机启动注册表中增加一项即可,项的值为应用程序本身的路径。根据上图,可知,注册表的项名为:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
#define AUTO_RUN_KEY "HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run"
//设置/取消自启动
//isStart: true(开机启动) false(开机不启动)
void ServiceMediaPlayer::setMyAppAutoRun(bool isStart)
{
QString application_name = QApplication::applicationName();//获取应用名称
QSettings *settings = new QSettings(AUTO_RUN_KEY, QSettings::NativeFormat);//创建QSetting, 需要添加QSetting头文件
if(isStart)
{
QString application_path = QApplication::applicationFilePath();//找到应用的目录
settings->setValue(application_name, application_path.replace("/", "\\"));//写入注册表
}
else
{
settings->remove(application_name); //从注册表中删除
}
}
版权声明:本文标题:设置Qt程序开机后自动启动(windows 环境) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1740354647a1755691.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论