看过前几期的杂志,大家应该对Windows Mobile(WM)编程了有大概的认识,这次我们就来了解一下WM编程最重要的一部分——仿真器。在程序开发过程中,一个很重要的环节就是调试程序。对于程序的调试,往往需要让程序在它所针对的运行环境内运行。我们知道,WM手机程序,其针对的运行环境就是基于WM系统的智能手机。那么,现在问题就来了,要是手头上有WM系统的智能手机那还好办,若是没有手机的话,那怎么办呢?嗯,这个问题微软早帮我们想到了。我们在之前的文章里面也提到过“设备仿真器(Device Emulator,即通常所说的模拟器)”,“设备仿真器”可以用来模拟基于Windows CE或WM的硬件平台的行为。使用Device Emulator时,无需物理设备即可运行、测试和调试运行时映像。我们可以像配置真正的硬件平台一样,对此虚拟硬件平台进行配置。一句话,“设备仿真器”就是以软件的形式模拟了一台真正的WM智能手机。嗯,这样看来,貌似使用“设备仿真器”便可以解决我们调试程序的需要了。在某些时候,这个想法是正确的。但是你注意到没有?我们运行起来的仿真器里面,是没有无线信号的:






是不是看到设备仿真器显示有来电了(见图6)?

来电号码就是我们刚才填入的电话号码。点击网络仿真器的按钮Drop Call(挂断),便可挂断我们刚才的呼叫。与此类似,往设备仿真器发送短信也十分简单,打开蜂窝仿真器的SMS(短信)标签页,填上短信内容和发送号码,点击按钮Send(发送)即可。当然,你还可以通过设备仿真器呼出电话,还可以设定呼出电话的状态是接听还是占线还是拒接等等,更多的功能这里就不一一介绍了。2.连通电脑网络就目前的情况来看,这一切是多么美好呀。那么,我们再试试看,设备仿真器里面能不能顺利的访问到互联网呢?点击WM的开始菜单,点击Internet Explorer,打开WM内置的IE浏览器,随便点击收藏夹内的一个链接,喔!不好,提示“无法连接”了(见图7)。






到这里,我们这个WM开发系列就已经结束了。在这个系列里,我们了解了C#的基本语法,了解了一个WM程序的基本结构,了解了Visual Studio 2008的基本用法,最终,我们开发完成了一个不大不小的WM程序并了解到WM开发的特点,今天,我们又进一步掌握了完全不依赖真实手机进行程序调试的方法。若是你完整的阅读了这一系列的文章,并一一进行了实践,那么,恭喜你,你已经跨入了WM开发殿堂的大门。
WM明天会更好!某国外站长在试用了几分钟的WM 7测试版后,他评价说WM7是一次“推倒重来”,WM 6的痕迹完全消失,UI比ZuneHD更复杂……想想90年代末,WM几乎一统江湖,但由于在操作系统上的投入移动系统已经“元气大伤”。据称微软之所以舍不得手机业务是由于电子邮件方面上几十亿的收益,虽然WM只占业务中的一部分,它需要WM平台和iPhone、Android相抗衡。现在WM 6.6已经支持了“电容屏”的支持,再看看新推出的Zune HD,可以预见WM 7必将大不相同。最后小编引用某网友的评论做为本系列的结束:微软的WM 6.1为一代经典系统,其地位就如PC操作系统的Windows XP,起着举足轻重的作用。WM 6.5的发布可以说是生不逢时,犹如Vista一般的华而不实,期待WM 7能如Windows 7般令手机的系统再上一个台阶。
















