http://blog.csdn.net/zxs20056/article/details/6207230
1、在VS2005下建立一个Win32智能设备项目,取名为ShellExe,编译如下代码:
int WINAPI WinMain(HINSTANCE hInstance,
{
}
生成ShellExe.exe的可执行文件,此段代码主要功能是查找指定的应用程序,然后执行;下面这段代码可以保证在SD卡文件系统正确加载后才去执行应用程序。
{
}
文件的名称和路径由命令行参数指定:ShExeInfo.lpFile=lpCmdLine。
2、 新建一个快捷方式
新建一个文本文档,内容为:42#/Windows/ShellExe.exe /NandFlash/MyApp.exe,保存后,更改文件名为Autorun.lnk。其中/NandFlash/MyApp.exe应用程序的绝对路径。
3、将快捷方式Autorun.lnk添加到自启动目录
在AT91SAM9263EK_ARMV4I_Release下的 project.dat里加入如下内容:
Directory("/Windows/启动"):-File("Autorun.lnk","/Windows/Autorun.lnk")
4、选择Make Run-time Image生成映像XIP.nb0,然后将前两步得到的ShellExe.exe和Autorun.lnk拷贝到C:/WINCE600/OSDESIGNS/sam9263/sam9263/RelDir/AT91SAM9263EK_ARMV4I_Release目录下。
5、将MyApp.exe和Autorun.lnk添加到NK里,方法是在ce..bib文件的Files模块下加入如下内容:
ShellExe.exe
Autorun.lnk
注意:ShellExe.exe的属性S表示系统文件。
6、生成XIPKERNEL.nb0文件
在vs2005下执行“生成”--》“Open Release Directory in Build Window”,在命令提示符下执行romimage ce.bib,可生成XIPKERNEL.bin。
在提示符下执行viewbin -r XIPKERNEL.bin,可显示该XIPKERNEL.bin文件的起始位置和长度。
在提示符下执行cvrtbin -a 0x起始位置 -l 0x长度 -w 32 -r XIPKERNEL.BIN,此步骤执行后生成XIPKERNEL.nb0。
烧写xip.nb0和xipkernel.nb0到板子,然后把应用程序放到NandFlash目录下,改名为MyApp.exe,然后重启就可看到应用程序自动运行了。
7、总结
这种方法用起来比较方便,ShellExe.exe不用每次都重新编译,只要根据应用程序路径修改Autorun.lnk即可,可以加载Flash、U盘、SD卡里的应用程序。调试及升级应用程序就不用重新烧写内核了。