作者: 文斌
主页: 文斌程序网
http://www.wenbinweb.com 经过前两次的边做边学,我们已经创建并可以自由修改自己的平台了,这次我平来补充一点理论知识,以便加深对CE生成过程的了解。在此之前,需要说明的是CE的目录结构是很庞大而复杂的,在以后的工作中很多事情会取决于你对目录结构的了解程度,在此,CE5的文件夹结构未发生大的改变,因此想了解此部分内容的朋友可直接参阅本人的《WinCE实验教程》相关部分。与CE4稍有不同的是在CE5中你自己的平台不在存放于Public文件夹中了,而是专门有一个PBWorkspaces的文件夹,这样更加方便管理且结构清晰了。
我们重点要说的还是CE的生成过程,即你在编译平台的时候Platform Builder到底为你做了些什么?
实际上,IDE在生成CE的过程当中共经历了四个阶段,分别是Sysgen、Build、Copy、Make,即组件生成阶段,编译阶段,Release文件夹复制阶段和镜像打包阶段。下面我们就分阶段来说明一下。
在Public文件夹下是CE为我们提供的可用组件,我们定制自己的平台是通过Platform Builder做的选择就是从这里面选择了一部分需要的组件。在这些文件夹中,包含了所有可用的库文件,头文件,DEF文件,当然也包括了所有可导出的函数说明。在Sysgen阶段要做的就是从中选择我们自己的平台需要的头文件,库文件和导出函数以创建我们自己平台需要的组件。它所完成的头文件会以C++注释的方式加以标记,这样它就可以选择需要的部分来导出,最后把所有需要的库进行链接就得到了我们自己平台所需要的东西了,它就放在Wince500\pbworkspaces\%ProjectName%\WINCE500\%CPU_TYPE%_x86\cesysgen文件夹下。
经过上一阶段后,需要的头文件库文件就准备好了,但这只是系统组件部分,我们的平台还有各种设备驱动程序等其他的东西,这些就要在Build阶段来完成了。
整个Build阶段都是在围绕着DIRS文件和SOURCES文件来进行,前者决定了哪些文件夹要被编译,后者决定了哪些文件要被如何编译,也就是说,此阶段要完成的就是各种源程序的编译过程。下面我们就重点看一下这两种文件的内容。
DIRS文件可以在很多文件夹中找到,它列出了要参与编译的子文件夹,内容大体如下:
DIRS_CE=\
ceddk \
regenum \
pcibus \
这样,build.exe在编译的时候就可以通过它来逐层找到要参与编译文件夹了。至于其中的OPTIONAL_DIRS、DIRS_NTANSI等项目的含义可以通过帮助查到。
同样,SOURCES文件对参与编译的源程序的编译方式做了规定,例如通过TARGETNAME规定编译后的名称,通过TARGETTYPE规定编译的类型是EXE,DLL还是LIB,通过DLLENTRY规定DLL文件的入口点,通过INCLUDES规定编译过程中需要的头文件,通过SOURCES规定参与编译的源文件等等。这些宏的用法在帮助文档里有更加明细的说明,在这里只要理解这种编译机制就可以了。
接下来,所有的编译都有完成了,DLL也好,EXE也好,都是目标平台自有的了,下一步就是一个Copy过程,也就是将你的项目文件夹下的WINCE500文件夹下的内容复制到RELEASE文件夹下,这步就没什么可说的了。
最后一步就是打包了,即将已经准备好的目标平台的文件打包成NK.bin这样的操作系统镜像文件。在这个过程当中,一个完成了文件合并、注册表压缩、资源文件替换和打包四个子过程。
文件合并阶段重点对以下文件进行合并:
--所有的.bib文件合并成CE.BIB
--所有的.reg文件合并成REGINIT.INI
--所有的.dat文件合并成INITOBJ.DAT
--所有的.db文件合并成INITDB.INI
知道这几个合并以后便于你在RELEASE下查找你做的修改是否确实被置入了目标平台。
注册表压缩会将REGINIT.INT文件压缩成DEFAULT.FDF文件。
资源替换就是将EXE或DLL中的资源替换成本地语言如简体中文。
接下来才是把这些CE.BIB等二进制文件制作NK.BIN文件,这才是我们需要的文件,不过在CE5中好像可以在项目设置中改变这个文件的名称,读者可以自己试试。
以上说的这些编译过程,在Platform Builder中的Build OS菜单下分得比较明确,这一点比CE4要好得多,你可以自己掌握让它单独执行某一步骤。如果你修改了某个组件的源程序,也可以右击这一组件然后单独编译此组件,最后再生成Image,总之,灵活性是比较不错的了。
同时,经过以上的分析也可以看出来,Platform Builder这个IDE在帮助生成CE时基本上是依赖于文件夹结构和那些文本文件以及批处理文件的,因此,对于文件夹结构还是要尽量的熟悉。同时也证明那些总说批处理文件没用的人的无知,在微软的操作系统和开发工具中,批处理文件是至关重要的,说它无用的人只是由于自己的水平不够而已。
好了,这次我们学得多做得少,不过这些知识还是有必要了解的,别忘了对照你的文件夹结构来学习哦!
分享到:
相关推荐
《WinCE 5.0边做边学》是一本深入浅出地介绍Windows CE 5.0操作系统开发和应用的教程。Windows CE是微软推出的一个嵌入式操作系统平台,广泛应用于掌上设备、工业控制、车载系统等领域。本书旨在帮助读者通过实践...
在Windows CE 5.0(简称WINCE5.0)平台上进行应用程序开发,开发者通常会利用Visual Studio 2005(VS2005)作为集成开发环境(IDE)。这个平台提供了丰富的工具和资源,使得开发者能够创建高效、可移植的嵌入式应用...
3. 安装完成后,Visual Studio 2005会集成WinCE5.0模拟器,开发者可以在项目属性中设置目标设备为模拟器。 4. 创建或导入WinCE项目后,可以直接在模拟器上运行和调试应用程序。 **开发与调试** 使用WinCE5.0中文...
内置25个WinCE5.0程序,包括系统工具,媒体播放、游戏、计算器等 这些的程序都是由通过网络收集的 程序能都在WinCE5.0上完美运行(分别在WinCE5.0模拟器和装有WinCE5.0的导航仪上成功运行)
《WinCE5.0模拟器:打造车机操作体验的电脑仿真平台》 Windows CE(简称WinCE)是微软公司开发的一种嵌入式操作系统,它主要用于小型设备,如掌上电脑、车载信息娱乐系统等。在本文中,我们将深入探讨WinCE5.0...
目前权限只能上传45MB大小的文件,只能分包压缩上传了,需要用的请将两个压缩包都下载下来再解压缩。
3. 性能分析:测试应用程序在模拟的WinCE5.0环境下的性能,找出可能的瓶颈和优化点。 4. 兼容性测试:检查应用程序是否能在不同的WinCE5.0设备上正常运行,因为不同设备可能有特定的硬件配置和驱动差异。 5. 用户...
在Windows CE 5.0(简称WinCE5.0)操作系统上,有一系列小游戏可供用户娱乐。Windows CE是微软开发的一个嵌入式操作系统,广泛应用于各种设备,包括车载信息系统、手持设备等。在这个环境下,由于硬件限制和系统特性...
WinCE5.0模拟器是基于Windows Embedded Compact 5.0操作系统的一个开发和测试工具,它允许开发者在桌面PC上模拟Windows CE系统的行为,以便在实际硬件设备部署之前进行应用程序的开发、调试和测试。这个“WinCE5.0...
工欲善其事,必先利其器 对于实时系统,如何调试是一个很难解决的问题,包括对系统内核的调试,对驱动程序的调试,对应用程序的调试等。对于应用程序,通常各集成开发环境都提供了常规的单步跟踪等调试手段。...
《深入理解WinCE5.0中文模拟器与VS2008开发环境》 Windows CE 5.0,作为微软推出的嵌入式操作系统,广泛应用于各种小型设备和嵌入式系统中。为了方便开发者在Windows平台上进行WinCE应用的调试和测试,微软提供了...
3. **设备兼容性**:WinCE5.0是跨平台的,因此播放器需要考虑不同硬件配置下的兼容性,如处理器架构、内存限制和硬件加速支持。 4. **音频/视频编码**:播放器需要支持多种编码格式,例如MPEG、WMV、MP3、WAV等,这...
标题中的“eboot.rar_2410 wince 5.0_eboot S3C24_wince 5.0 ebo_wince5.0 _wi”提到了几个关键概念,分别是“eboot”,“S3C2410”,“Windows CE 5.0”(wince5.0)。这表明我们正在讨论基于ARM9处理器S3C2410的...
本资源包“wince5.0.rar_OK2440 bsp_ok2440_wince5_wince5.0 _wince5.0 bsp”是针对OK2440开发板的WinCE5.0 BSP(Board Support Package)更新版,旨在为开发者提供更加稳定和高效的平台支持。 首先,让我们深入...
3. 多任务处理:WinCE5.0支持多线程和并发执行,开发者可以创建并行运行的应用程序。 五、设备驱动开发 WinCE5.0的驱动模型基于Windows Driver Model (WDM),支持即插即用和电源管理。开发者可以编写驱动程序以支持...
### WINCE 5.0 应用开发环境的搭建与配置 #### 1. 引言 Windows CE 5.0(简称WINCE 5.0)是微软针对嵌入式设备推出的操作系统之一,其提供了强大的开发工具和丰富的API接口,支持多种处理器架构。为了在开发环境中...
3. **硬件兼容性**:由于WinCE5.0是为嵌入式设备设计的,它支持多种处理器架构,如ARM、X86、PowerPC等。 4. **API支持**:WinCE5.0提供了一套与Windows CE API兼容的API,允许开发人员创建跨平台的应用程序。 5. **...
Windows CE 5.0(简称WinCE 5.0)是一种嵌入式操作系统,由Microsoft公司开发,广泛应用于各种智能设备和嵌入式系统中。它提供了基础的系统内核、设备驱动支持以及应用程序框架,使得开发者能够创建定制化的、高性能...
这个压缩包文件“wince5.0.rar_wince5.0”显然包含了关于WinCE 5.0驱动开发的相关资料,特别是驱动开发流程的介绍,对于想要学习或已经在从事WinCE 5.0驱动程序开发的工程师来说非常有价值。 驱动程序是操作系统与...
本文将详细解析与"WinCE5.0打印机驱动"相关的知识点,帮助用户理解如何在Windows CE平台上构建和使用打印机驱动程序。 首先,让我们了解什么是DDK(Driver Development Kit)。DDK是微软提供的一套工具和文档,用于...