前面我们已经介绍过了Wince开机画面,自启动方法了。
今天主要是介绍我们演示系统是如何实现的自运行和加载Dll的方法。
之前我们碰到的主要问题是这样的:
1.在catalog items下加载 Sotorage Devices--MSFLash- Drivers--Flash MDD.
这样,Wince下就可以看到NandFlash的盘符,并且修改注册表/校准鼠标后都可以保存下来。
但是,此时是不能用飞凌提供的程序自启动的,且dll也无法自动加载。
2.在catalog items下不加载 Sotorage Devices--MSFLash- Drivers--Flash MDD.
这样,Wince下就只看到NandFlash的文件夹图标,修改注册表/校准鼠标后都不可以保存下来。
但是,此时是可以用飞凌提供的程序自启动的,且dll是可以自动加载的。
我们解决的方法如下:
不再用make的方式,而是直接build的时候加载dll和exe。方法如下:
1.将ftdi_ser.dll,MotorWince.exe, MotorWince.lnk放入
C:\WINCE600\PLATFORM\SMDK6410\FILES目录下。
2.修改此目录下的platform.bib,在files下增加
MotorWince.exe $(_FLATRELEASEDIR)\MotorWince.exe NK H
MotorWince.lnk $(_FLATRELEASEDIR)\MotorWince.lnk NK H
ftdi_ser.dll $(_FLATRELEASEDIR)\ftdi_ser.dll NK U
3.修改此目录下的platform.dat,在其中加入
Directory("\Windows\Startup"):-File("MotorWince.lnk","\Windows\MotorWince.lnk")
4.修改此目录下的platform.reg,在其中加入
[HKEY_LOCAL_MACHINE\init]
"Launch80"="MotorWince.exe"
"Depend80"=hex:1e,00
[HKEY_LOCAL_MACHINE\Drivers\USB\ClientDrivers\FTDI_DEVICE]
"Prefix"="COM"
"Dll"="ftdi_ser.dll"
"ConfigData"=hex:\
01,00,3f,3f,10,27,88,13,c4,09,e2,04,71,02,38,41,9c,80,4e,c0,34,00,1a,00,0d,\
00,06,40,03,80,00,00,d0,80
"InitialIndex"=dword:00000000
"DeviceArrayIndex"=dword:00000000
"LatencyTimer"=dword:00000010
[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24577\Default\Default
\FTDI_DEVICE]
"DLL"="ftdi_ser.dll"
[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\Default\Default\255\FTDI_DEVICE]
"DLL"="ftdi_ser.dll"
5.现在再build,就可以了。。。
完