适用于:
Windows Mobile? 2003 Second Edition software for Pocket PC
Windows Mobile? 2003 Second Edition software for Smartphones
Windows Mobile? 2003 software for Pocket PC
Windows Mobile? 2003 software for Smartphones
Windows Mobile? 2002 software for Pocket PC
Windows Mobile? 2002 software for Smartphones
Microsoft? eMbedded Visual Basic?
Microsoft? eMbedded Visual C++?
Microsoft? .NET Compact Framework
Microsoft? Visual Studio? .NET
摘要:本文为以 Pocket PC 和 Smartphone 为目标或者考虑以其为目标的开发人员常常询问的问题提供
了答案。
常见问题
问:什么是 Windows Mobile?
答:Windows Mobile 是 Microsoft 用于 Pocket PC 和 Smartphone 的软件平台。Windows Mobile
将熟悉的 Windows 桌面扩展到了个人设备中。
问:Pocket PC 和 Smartphone 之间有什么不同?
答:考虑 Pocket PC 和 Smartphone 的主要使用特性方面。Smartphone 主要是在格式因素和使用
两方面作为一种电话设备而设计的。它经过良好的微调,可以用于发出和接收呼叫,并且还可以作为消
息处理设备。Pocket PC 主要是作为一种小型个人计算机而设计的,对于查看和管理数据与增强消息处
理而言很不错。某些 Pocket PC 设备也具有电话功能。您应当尽量根据目标 Windows Mobile 设备的使
用特性来调整您的应用程序。
问:Pocket PC 和 Smartphone 有哪些不同的版本(例如 2002、2003)?
答:Windows Mobile 软件的每个新版本都是在可供开发人员使用的丰富的现有开发平台上构建的
,而同时保持了一致的核心,这样应用程序就可以面向各种设备了。目前有三种通用的 Windows Mobile
软件版本:? Windows Mobile 2002 软件:运行设备的软件有时称为 Pocket PC 2002 和 Smartphone
2002.新的开发人员功能包括 MAPI 和连接管理器。? Windows Mobile 2003 软件:2003 软件版本将
.NET Compact Framework 添加到基于 2003 的设备 ROM.这使得开发人员能够为基于 Windows Mobile
2003 的设备编写托管代码应用程序。其他的新功能包括配置管理器、蓝牙可编程性和 SMS 截获支持。
? Windows Mobile 2003 Second Edition:Second Edition 版本使得设备制造商能够通过该版本的主
要功能(例如,对 Pocket PC 的横向、方形和高分辨率屏幕以及 Smartphone 的 QVGA 屏幕的支持)进
行创新。其命名反映了开发平台的一致性,这对于此版本也没有改变,所有支持新屏幕方向和分辨率的
API 始终是平台的一部分。
问:我如何识别不同的软件版本?
答:Pocket PC 和 Smartphone 在 Settings 中都有一个 About 面板。Settings 可以从两种设备
的 Start 菜单找到。
根据代码,您可以使用 GetVersionEx 函数查询最高和最低的 OS 版本以及软件的确切内部版本号
。? Windows Mobile 2002– OS Version : 3.0? Windows Mobile 2003– OS Version : 4.20?
Windows Mobile 2003 Second Edition– OS Version : 4.21问:为了支持 Windows Mobile 2003
Second Edition 的增强功能(例如高分辨率或横向屏幕),我应该在我的应用程序中做些什么?
答:Windows Mobile 2003 Second Edition 提供了全新的屏幕方向和分辨率,包括针对 Pocket PC
的横向、方形和 VGA 支持以及针对 Smartphone 的 QVGA 支持。这种版本不需要新的 SDK. 1.阅读
Windows Mobile 2003 Second Edition Developer Resources 软件包中白皮书上的最佳做法。
2.测试您的应用程序,使用 Pocket PC 与 Smartphone 的 Windows Mobile 2003 Second Edition
模拟器。
3.使应用程序屏幕方向和分辨率保持独立,这样您就可以使用一个代码基以 Windows Mobile 平台
上的全部硬件创新为目标了。
下载新的 Windows Mobile Developer 资源包 ,其中包括新的和更新的代码示例及白皮书。
Pocket PC 开发问:什么工具可用于 Pocket PC 2003 开发?
答:要构建 Pocket PC 2003 本机 C++ 应用程序,您需要 Microsoft? eMbedded Visual C++?
4.0、Microsoft? eMbedded Visual C++? 4.0 Service Pack 3,以及 Pocket PC 2003 软件开发工具
包。您可以下载 eMbedded Visual C++ 工具和 Pocket PC 2003 SDK.Windows Mobile 2003 Second
Edition 模拟器包使您可以在 Second Edition 设备上测试您的应用程序。注意,Pocket PC 2003 SDK
不支持 Microsoft? eMbedded Visual Basic? 开发。要构建 Pocket PC 2003 托管代码应用程序,您
需要 Visual Studio .NET 2003 和 Pocket PC 2003 SDK.要构建 Pocket PC 移动 Web 应用程序,可以
使用 Visual Studio .NET 2003 中的 ASP.NET 移动控件。
问:Pocket PC 2002 应用程序可以在 Pocket PC 2003 设备上工作吗?
答:使用文档化 API 且功能良好的 Pocket PC 2002 应用程序无需重新编译即可在 Pocket PC
2003 设备上运行。
问:为什么 Pocket PC 2003 不再支持 eVB 开发?
答:在 Pocket PC 2003 设备中我们将继续支持 eVB 运行时作为一个可安装的 RAM 组件,这样旧
的 eVB 应用程序就能够在新的设备上运行,但是离开 Visual Basic? .NET、Visual C#? .NET 和
Microsoft? .NET Compact Framework 更强大健壮的开发体验,Pocket PC 2003 设备的新 eVB 开发将
不受支持。
根据客户的反馈,Pocket PC 2003 设备将在 ROM 中包含 .NET Compact Framework.。NET
Compact Framework 是完整的 .NET Framework 的一个子集,是专门为智能设备设计的。它是一种比
Pocket PC 2000 和 Pocket PC 2002 设备中提供的特定于 eVB 运行时的更加全面且与语言无关的应用
程序引擎。
问:如何从 eVB 迁移到 Visual Basic .NET?
答:从 eVB 迁移到 Visual Basic .NET 并不容易,但迁移的好处远远超过了成本:? 数据类型
更丰富:eVB 只有 16 字节的 VARIANT;Visual Basic .NET 使用 .NET Framework 通用类型系统。?
执行更快:eVB 需要解释;Visual Basic .NET 在执行前 JIT(实时)编译为本机代码? 错误处理更完
善:eVB 仅支持“On Error”;Visual Basic .NET 支持结构化异常处理? 支持结构:eVB 不支持;
Visual Basic .NET 支持命名空间、类和结构? 面向对象:eVB 是过程性的;Visual Basic .NET 支持
完全的 OOP(面向对象编程)? 一流公民:eVB 总是想迎头赶上 MFC;Visual Basic .NET 是核心
.NET? 本机 XML 支持:eVB 不支持;Visual Basic .NET 支持本机 XML 和 XML Web 服务? 数据模型
更完善:ADO.NET 远远超过了 ADOCE;它仍是最好的数据模型? 执行更安全、更可靠:eVB 是一种脚本
语言;Visual Basic .NET 为托管代码? 还有许许多多!
同时,还有各种各样的资源(从移植实验到技术文章)可以帮助开发人员进行这种过渡。一个例子
就是一篇概述如何从 eVB 迁移到 Visual Basic .NET 及其优点的技术文章: Moving from eMbedded
Visual Basic to Visual Basic .NET.问:我使用什么开发工具来编写基于 .NET Compact Framework
的 Pocket PC 应用程序?
答:Microsoft? Visual Studio? .NET 2003 允许 Visual Basic .NET 或 C# 编程人员创建
Pocket PC 2000、Pocket PC 2002 和 Pocket PC 2003 设备的托管代码应用程序(即那些以 .NET 公共
语言运行库为目标的应用程序)。要开发 Pocket PC 2000 和 Pocket PC 2002 设备的托管代码应用程
序,您可以使用即装即用的 Visual Studio .NET 2003.在开发过程中,Visual Studio .NET 2003 将会
自动地将 .NET Compact Framework 安装到这些设备的 RAM 中。。NET Compact Framework 已经在所有
Pocket PC 2003 设备的 ROM 中,而且 Visual Studio .NET 2003 通过 Pocket PC 2003 SDK 支持它。
问:有什么资源可以用于进行 Windows Mobile 2003 Second Edition 开发?
下载新的 Windows Mobile Developer 资源包 ,其中包括白皮书以及新的和更新的代码示例。该版
本不需要全新的 SDK.可以用新的模拟器软件包测试您的应用程序。
eMbedded Visual C++ 4.0 开发人员应当下载 eMbedded Visual C++ 4.0 Service Pack 3.
Smartphone 开发问:什么工具可用于 Smartphone 2002 开发?
答:要开始开发 Microsoft Smartphone 2002 应用程序,您需要 eMbedded Visual C++ 3.0 和
Smartphone 2002 SDK.两者都可以在 Windows Mobile Developer 获得。
问:何时可以将 .NET Compact Framework 用于 Smartphone 2002?
答:。NET Compact Framework 的第一个版本重点为成功的 Pocket PC 类别设备提供智能设备编
程支持。将 .NET Compact Framework 添加到 Smartphone 的 Smartphone 2003 版本中。没有发布用于
Smartphone 2002 的 .NET Compact Framework 版本的计划。
问:MFC 或 ATL 可用于 Smartphone 2002 开发吗?
答:不可以,Smartphone 2002 不支持 MFC 与 ATL 开发。
问:可以使用 eMbedded Visual Basic 3.0 来构建 Smartphone 2002 应用程序吗?
答:不可以,不支持以 Smartphone 2002 为目标的 eVB 开发。
问:什么工具可用于进行 Microsoft Smartphone 2003 编程?
答:对于 Smartphone 2003 版本,有两种开发选择,或者通过带有 Service Pack 3 的 eMbedded
Visual C++ 4.0 开发本机代码,或者通过 Visual Studio .NET 2003 开发托管代码。两种情况都需要
下载 Smartphone 2003 SDK.Windows Mobile 2003 Second Edition 模拟器软件包使您可以在 Second
Edition 设备上测试应用程序。
eMbedded Visual C++ 4.0 和 Smartphone 2003 SDK 都可以在 Windows Mobile Developer 获得。
问:在 Smartphone 2003 上可以使用 .NET Compact Framework 的哪一个版本?
答:Smartphone 2003 允许开发人员使用 .NET Compact Framework 1.0 Service Pack 1 进行编
码。。NET Compact Framework 可以放在 Smartphone 2003 的 ROM 中。。NET Compact Framework 1.0
Service Pack 2 放在 Smartphone 2003 Second Edition 的 ROM 中。
问:Smartphone 2002 应用程序可以在 Smartphone 2003 设备上工作吗?
答:使用文档化 API 且功能良好的 Smartphone 2002 应用程序无需重新编译即可在 Smartphone
2003 设备上运行。
问:什么是示例 Smartphone 2002 设备和 Smartphone 2003 设备?
答:原始的 Orange SPV 与 Orange SPV e100 运行 Windows Mobile 2002.Orange 和 AT&T 上的
MPX200 都是基于 Windows Mobile 2002 的 Smartphone.Orange SPV e200 运行 Windows Mobile 2003.
问:MFC 或 ATL 可用于 Smartphone 2003 开发吗?
答:MFC 不可用于 Smartphone 2003.可以使用 ATL 4.0 进行 Smartphone 2003 开发。有关 ATL
4.0 的更多信息,请参阅 SDK 文档。
问:在何处我可以找到更多有关 Smartphone 应用程序安全模型的信息?
答:为了帮助开发人员了解基于 Windows Mobile 的 Smartphone 应用程序安全模型,我们创作了
一本白皮书。请参见 http://msdn.microsoft.com/library/en-
us/dnsmtphn2k3/html/smartphone_security.asp.问:什么是提示模式?
答:OEM 或运营商可以将提示模式包含在他们的 Smartphone 应用程序安全策略中,从而允许用户
来决定在安装或运行时是否安装或运行一个应用程序。
问:可以使用 eMbedded Visual Basic 3.0 来构建 Smartphone 2003 应用程序吗?
答:不可以,不支持以 Smartphone 2003 为目标的 eVB 开发。如果您希望利用 Visual Basic 的
开发技巧,可以考虑使用 Visual Basic .NET 并以 .NET Compact Framework 为目标。
问:有什么资源可以用于进行 Windows Mobile 2003 Second Edition 开发?
下载新的 Windows Mobile Developer 资源包 ,其中包括白皮书以及新的和更新的代码示例。
可以使用新的模拟器软件包来测试您的应用程序。
eMbedded Visual C++ 4.0 开发人员应当下载用于 eMbedded Visual C++ 4.0 的 Service Pack 3.
本文章来自中国IT实验室http://embed.chinaitlab.com/