Qt在Windows下实现程序自启动
在Qt中使用QSetting,我们可以很简单地访问到windows注册表,并且填写相应的启动信息,我们知道实现程序自启动最简单的方法就填写HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run这个里面的信息(当然也可以把程序填服务项里面之类的),下面简单演示一下:
1 void App:replyAutoStartActTriggered()
2 {
3 bAutoStart = !bAutoStart;
4 autoStartAct->setChecked(bAutoStart);
5
6 QString appName = QApplication::applicationName();
7 QSettings regSettings(REG_RUN,QSettings::NativeFormat);
8 //REG_RUN is "HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run"
9 if(!bAutoStart)
10 regSettings.remove(appName);
11 else
12 {
13 QString appPath = QApplication::applicationFilePath();
14 regSettings.setValue(appName,appPath.replace("/","\\"));
15 }
16 }
比如我这里演示了一下用checkBox来解决是否选择自启动的问题,如果要取消自启动,直接remove即可

浙公网安备 33010602011771号