开发环境 win10 qt 5 ,程序测试运行环境 win7 x64
注册表写入 HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run 设置软件开机自启动
开机自启动执行结果 与 手动双击执行结果不一样?? 怎么破?
简单的功能是 读取一个文件autoRun.dat的内容
若为1则返回true 若为0则返回false
代码如下
//检测是否运行软件自动执行检测过程
bool autoDetect(void){
QString autoRunFileName= QString("autoRun.dat"); //读配置文件 如果autoRun.dat内容为1 进行下一步操作
QFilefile(autoRunFileName);
if(!file.open(QFile::ReadOnly|QFile::Text))
qDebug() <<"can not open file";
QTextStream in(&file);
QString contents = in.readAll();
qDebug() << "contents=" << contents;
file.close();
bool ok;
int autoRunFlag = contents.toInt(&ok, 10); // dec == 0, ok == false
qDebug() << "autoRunFlag=" << autoRunFlag;
if(1==autoRunFlag)
{ return true; }
else{ return false; }
return false;
}
autoRun.dat中内容为1的情况下
结果 自启动读出的内容为空 返回0
而双击启动时返回正常 返回1,
请问是什么原因?该如何解决呢?