admin管理员组文章数量:1538748
2024年3月18日发(作者:)
开机自启sd卡中的应用程序
应用程序, 开机
开发板:TE2440-II
操作系统:飞凌的wince5.0
开发软件:evc4.0 sp4
因开发需要,对应用软件要开机自启,网上很多人总结了有三种方式。这三种方式对于应用程序比较小的软件均可使用,对于应用程序很大要放在SD卡的
软件,第三种更好用一些。现在告诉大家,如何开机后自启动在sd卡上的应用程序。方法如下:
首先在EVC里编译生成了可执行文件,拷贝到smdk2440a_ARMV4I_Release中,在写一个lnk文件,内容是
1. 60# Storage
复制代码
.然后在你的工程中,打开,添加如下两句:
1. $(_FLATRELEASEDIR) NK S
2. $(_FLATRELEASEDIR) NK S
复制代码
在中添加
1. Directory("Windowsstartup"):-File("","")
复制代码
,即可编译内核。
在这个过程中如果出现找不到或者文件,可采用下面方式实现(一个很厉害的人教我的):
将这两个文件放在一个自选目录下比如c:example中,,然后打开platform -settings-选择custom build actions -选择pre-make image 然后加入一
条编译前指令:
1. copy c: %_FLATRELEASEDIR%
复制代码
也要作同样的处理 。
经过以上修改应该就可实现了。
的代码如下:
1. int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow)
2. {
3. WIN32_FIND_DATA fd;
4. HANDLE hd=INVALID_HANDLE_VALUE;
5.
6.
7. int iCount = 20;
8. while(iCount--)
9. {
10. hd=::FindFirstFile(lpCmdLine,&fd);
11. Sleep(500);
12.
13. if(INVALID_HANDLE_VALUE!=hd)
14. break;
15. }
16.
17. if(0==iCount)
18. return 0;
19.
20. FindClose(hd);
21.
22. SHELLEXECUTEINFO ShExeInfo={0};
23. =sizeof(SHELLEXECUTEINFO);
24. =SEE_MASK_NOCLOSEPROCESS;
25. =NULL;
26. =NULL;
27. =lpCmdLine;
28. meters=L"";
29. ctory=NULL;
30. =SW_SHOW;
31. pp=NULL;
32.
33. ShellExecuteEx(&ShExeInfo);
34. return 0;
35. }
复制代码
我采用的bootloader是版本是飞凌第四版boot,系统是WINCE5.0。以上供大家学习参考。
版权声明:本文标题:开机自启sd卡中的应用程序 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1710773448a282747.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论