找回密码
 立即注册
收起左侧

程序开机自启动执行结果 与 双击运行执行结果 不一样

6
回复
8855
查看
[复制链接]
累计签到:1 天
连续签到:1 天
来源: 2018-6-28 14:32:17 显示全部楼层 |阅读模式
1Qter豆
开发环境  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 进行下一步操作        QFile file(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,
请问时什么原因?该如何解决呢?

回复

使用道具 举报

累计签到:597 天
连续签到:1 天
2018-6-28 14:50:31 显示全部楼层
百分之九十是文件路径的问题
回复

使用道具 举报

累计签到:1 天
连续签到:1 天
2018-6-28 16:04:16 显示全部楼层
shasidaran 发表于 2018-6-28 14:50
百分之九十是文件路径的问题

呃............
原来我把它放桌面  路径是
C:\Users\just4fun\Desktop\WinSuggest-latest\windowsSuggest.exe
试了不行

然后又放到别的盘
E:\WinSuggest-latest\windowsSuggest.exe
仍然不行哎.........

会不会是操作系统安全性  UAC权限的问题呢????
回复

使用道具 举报

累计签到:597 天
连续签到:1 天
2018-6-28 16:17:50 显示全部楼层
我看你代码里直接指定的是文件路径方式是:
  1. QString autoRunFileName = QString("autoRun.dat");
复制代码


这样exe是靠相对路径寻找文件的。你双击时,exe与dat在同一个工作目录,所以正确执行。

而自动运行时,exe的工作目录是c:\windows\system32,与dat不在一个工作目录下,所以文件找不到。

所以你要用绝对路径寻找dat文件
回复

使用道具 举报

累计签到:1 天
连续签到:1 天
2018-6-28 18:49:09 显示全部楼层
shasidaran 发表于 2018-6-28 16:17
我看你代码里直接指定的是文件路径方式是:

老哥  你说的太对啦  感谢感谢 ~
你的回答完美的解决了我的问题
谢过大神  
回复

使用道具 举报

累计签到:1 天
连续签到:1 天
2018-6-28 18:49:44 显示全部楼层
shasidaran 发表于 2018-6-28 16:17
我看你代码里直接指定的是文件路径方式是:

老哥  你说的太对啦  感谢感谢 ~
你的回答完美的解决了我的问题
谢过大神  
回复

使用道具 举报

累计签到:16 天
连续签到:1 天
2018-7-5 08:58:31 显示全部楼层
说的太对了,解决了困扰已久的问题!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了