介绍  本文的目的是引导SmartPhone编程的初学者进入SmartPhone世界,以及学会如何使用C#编写SmartPhone程序。本文首先介绍了什么是SmartPhone,以及SmartPhone的一些特性和用于编程的API。为了更好地掌握如何使用C#编写SmartPhone程序,在本文还提供了一个使用C#编写的简单的SmartPhone程序的例子,读者可以通过这个例子快速地掌握如何使用C#为SmartPhone编写程序。
  近来,移动这个新兴的领域正在受到许多移动设备的使用者和一些世界级的公司的关注和追捧。现在移动设备使用了先进的信息访问和获取技术,用户可以通过移动设备访问到世界的任何角落,因此,可以毫不夸张地说,先进的移动设备将使人们如虎添翼。 
  就象任何其它技术的快速发展一样,移动设备也在迅猛地发展。可以肯定地说,移动设备将创造一个新世界,无论是平民还是富翁,移动设备都将成为他们的好帮手。也许在不远的将来,它还会以其它的形式出现,到那时,移动设备将成为你生活的一部分。
  真是太棒了,开发人员除了可以做手头的工作…事实上,他们完全可以进入一个另人激动、充满了刺激的世界,在这个世界中,颠覆了传统的桌面和Web开发。在这个世界中,有新的技术、新的挑战、新的机会,当然,更重要的是,有新的挣钱方法…$Money$。  
移动设备的发展  移动设备发展到今天已经变得丰富多彩,现在我们有各种各样的移动设备可以选择,如手持设备,Pocket PC,PDA等等。现在移动设备正在试图利用手机已被全球的人们普遍使用的优势迅猛发展。
  今天的移动电话市场已经有多种多样的型号可供选择。目前,手机市场已经被使用Symbion操作系统的Nokia、索尼和三星等公司垄断。
  就象当年的Web浏览器市场一样,Microsoft在移动世界中也是姗姗来迟。今天的Microsoft已经拥有了自己的用于移动设备的操作,它就是Microsoft Windows Mobile2003,还有更为强大的WinCE4.2。那些使用Microsoft操作系统的手机正在蚕食市场份额,并且有越来越多的开发人员也转向了Microsoft阵营。
  按着Microsoft的一贯做法,Microsoft在推出相应的手机和操作系统后,在第一时间就为开发人员提供了相应的支持,包括可以使用现有的语言为Microsoft的手机开发软件。由于目前Microsoft主推.net framework,因此,使.net framework可以在手机上运行就变得非常必要。由于考虑到了手机的硬件环境,Microsoft推出了一个.net framework的精简版,这就是Microsoft .NET Compact Framework,这个framework是PC机上的.net framework的一个子集。  
特性  在Microsoft的SmartPhone上拥有丰富的软件,用户可以通过声音、文字以及Internet(如GSM、GPRS、SMS、PPTP、蓝牙等)进行相互通讯。
  以下是Microsoft SmartPhone所安装的软件列表
| Pocket 浏览器 | 这个浏览器比WAP浏览器强大得多,它完全可以取代手机中的IE5。这个浏览器可以支持HTML3.2、XML、XSL、cHTML、WAP1.2.1、WML脚本、Active脚本、ActiveX、SSL、JPEG、GIF等。 | 
| Pocket Outlook | 这个工具和PC机上的Outlook类似,它除了可以管理联系人、写日记、任务管理和记录音频,还可以发送和接收邮件。 | 
| MSN Messenger | 一个聊天客户端,和PC机上的MSN Messenger类似。 | 
| Microsoft ActiveSync | 使客户端和服务器同步 | 
| Windows Media Player | 一个媒体播放器,可播放MP3、WMA和AVI。 | 
| Voice Notes  | 一个录音软件。 | 
| Games  | 一些小游戏。 | 
| File Management Utilities | 文件和任务管理,类似于windows的文件管理器。 | 
| Wireless Modem  | 可以通过USB、IR和COM连接Internet。 | 
| MMS Client | 接收MMS信息。 | 
| Camera  | 一个视频采集软件,可以录制和捕捉视频。 | 
  SmartPhone的外观  图1是微软建议的移动设备的标准外观和控制面板。
 图1 标准的SmartPhone界面  | 
  在这个控制面版上有两个Soft键、一个Home键、一个Back键和五个方向键,下面是十个数字键以及"*"和"#" 键。Microsoft强烈建议使用这个按键结构。在这些键中,所有的控制键(如Soft和Home键等)是必须的。然而,这些设备并不是由Microsoft制造的,而是由大大小小的移动设备生产商所制造,因此,这些设备的外观和结构可能和Microsoft所推荐的这个设备有一些出入。
  最近,Microsoft发布了Windows Mobile 2003的第二版,开发人员可以选择以下的开发工具为Windows Mobile开发软件,这些软件有基于Win32的,也有基于Microsoft .NET Compact Framework的。
  1、 Embedded VC++ 4.0 
  2、 Visual Studio .NET - C#, VB.NET 
  一个简单的Hello World程序
  现在让我们进入主题,开发一个简单的Hello World程序。编写这个程序最先要做的就是下载可以运行在Visual Studio2003中的SmartPhone2003开发包。在安装完这个开发包后,SmartPhone的开发环境和一个SmartPhone模拟器已经被安装到了你的机器上。
  在安装完SDK后,启动Visual Studio,在工程模板中选择Smart Device应用程序,给它起一个名字,然后点击OK,现在,你将看到如图2的欢迎界面。
 图2 Smart Phone的欢迎界面  |