一、写入注册表需要管理员权限
1.开发中生成并运行程序需要写入注册表时,应该以管理员权限打开项目;
2.点击程序运行需要写入注册表,则应该以管理员权限打开此程序。
二、实现
void MoreSetWindow::sltCheckBoxStartStateChanged(bool checked) //启动
{
QSettings reg("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", QSettings::NativeFormat);
if (checked)
{
QString appName = QCoreApplication::applicationName(); //程序名称
QString appPath = QCoreApplication::applicationFilePath(); //程序路径
appPath = appPath.replace("/", "\\"); reg.setValue(appName, appPath);
}
else
{
reg.setValue("DeviceClient", "");
}
}