在Windows CE下开发应用程序大致可分为三个步骤:
1. 安装合适的SDK
2. 编写代码和调试
3. 发布应用程序
一.安装SDK
如果选用Visual Studio或者eMbedded Visual C++开发应用程序,安装合适的SDK是需要做的第一步工作。
SDK(Software Development Kit)是一系列头文件、库文件、文档、平台管理器和运行时库的总称。应用开发人员可以使用SDK为某个特定的平台开发应用程序。
注:使用Visual C++为桌面Windows开发应用程序同样需要安装SDK,在安装Visual C++时,Platform SDK已经被集成到了Visual C++中。
在eMbedded Visual C++中,提供了Platform Manager来管理已经安装的SDK,从菜单Tools->Configure Platform Manager…可以打开Platform Manager对话框。
在Visual Studio中,我们可以从菜单:Tools->Options…->Device Tools->Devices中查看已经安装的SDK。
注意到,在安装开发工具时,默认会安装一个成为“Standard SDK”的SDK,这个标准SDK是把Windows CE中最常用的一些功能取出来作为一个“标准”,并不是万能的,比如,Standard SDK不支持中文,不支持Direct X.
应用程序开发人员有两种途径获得SDK。第一,开发人员可以从微软或者第三方处获得SDK;第二,开发人员可以通过Platform Builder导出自己的SDK。
基本的理念是:谁构建了该Windows CE平台,谁就应该负责提供该平台的SDK,如果他希望该平台可以扩展,其它应用可以在该平台上运行的话。
如果应用程序所运行的平台不是由自己构建,而是由第三方提供,那么第三方应该负责提供该平台的SDK。
如果应用程序所运行的平台是由自己构建的,那么开发人员可以通过Platform Builder的导出SDK功能创建自己的SDK,并且安装后供eMbedded Visual Studio使用。可以把导出的SDK发布给其他用户安装。
二.编写代码和调试
在安装完SDK后,就可以通过Visual Studio或者eMbedded Visual C++开发应用程序编写应用程序了。编码过程与普通的桌面Windows应用程序开发并没有什么大的区别。但是,在调试Windows CE下代码就不是那么简单了。Windows CE下的可执行文件是无法直接在桌面Windows中运行的。因此,要调试Windows CE下的应用程序,有两种选择:使用模拟器(Emulator)或者在真实的Windows CE设备上运行(Device)。
2.1使用模拟器调试
Visual Studio或者eMbedded Visual C++都带有Windows CE的模拟器。模拟器是一个Windows应用程序,它在Windows操作系统下为Windows CE提供了虚拟的硬件执行环境。使得Windows CE可以在Windows中作为一个Windows进程执行。
模拟器给开发人员带来的最大优点是在一台机器上就可以完成WindowsCE下的软件编码和调试,而无需Windows CE硬件设备。
在eMbedded Visual C++中,通过WCE Configuration工具栏,可以选择在模拟器或设备中调试应用程序。
在Visual Studio中,可以通过Device工具条选择模拟器环境和设备环境中进行选择。
模拟器不但可以用来测试应用程序,还可以用来测试定制的Windows CE操作系统。但缺点是:模拟器只是模拟WindowsCE可以运行的部分硬件。
2.2使用Windows CE设备调试
使用基于Windows CE的设备调试类似于传统的嵌入式开发调试。有开发机和目标机的概念,我们的PC机和Windows CE设备就分别充当了开发机和目标机的角色。
首先,需要在PC机和Windows CE设备之间建立物理连接,用来下载应用程序和传输调试信息。物理连接可以是以太网,串口,USB线等。对于应用程序来说,最容易的连接方式是使用AciveSync。使用ActiveSync连通开发机与目标机之后,就可以通过开发工具下载,调试应用程序了。
其次,一个值得注意的地方是对于使用C/C++编写的本机代码,要针对目标机选择合适的CPU。如果目标机CPU是ARM,则要针对ARM CPU编译代码,否则应用程序无法正确运行。
三 应用程序发布
应用程序发布涉及到的两个主要问题是代码签名和代码打包。
3.1 代码签名
代码签名可以使开发人员和发布人员确保应用程序在传递和执行的时候安全可信的;进行代码签名的另外一个优势是可以确保应用程序在传递和分发时的完整性和一致性。
应用程序的代码签名由微软的两家合作伙伴来完成,它们是VeriSign和Betrusted。同时,微软还提供了Mobile2Market计划用来帮助独立软件开发商来完成代码的发布和签名工作。详细情况可以参考:
http://msdn.microsoft.com/de-DE/windowsmobile//windowsmobile/partners/mobile2market
3.2 代码打包
在Windows CE下,发布应用程序通常需要把应用程序打包成*.CAB文件。Windows CE可以解开CAB文件包并对软件进行安装操作。
制作CAB文件需要两步:首先使用文本编辑器创建一个*.INF文件来描述安装包。其次使用CabWiz.exe工具把所有相关的文件打包,我们可以在SDK的Tools目录下找到CabWiz.exe。
本文资料参考《WinCE嵌入式系统》何宗建