许多开发人员都尝试了基于无线装置的软件编程,然而这些思想达于成功的关键之处在于他们能否深入了解Windows CE的功能和缺点。本文就此介绍了Windows CE的一些基本特性,并指出过渡到基于无线装置的软件开发所应具备的知识。
开始
Windows CE操作系统支持很多特性,并能被很多一系列不同的CPU编译。她支持多线程,包含多种可选择的GUI。诸如她的堂兄弟一样,Windows CE也具有台式计算机操作系统的特性,所以开发人员无需花太多的时间就可以很容易地进行基于Windows CE的软件开发。
在这一小节中,我们关注的是如何在基于Windows CE的Pocket PC和Pocket PC2002平台的开发。这两个平台都是通过Windows CE3.0实现的。微软也发布了一套新式的Windows CE版本,即Windows CE.NET,也就是常说的Windows CE4.0。
Pocket PC2002对象平台需要下载一套新SDK,但她集成在eMbedded Tools 3.0软件中,当编写代码时和使用Pocket PC很类似,但是她还有以下几方面的改进。
1.通讯改进
- 新的连接管理器
-
支持对象交换(OBEX)
-
电话API
2.可用性改进
-
新的消息响应系统
-
当前屏幕外壳
-
敏锐的最小化特色
3.网络浏览器的新特性
4.新的HTML控件
基于Windows CE的Pocket PC平台的开发
为了在Windows CE3.0系统中进行开发,你必需下载微软的eMbedded Tools 3.0软件,这一套软件包含了eMbedded Visual C++ 3.0和 eMbedded Visual Basic 3.0,同时她也提供了基于Pocket PC、掌上PC、变携式PC的所有SDK。Visual C++和Visual Basic都是独立的,如果你想进行特定对象平台的开发,就要下载Pocket PC2002的额外SDK。
所有的SDK都附带仿真器,你可以利用这一仿真器在台式PC机中进行模拟试验。无需一个对象Pocket PC系统,你就可以在Pocket PC或Pocket PC2002上进行开发。你所需要的是eMbedded Visual Tools 3.0软件,合适的SDK以及一台式PC机就足够了。图A和图B显示了Pocket PC和Pocket PC2002的仿真器。如果你真的想在一Pocket PC设备上开发,只要通过USB口和台式PC机连接在一起就可以了。
图 A
图 B
利用eMbedded Visual Tools软件进行开发
许多开发人员都惊诧于Windows CE操作系统及其开发工具和台式机系统的开发有着很多方面的相同性。eMbedded Tools 3.0软件囊括了以下的特性:
-
Windows CE Pocket PC2002应用程序
-
Windows CE Pocket PC2002 MFC向导
-
Windows CE应用程序
-
Windows CE ATL COM 向导
-
Windows CE动态连接库
-
Windows CE MFC Active向导
-
Windows CE MFC向导(.dll)
-
Windows CE MFC向导(.exe)
-
Windows CE Pocket PC应用程序
-
Windows CE Pocket PC MFC 向导(.exe)
-
Windows CE 电话 2002应用程序
-
Windows CE 静态连接库
微软公司支持MFC,ATL及常规Win32 API。相比于台式计算机系统,Win32 API(包括MFC)都有很大的限制,例如,Windows CE系统中很多行为都不是很明显,即使她也允许你象在台式PC机那样操作。
你可以画直线,圆,椭圆,但并不支持多种映射模式。Windows CE唯一支持的是MM_TEXT方式,她也不支持坐标转换。
也许你很想知道eMbedded Visual Tools 3.0软件支持的是哪一款CPU类型。虽然袖珍PC2002只支持ARM处理器,但eMbedded Visual Tools 提供了以下CPU类型的多种选择:
ARM, MIPS, PPC, SHx, x86及THUMB。虽然eMbedded Tools作为Windows CE 3.0的编译器,她也支持很多不同的对象装置。
eMbedded Visual C++ 4.0 和Windows CE.NET
微软已经发布了一套全新的eMbedded Visual C++ 3.0版本,即所说的eMbedded Visual C++ 4.0。这一编译器主要是面象于Windows CE.NET操作系统的开发。到目前为止,还没有eMbedded Visual Basic 4.0的出现,也还没有基于eMbedded Visual C++ 4.0的Pocket PC SDK的出现。
现在,你可以到微软主页上下载eMbedded Visual C++ 4.0,并可以利用提供的仿真器进行开发。只要肯花一足够的资金,你就可以针对一硬件对象进行开发了。
本人觉得eMbedded Visual Tools 3.0最令人心烦的是她不支持C++异常行为,这样eMbedded Visual Tools 3.0不能执行标准模板类库。这些问题在eMbedded Visual Tools 4.0得以修正,所以eMbedded Visual Tools 4.0更能和C++相兼容。
开发真正意义上的应用程序
如果你已经很熟悉Visual Studio,对Windows CE 和Pocket PC你就可以快速上手。当我第一次在Pocket PC机上开发时,只花我5分钟就可以完成如“Hello World”的程序(图 C)。只需安装eMbedded Visual C++,建立工程,选择标准的MFC Pocket PC向导,然后进行编译就可以了。
图 C
值得注意的是,eMbedded Visual C++包括了很多额外选择,你可以利用这些去选择CPU类型和系统平台。如果你采用Pocket PC2002仿真器来开发,你可以选择Pocket PC 2002程序,Win32(WCE x86)调试器等。
如果你在真实Pocket PC2002设备中编译,可以通过USB口和台式机连接起来,然后安装eMbedded Visual C++,建立工程,建立Pocket PC 2002程序的对象,利用Win32(WCE ARM)调试器。
当建立一工程时,一定要选定和你最后可执行程序相匹配的CPU类型。如果你事先不选择CPU类型,在编译后就要花很大的精力和时间。在默认状态下,所有的CPU类型都被选择,这也是开发中最好的方法。选择额外的CPU类型是没有什么坏处的。
结论
本文我们介绍了Windows CE 3.0 和 Windows CE.NET。讨论了eMbedded Visual C++ Tools软件,并提及了Pocket PC和Pocket PC2002的一些复杂特性。在以后的章节中,我们将深入讲述Pocket PC的程序设计,特别集中讲述访问注册表和开发专业GUI的程序开发。
|