WinCE应用程序自动加载

来源:互联网 发布:知乎阿波罗登月骗局 编辑:程序博客网 时间:2024/05/16 09:34

Automatic Application Launch at Startup

                      ---翻译至Windows CE fundamental

当定制一些集成到OS中的应用程序的时候,常常需要在启动阶段自动加载。

启动阶段,系统加载HKEY_LOCAL_MACHINE/Init注册表中的所有有LanuncxXX值的应用程序。DependXX指定应用程序加载的依赖性。XX值在00-99之间。

LaunchXX包含了一个REG_SZ类型的值,该值必须是需要加载程序的名字。XX值决定了程序加载的顺序,XX值越小,程序越先加载。

DependXX包含了一个REG_BINARY类型的值,该值决定了有相互依赖关系的程序之间的加载顺序的优先级。

Init注册表中的应用程序必须通知系统它和它所依赖的程序(在加载阶段,通过系统传递命令行参数给SignalStarted()函数来加载该程序)被成功加载。这就是为什么在应用程序加载阶段不可能从Init Key中指定命令行参数的原因。

下面是一个Init注册表的 例子:

[HKEY_LOCAL_MACHINE/Init]

"Launch10" = "shell.exe"

"Launch20" = "device.dll"

"Launch20" = "hex:0a,00"

"Launch30" = "gwes.dll"

"Launch30" = "hex:14,00"

"Launch50" = "explore.exe"

"Launch50" = "hex:14,00,1e,00"

在这种情况下,shell.exe程序将被最先加载;接下来-设备管理器(device.dll)依赖于shell.exe(在这个例子中);接下来gwes.dll被加载,依赖于设备管理器;最后explorer.exe被加载,依赖于设备管理器和gwes.dll。例子中"hex0a00"就是指Launce1016进制的0a就十进制的10

  为了能自动加载你的应用程序,你需要在Project.reg注册表中指定合适的值。Project.reg的位置在下图中给出:

 

双击这个文件打开编辑框,你可以在编辑框中改变你需要的值。

在你配置自动启动的设置之前,你需要确认他们的值不会和系统还有BSP设置的值相同。你可以打开Common.reg文件浏览这些系统设置的值。

 

Platfor.reg文件中可以浏览Bsp已经设定好的值:

 

(由于刚开始接触WIndows CE,纯属为了学习而去翻译该文档,必然有翻译错误的地方,有问题请大家直接指出,或者联系luocan1358@126.com

原创粉丝点击