搭建Windows Mobile的开发平台

上一期我们提到,Windows Mobile(简称WM)应用软件平台也是建立于Microsoft Win32 API基础之上的,WM有着与传统Windows桌面开发类似的API和框架。但是WM开发,也有着其自身的特点。
首先,Windows CE API是Win32 API的一个子集,有部分功能已经被精简掉。同时,其又额外具有针对移动设备特定的扩展功能,比如对触摸屏、通信等功能的支持。
其次,在WM程序的开发过程中,与普通Windows程序开发不同的是,我们需要更多的考虑移动设备特有的硬件上的各种限制。其一,WM程序运行的硬件环境,通常远没有普通PC那么强大:RAM及ROM都要比PC少得多,CPU运算速度也较慢,显示屏也较小,键盘等用户接口硬件在使用上亦不那么灵活。所以,需要尽可能把WM程序做到短小精悍,易用高效。其二,WM设备只有非常有限的电源,WM程序应该尽可能少的消耗电量,同时应该更多的考虑支持待机、掉电等情况的处理。其三,通常情况下,大部分的开发调试工作,是在WM的仿真设备环境中进行的,这就需要考虑到仿真环境与真实硬件设备间的某些区别。
1.WM程序员入门必会的四个关键词
在正式的学习之前,我们需要先了解四个关键词:
①程序设计语言
程序设计语言,通常简称为编程语言,是一组用来定义计算机程序的语法规则。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动。我们下面提到的VB、VC++、C#等,都是程序设计语言。
②Framework
Framework即架构,它是一个语言开发软件,提供了软件开发的框架,使开发更具工程性、简便性和稳定性。下面提到的.NET CF,就是这样的一套框架。它简化了WM设备上应用程序的开发。
③设备仿真程序
设备仿真程序,即我们通常所说的模拟器。我们在进行编程的时候,总不能总拿着个手机在那里调试吧?这样非常麻烦。WM的设备仿真程序是Microsoft Device Emulator,它可以用来模拟基于Windows CE或WM的硬件平台的行为。使用Device Emulator时,无需物理设备即可运行、测试和调试运行时映像。我们可以像配置真正的硬件平台一样,对此虚拟硬件平台进行配置。可以指定屏幕分辨率和方向、内存大小、外观设计和其他属性。此外,可以为模拟的硬件按钮和软键编写事件处理代码。其主要限制在于:无法模拟性能。因为仿真程序的性能在很大程度上取决于开发计算机的处理器速度和可用的系统内存量,以及不会影响不同物理设备性能的其他因素。
④IDE
这可不是硬盘的接口,而是集成开发环境(Integrated Develop Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。就是集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫做集成开发环境。如微软的Visual Studio系列,Borland的C++ Builder、Delphi系列等。我们在这里选用IDE是Microsoft Visual Studio 2008(简称MVS 2008)。

2.WM开发工具发展史
Microsoft先后推出了EVB、EVC、.NET CF等WM程序开发技术。
①EVB(Embedded Visual Basic)是微软早期推出的基于VB语言的Windows CE开发技术,目前已经停止支持。
②EVC(Embedded Visual C++)推出的时间也很早,是一种基于VC++的Windows CE可视化开发技术。与Visual C++ 6.0对应的版本是 EVC 4.0。在其后的Visual Studio系列产品中,也有其更高版本的升级(即Smart Device Programmability)。
③.NET CF(.NET Compact Framework)是.NET框架的一个精简版本,用于智能设备的应用程序开发。.NET CF允许开发者使用C#、VB、VC++等常用语言来创建应用程序。
.NET CF有两个主要的组件:公共语言运行库和.NET CF类库。前者负责在程序运行的时候管理代码、进行内存和线程等的调度与管理,同时控制代码的安全性和可靠性。通过公共语言运行时进行管理的代码,称为托管代码,与之不同的是,EVC开发的程序,直接运行于本机环境,称之为非托管或本机代码。.NET CF类库是Microsoft专门设计的一个可以重复使用的类的集合,可以帮助开发者方便快速开发应用。
在这个系列里,我们选用C#语言和.NET CF框架,进行WM应用的开发。

3.轻松上手搭建开发环境
在这里,我们选用WM6.0系统作为平台,选择MVS 2008为开发工具。下面,我们开始一步一步搭建自己的Windows Mobile开发环境。下文中需要用到的安装包,除单独说明的以外,均可在http://msdn.microsoft.com/mobility/downloads/default.aspx下载到。
我们需要用到的软件有:
①M$ VS 2008:我们开发所需要的IDE
②ActiveSync v4.5 Simplified Chinese Setup.msi:基于WM的设备的同步软件,开发过程中,我们可以通过ActiveSync与仿真设备或真机相连进行程序调试。
③Windows Mobile 6 Professional SDK Refresh.msi:Windows Mobile 6 Professional的应用程序开发工具包
④Windows Mobile 6 Professional Images (CHS).msi:Windows Mobile 6 Professional仿真设备的中文版映像。

第一步:安装MVS 2008
开始安装后,将显示“Visual Studio 2008安装”画面。选择“安装 Visual Studio 2008”,便可以启动VS2008安装进程。依提示逐步安装即可。
需要注意的是,若选择“自定义”的安装方式,则在“选择要安装的功能”一栏,一定要勾选“Visual C#”,否则不会安装C#语言支持。另外,如果有需要,还可以选择安装MVS 2008最新的SP包。

24hhtswc01 在MVS 2008中选择要安装的功能)
24hhtswc02 正在安装MVS 2008
24hhtswc03
MVS 2008安装完成

24hhtswc04
安装Visual Studio 2008 SP1

第二步:安装其他工具
按照ActiveSync、Windows Mobile 6 Professional SDK、Windows Mobile 6 Professional Images (CHS)的顺序安装好工具

24hhtswc05 安装ActiveSync

24hhtswc06
安装Windows Mobile 6 Professional SDK

24hhtswc07
安装Windows Mobile 6 Professional Images (CHS)

第三步:简单配置
首先右击ActiveSync的托盘图标,弹出菜单中点击“连接设置”,在“允许连接到以下其中一个端口”中选择“DMA”。
24hhtswc08

然后在MVS 2008主菜单里,选“工具→设备仿真器管理器”,选择Windows Mobile 6 Professional Images (CHS),如果该模拟器还没有启动,则在菜单中选择“操作→连接”;如果已经启动了模拟器,则选择“插入底座”。然后ActiveSync就会自动连接到该模拟器。连接后,ActiveSync就可以同步该模拟器,而模拟器也可以连上互联网了,当然,前提是你的PC已经上网了。

24hhtswc09
插入设备

至此,我们需要的WM平台已经搭建完毕,下期我们就开始进入正式的编程环节啦!

(载《电脑爱好者》2009年24期)

原文地址:https://www.cnblogs.com/tanjian/p/1634249.html