程序员人生 网站导航

Wince下演示系统自启动/加载dll方法

栏目:综合技术时间:2015-03-17 08:55:16
前面我们已介绍过了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:WINCE600PLATFORMSMDK6410FILES目录下。

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("WindowsStartup"):-File("MotorWince.lnk","WindowsMotorWince.lnk")


4.修改此目录下的platform.reg,在其中加入


[HKEY_LOCAL_MACHINEinit]
"Launch80"="MotorWince.exe"
"Depend80"=hex:1e,00

[HKEY_LOCAL_MACHINEDriversUSBClientDriversFTDI_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_MACHINEDriversUSBLoadClients1027_24577DefaultDefault
FTDI_DEVICE]
"DLL"="ftdi_ser.dll"

[HKEY_LOCAL_MACHINEDriversUSBLoadClientsDefaultDefault255FTDI_DEVICE]
"DLL"="ftdi_ser.dll"

5.现在再build,就能够了。。。


------分隔线----------------------------
------分隔线----------------------------

最新技术推荐