`
mmdev
  • 浏览: 12955302 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

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

阅读更多

上一篇《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只是针对目前的开发平台。

<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="图片_x0020_2" style="VISIBILITY: visible; WIDTH: 159.75pt; HEIGHT: 5in; mso-wrap-style: square" type="#_x0000_t75" o:spid="_x0000_i1029"><imagedata o:title="catalog2" src="file:///C:%5CUsers%5Cv-nim%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_image001.jpg"></imagedata></shape> <shape id="图片_x0020_1" style="VISIBILITY: visible; WIDTH: 167.25pt; HEIGHT: 360.75pt; mso-wrap-style: square" type="#_x0000_t75" o:spid="_x0000_i1028"><imagedata o:title="catalog1" src="file:///C:%5CUsers%5Cv-nim%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_image002.jpg"></imagedata></shape>

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

<shape id="图片_x0020_3" style="VISIBILITY: visible; WIDTH: 344.25pt; HEIGHT: 192.75pt; mso-wrap-style: square" type="#_x0000_t75" o:spid="_x0000_i1027"><imagedata o:title="catalog5" src="file:///C:%5CUsers%5Cv-nim%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_image003.jpg"><font size="3"></font></imagedata></shape>

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

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

<shape id="图片_x0020_4" style="VISIBILITY: visible; WIDTH: 414.75pt; HEIGHT: 219pt; mso-wrap-style: square" type="#_x0000_t75" o:spid="_x0000_i1026"><imagedata o:title="catalog4" src="file:///C:%5CUsers%5Cv-nim%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_image004.jpg"><font size="3"></font></imagedata></shape>

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

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

<shape id="图片_x0020_5" style="VISIBILITY: visible; WIDTH: 415.5pt; HEIGHT: 152.25pt; mso-wrap-style: square" type="#_x0000_t75" o:spid="_x0000_i1025"><imagedata o:title="catalog6" src="file:///C:%5CUsers%5Cv-nim%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_image005.jpg"><font size="3"></font></imagedata></shape>

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

下一篇《Windows Embedded CE 6.0开发初体验》之”编译和调试平台”
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics