Qt QSettings

配置文件

QSettings *configini=new QSettings("setting.ini",QSettings::IniFormat,0);

//bool autorun;

autorun=configini->value("/setfirst").toBool();//read setting.ini

configini->setValue("setfirst",autorun);//write setting.ini

delete configini;

注册表 开机启动

参考原文:http://civilnet.cn/bbs/browse.php?topicno=4356

//读取注册表的信息,让程序自启动
//主要原理是修改Windows的注册表来实现的,Qt的QSettings提供了访问ini,注册表的功能。
void MainWindow::Readregedit(bool isAutoRun)
{   
  

QSettings *reg=new QSettings("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",QSettings::NativeFormat);    

//开机自动运行   
if (isAutoRun)   
{       
   reg->setValue("app",QApplication::applicationFilePath());    
}  
  else    
{        
reg->setValue("app","");    
}


}

//开机自启动,主窗体隐藏

if ( argc>1 && (argv[1]==(char *)"\\min" ))   
{        
w.hide();    
}    
else    
{        
w.showNormal();    
}

PS:开机启动的时候,小托盘图标有可能不能显示出来,可以利用资源文件里面的图标, 作为小托盘,这样就可以解决这个问题。


posted @ 2012-07-15 20:52  lzihua  阅读(1490)  评论(0编辑  收藏  举报