马宁的嵌入式开发研究

Windows Phone, XNA, Windows Embedded, Windows Mobile
posts - 84, comments - 752, trackbacks - 17, articles - 0

导航

公告

Windows Embedded CE 6.0开发初体验(六)平台定制

Posted on 2008-02-03 12:32 马宁 阅读(...) 评论(...) 编辑 收藏

上一篇《Windows Embedded CE 6.0开发初体验》之构建CE平台

http://blog.csdn.net/aawolf/archive/2007/12/19/1953448.aspx

 

Windows CE是一个组件化的操作系统,我们可以根据不同的环境设置不同的组件来组合成有针对性的平台,而一个功能往往需要多个组件才能够实现。Catalog就是实现某个功能的组件集合,每个Catalog Item会包含一个或多个组件,而Catalog Item则需要实现某种功能。当我们的平台需要这个功能是,就将相对应的Catalog Item选入平台中即可。

在完成了平台创建的向导之后,我们就进入了PBIDE界面。Catalog Items视图与Solution Explorer处于同一区域,两者间可以自由进行切换。

Catalog Items视图中,我们可以看到CE中包含的Catalog大概可以分为下面几类:BSP(板级支持包); Core OS(操作系统中包含的组件);Device Drivers(驱动程序类);Platform Manager(平台管理器)和Third Party(第三方提供的组件)。其中实现功能的组件大都包含在Core OS中。

我们如果要为平台增加游戏,则选择“Core OS CEBASE Application – End User- Games”下的游戏:FreecellSolitaire两个游戏。

除了能够为平台增加Catalog外,我们还可以增加自己的文件和注册表信息。

将视图切换回Solution Explorer,我们可以看到平台中包含的所有文件。其中,选择“Parameter Files”中的“ConnectCore 9P”,其中会包含 project.reg文件,双击点开该文件,我们就可以增加一些注册表信息。这些注册表信息,将会出现在目标设备的注册表中。

除此之外,在C:/WINCE600PLATFORM - CC9P – Parameter Files下,我们还可以看到platform.reg文件。Platform.reg文件是针对所有运行于CC9P开发板上的平台,而project.reg只是针对目前的开发平台。

 

如果想在平台中加入自己的文件,则需要使用bib文件了。如果想引入一些批处理操作,则要使用dat文件了。我们通常使用project.bibproject.dat文件。

Bib文件的标准格式为三个部分: 目标文件名,源文件路径和名称,Memory Type。目标文件名指的是在目标设备上的文件名,如果没有指定路径,则默认出现在\Windows目录下。第二部分是源文件路径和名称,指的是文件在PC上的路径;最后指定的是Memory Type,如果是想让文件被编译到NK.bin中,则要指定为NK。三个部分之间使用空格隔开即可。同时bib文件支持宏。我们可以通过指定不同的环境变量,来为NK.bin中加入不同的文件。

指定环境变量的方法如下:在Solution Explorer中右键点击DigiOS,在菜单中选择Properties。在属性对话框中,选择Environment,然后,我们就可以添加自己的环境变量了。

环境变量有两个值:1或者<>。在这里我们创建一个名为“IMG_NETCF_CSAPP”的环境变量。如果该变量为1,则bib文件,会包含hello_mvp.exe文件到NK.bin中。

如果我们还想执行一些其他操作的话,就必须借助于dat文件了。这里的dat文件和PC平台上的一样,也是批处理文件。比如,我们可以讲一个快捷方式文件(.lnk)从\Windows目录下拷贝到\Windows\Startup目录下。这样,在操作系统启动时,就会执行lnk文件相对应的可执行文件了。

好了,进行到这里,我们平台定制的工作就可以告一段落了。我们学习了如何向平台中添加Catalog Items、文件和注册表项,还可以执行批处理操作。接下来,我们就可以对定制好的平台进行编译和调试了。

 

下一篇《Windows Embedded CE 6.0开发初体验》之”编译和调试平台”