WINCE开机自启动异常

hopely   2009-12-10 10:00 楼主
请问:修改wince注册表
[HKEY_LOCAL_MACHINE\init]
"Launch80"="app.exe"
"Depend80"=hex:1E,00

开机后程序可自启动,但是本来工作正常的应用程序在启动后出了错误:80 is not found.一确定程序就退出。再打开又运行正常,
不知道开机自启动环节哪出了,同时app的InitInstance()函数中也加入了SignalStarted(_wtol(GetCommandLine()))语句。
这个错误提示中也出现了80跟luanch80倒是一致,不知道什么问题

回复评论 (6)

你的程序在windows目录里吗
点赞  2009-12-10 11:10
"Depend80"=hex:14,00,1e,00
试试看
点赞  2009-12-10 13:17
Directory("Windows\Startup"):-File("app.exe","Windows\app.exe")
通过设置Project.dat,在启动项中启动程序试试。
点赞  2009-12-10 14:11
研究跟进,我的app。exe是单文档应用程序,开机自启动时,引用程序会解析系统的命令行,
去打开跟launch80后边数字一致的文件名,肯定没有该文件了,所以会提示
80 was not found.
同时我又修改wince注册表
[HKEY_LOCAL_MACHINE\init]
"Launch100"="app.exe"
"Depend100"=hex:1E,00
问题依然,不过错误变成100 was not found
这说明launch100 打开app.exe是发送了一个命令要打开100的文件,但是不成功,我改进了应用程序,在initinstance中添加了cmdInfo.m_nShellCommand = CCommandLineInfo::FileNew;语句
具体如下:可惜问题依旧,但是单独启动没问题,说明用launch启动app.exe存在问题,问高手,后续如何开展,有关launch启动应用程序的问题
*************************************************************************************       
// 分析标准外壳命令、DDE、打开文件操作的命令行
        CCommandLineInfo cmdInfo;
        cmdInfo.m_nShellCommand = CCommandLineInfo::FileNew
        ParseCommandLine(cmdInfo);
        // 调度在命令行中指定的命令。如果
        // 用 /RegServer、/Register、/Unregserver 或 /Unregister 启动应用程序,则返回 FALSE。
        if (!ProcessShellCommand(cmdInfo))
                return FALSE;
************************************************************************************
点赞  2009-12-10 14:39
直接启动,可以放到Startup里面啊,不用那么麻烦吧,
不过这种可以的,把Dependse设置成GRAPHIC启动后,再试试吧
点赞  2009-12-10 14:47
LZ在程序开头添加
    while(!IsAPIReady(SH_SHELL))
        Sleep(500);
试试
点赞  2009-12-11 08:45
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复