aawolf = new Mobile.MVP

梦想一个移动的未来

原创 Windows Mobile动手实验集锦收藏

连续经历了两年的Windows Mobile动手实验,回想起来,被问得最多的一个问题就是:“动手实验的手册哪里能找到?”这是一个无法回答的问题,在TechEd和MEDC之外,的确很难获得动手实验的手册和虚拟机。
其实这些动手实验的资料在MSDN上都能找到,只是平时大家不去注意罢了。今年TechEd也有很多人问我,我回答他们后,很多人依旧迷茫,也许以为我在忽悠他们吧。正好趁这两天有时间,我把能够找到的动手实验手册都写下来,方便大家检索吧。不过丑话说在前边,有些实验环境比较简单的实验,光凭手册和代码就可以了,但是SQL Server与SQL Mobile的数据同步实验,就需要搭建一个比较复杂的环境了。最后提醒的是,这些手册都是英文的,没过CET-4的我做实验的时候用的也是英文手册,大家还怕什么?参加过动手实验的朋友都应该知道这些实验的价值,不多说了。

Windows Mobile

初学起步

Step by Step: Building a .NET Compact Framework Application for a Windows Mobile-based Device Using Visual Studio 2005
http://msdn.microsoft.com/library/en-us/dnppcgen/html/med201_msdn_netcf_app_vs2005.asp
对第一次接触Windows Mobile的开发者来说,这是一个非常好的实验,当然还是需要有一些.NET的WinForm的开发经验的。这个实验里,我们首先需要创建一个基于Smartphone的应用程序,然后添加一个SQL Mobile数据库作为数据源,还需要调用Pocket Outlook的API来完成联系人的查找和邮件的发送,最后还需要调用Web Service来下载本地没有的图片。
推荐指数:★★★★☆
知识点:1,创建Windows Mobile程序
        2,SQL Mobile添加数据源
        3,Pocket Outlook API调用
        4,Web Service的引用

Step by Step: Create a Database Browser Application for Pocket PC in C# by Using Visual Studio .NET 2003
http://msdn.microsoft.com/library/en-us/dnppcgen/html/intro_winmobile_csharp.asp
Step by Step: Create a Database Browser Application for Pocket PC in Visual Basic by Using Visual Studio .NET 2003
http://msdn.microsoft.com/library/en-us/dnppcgen/html/intro_winmobile_vb.asp
这两个实验只是语言不同的两个版本,因为比较简单,所以在国内没有选用。其实主要的目的就是添加一个Web Service的引用,从Web Service获取一个DataSet对象,然后绑定到DataGrid控件中。
推荐指数:★★★☆
知识点:1,Web Service传递DataSet对象
        2,DataGrid绑定DataSet

Step by Step: Build a Mobile Book Catalog with Visual Studio .NET 2003 for Pocket PC
http://msdn.microsoft.com/library/en-us/dnppcgen/html/mobile_book_catalog_vsnet2003.asp
这个实验就复杂得多了,实验目的是创建一个接近真实的图书信息浏览软件。我们首先要创建一个用户界面,然后使用Web Service获取图书信息,然后还需要通过P/Invoke来调用API来控制光标类型(在.NET CF 2.0里就没这么复杂了),最后为了应付Offline的状态,还需要使用XML来对数据进行本地缓存。这个实验并没有在国内使用过。
推荐指数:★★★★☆
知识点:1,建立复杂用户界面
        2,使用Web Service
        3,使用P/Invoke
        4,使用XML

Step by Step: Develop a Location-Based Application on a Pocket PC Phone Edition by Using Microsoft MapPoint Location Server 1.0
http://msdn.microsoft.com/library/en-us/dnppcgen/html/location_apps_mappoint.asp
本实验讲述如何在Pocket PC上使用MapPoint Location Server,因为MapPoint服务在中国并没有,所以我们只能感受一下,这个实验在国内也没有用过。首先需要创建工程、用户界面,将MapPoint的Web Service引用加入到工程中。首先要指定用户名、密码、要查找的区域,这里要选择“NA”(北美)。然后获取联系人的位置,最后表现到地图上。
推荐指数:★★★★☆
知识点:1,MapPoint Web Service的使用
        2,将MapPoint地图表现在程序中

Step by Step: Integrating Real-Time Tracking with MapPoint Location Server
http://msdn.microsoft.com/library/en-us/dnppcgen/html/med203_msdn_mappoint_location_server.asp
推荐指数:★★★★
与上边类似的一个实验,不过加入了实时跟踪的内容
知识点:MapPoint Web Service的使用

开发工具

Step by Step: New Native Windows Mobile Development Features in Visual Studio 2005
http://msdn.microsoft.com/library/en-us/dnppcgen/html/med304_msdn_new_native_wm_features_vs2005.asp
很多朋友都抱怨,动手实验室以.NET CF为主要开发工具,而对C++开发者关心太少了。这个实验就是专门为C++开发者准备的。在VS 2005中首先用ATL开发一个ActiveX控件,然后使用MFC创建一个Host程序,调用这个控件。
推荐指数:★★★★☆
知识点:1,创建ActiveX控件
        2,MFC程序中调用ActiveX控件

Windows Mobile编程

Step by Step: Introduction to the New Native APIs in Windows Mobile 5.0
http://msdn.microsoft.com/library/en-us/dnppcgen/html/med307_msdn_intro_new_wm5_native_api.asp
超级长的一个实验,介绍了所有Windows Mobile 5.0中比较有趣的API,当然这个实验也是以VS 2005的C++为开发环境的。首先使用Pocket Outlook中的API选择联系人;然后使用图片选择对话框和Messaging API,选择图片作为附件,发送电子邮件;接下来通过State and Notifications Broker API获取系统当前状态、系统状态改变时获取通知;最后是调用Camera Capture API,获得照相机的功能。可能唯一没涉及到的就是GPS的API了。
推荐指数:★★★★★
知识点:1,图片选择API的使用
        2,PocketOutlook API获取联系人、发送电子邮件
        3,State and Notifications Broker API
        4,Camera Capture API

Step by Step: Introduction to the New Managed APIs in Windows Mobile 5.0
http://msdn.microsoft.com/library/en-us/dnppcgen/html/med202_msdn_intro_new_wm5_managed_apis.asp
与上一个实验类似,只是环境换到了.NET CF的托管环境中。
推荐指数:★★★★★
知识点:1,图片选择API的使用
        2,.NET CF中拨打电话
        3,PocketOutlook API获取联系人、发送电子邮件
        4,State and Notifications Broker API
        5,Camera Capture API

用户界面

Step by Step: Build a Custom Control for Visual Studio .NET 2003 by Using the .NET Compact Framework on Smartphone
http://msdn.microsoft.com/library/en-us/dnppcgen/html/sp_lab1_build_custom_control.asp
为Smartphone创建一个自定义控件,并为这个控件添加设计期支持。这是一个比较老的动手实验了,曾经在TechEd 2004中国中出现过。现在我们在VS2005中有了更容易的方法。
推荐指数:★★★★
知识点:1,创建自定义控件
        2,添加设计期支持

Step by Step: Develop Orientation-Aware and DPI-Aware Applications for Pocket PC
http://msdn.microsoft.com/library/en-us/dnppcgen/html/orientation_dpi_aware_apps.asp
这也是一个比较老的实验,用于让大家了解针对不同显示方式、不同分辨率的编程。当时只有Pocket PC 2003 SE存在这个问题,现在所有的Pocket PC和Smartphone都需要考虑这些问题了。
推荐指数:★★★★
知识点:1,不同显示方式
        2,不同分辨率

Step by Step: Developing Orientation-Aware and Resolution-Aware Windows Mobile-based Applications in Native Code
http://msdn.microsoft.com/library/en-us/dnppcgen/html/med305_msdn_dev_orientation_res_aware_apps_native.asp
上边实验的升级,不同的是运行在Windows Mobile 5.0平台上
推荐指数:★★★☆
知识点:1,不同显示方式
        2,不同分辨率

Step by Step: Implement Smartphone-Style Scrolling Data Entry Dialogs by Using the .NET Compact Framework on Smartphone
http://msdn.microsoft.com/library/en-us/dnppcgen/html/sp_lab2_implementing_scrolling_dialogs.asp
创建一个Smartphone上的可滚动对话框,这个问题在VS 2005中已经得到了解决,这个实验只是针对VS 2003和.NET CF 1.0的。
推荐指数:★★★☆
知识点:1,Smartphone界面特点
        2,如果滚动对话框

Step by Step: Implement Style List Controls by Using the .NET Compact Framework on Smartphone
http://msdn.microsoft.com/library/en-us/dnppcgen/html/sp_lab3_implementing_list_controls.asp
实现一个自画的ListView用来显示来自Web Service的数据。
推荐指数:★★★☆
知识点:1,添加自画的ListView
        2,Web Service引用

数据操作

Step by Step: Developing a SQL Mobile Application with Visual Studio 2005 and SQL Server 2005
http://msdn.microsoft.com/library/en-us/dnppcgen/html/med302_msdn_sql_mobile.asp
这个实验就是MEDC和TechEd 2006中所用的实验,主要分三个大部分:将SQL Mobile数据库作为数据源添加到工程中,通过拖拽产生用户界面;配置SQL Server的Replication,使SQL Server可以与设备端的SQL Mobile同步;通过Web Service进行数据同步。
推荐指数:★★★★★
知识点:1,添加SQL Mobile作为数据源
        2,使用Replication进行数据同步
        3,使用Web Service进行数据同步

Step by Step: Program Microsoft SQL Server CE 2.0 Merge Replication Using .NET Compact Framework
http://msdn.microsoft.com/library/en-us/dnppcgen/html/sql_serverce_replication_net.asp
这是Merge Replication实验较老的一个版本,使用的是SQL Server CE 2.0和SQL Server 2000,与上边实现大体相似,只是增加了冲突解决的步骤。
推荐指数:★★★★★
知识点:1,配置Merge Replication
        2,配置IIS和SQL Server CE Server Tools
        3,订阅发布,并进行同步
        4,冲突解决

平台迁移

Step by Step: Migrating a Windows Mobile Application from GAPI to DirectX
http://msdn.microsoft.com/library/en-us/dnppcgen/html/med308_msdn_migrating_wm_gapi_app_directx.asp
这其实是一个关于D3D Mobile的实验,具体情况就不多说了。
推荐指数:★★★★☆
知识点:D3D Mobile

Step by Step: Migrating an eMbedded Visual C++ Application to Visual Studio 2005
http://msdn.microsoft.com/library/en-us/dnppcgen/html/med303_msdn_migrate_evc_app_vs2k5.asp
该实验分辨将MFC和Win32程序从EVC中迁移到VS 2005中。
推荐指数:★★★★
知识点:VS 2005对Native C++工程迁移的支持

.NET Compact Framework
Step by Step: Incorporating COM Objects into Your .NET Compact Framework 2.0 Application
http://msdn.microsoft.com/library/en-us/dnnetcomp/html/med301_msdn_com_netcf2.asp
在.NET CF 2.0程序中使用COM组件,包括两部分内容,在VS 2005中使用ATL开发一个COM组件,并在.NET CF 2.0的程序中调用;使用POOM操作Pocket Outlook,最后还使用了Windows Mobile 5.0里的托管API来实现相同功能。值得一提的是,.NET CF 2.0只支持COM组件调用,但并不支持ActiveX控件。
推荐指数:★★★★☆
知识点:1,使用ATL创建COM组件
        2,.NET CF 2.0中调用COM组件
        3,.NET CF 2.0中调用POOM
        4,使用Windows Mobile 5.0托管API

Step by Step: Developing Multithreaded Applications with the .NET Compact Framework 2.0
http://msdn.microsoft.com/library/en-us/dnnetcomp/html/med204_msdn_dev_multithread_apps_netcf2.asp
非常好的一个多线程实验,包括线程创建、线程池、线程同步等,强烈建议大家做一下。
推荐指数:★★★★★
知识点:.NET CF关于多线程的知识


Step by Step: Tips, Tricks, and Techniques for Debugging .NET Compact Framework Applications
http://msdn.microsoft.com/library/en-us/dnnetcomp/html/med306_msdn_debugging_netcf.asp
这是非常新的一个实验,也是唯一一个不针对开发而针对调试的实验,主要内容有三个:设置线程相关断点;调试一个P/Invoke;使用Interop Log来判断平台调用。当然大家会发现这些Debug技术都是针对比较复杂的多线程或平台调用的。
推荐指数:★★★★★
知识点:1,设置线程相关断点
        2,调试一个P/Invoke
        3,使用Interop Log

好了,所有的实验就介绍到这里了,当然还有一些没有公布的实验,我也不知道该去哪里找他们的手册。不过大家也不要以为有了这个实验手册列表,明年就可以不参加动手实验了,要知道Windows Mobile动手实验每年都会进行更新,如果你错过了,可能就要再等一年,期待能在明年的MEDC和TechEd的实验室里见到大家。
还有一点,现在的实验都是美国那边的,中国这边只是做了本地化的工作。我想在这里做个调查,希望大家能给我更多的反馈:
1,如果要做中国自己的实验,大家是不是支持呢?
2,对动手实验的内容,有什么样的期待呢?
3,是偏向对新技术的介绍,还是更加接近实战?
4,您对哪些内容感兴趣,觉得出现在动手实验里会有趣?
希望听到大家的意见,谢谢。

发表于 @ 2006年09月27日 18:20:00|评论(loading...)

新一篇: Windows Mobile数据同步项目方案 | 旧一篇: Windows Mobile BLOG 问题集锦 2006-9-25

用户操作
[即时聊天] [发私信] [加为好友]
马宁
订阅我的博客
XML聚合  FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
马宁的公告

第十三届国际集成电路研讨会暨展览会




本BLOG所发表文章,作者保留一切权利。必须经过作者本人同意后方可转载,并注名作者和出处。

欢迎进入讨论区发表观点或提问
文章分类
收藏
    Blog
    Windows Embedded Blog from China(RSS)
    传说中的面霸
    唐勉的BLOG ARM-WinCE
    张欣的blog
    老狗工作室
    自游中国
    金·评·没
    陈锐的博客
    Webcast
    .NET Compact Framework中的P/Invoke
    .NET Compact Framework自定义组件开发
    Direct 3D Mobile初体验
    SQL Mobile 2005的Replication和RDA开发入门
    SQL Mobile新特性介绍
    SQL Server 2005 SqlCeResultSet和高性能数据访问深度探索
    SQL Server 2005 SqlCeResultSet和高性能数据访问深度探索
    Using SQL MOBILE on.NET CF 2.0(Level 300)
    VS.NET 2005和.net compact framework 2.0新特性介绍
    Windows Mobile 2nd 开发黄金周(4):移动设备应用程序如何使用本地数据编程
    Windows Mobile 3rd 技术开发黄金周(6):使用SQL Server Everywhere开发Windows Mobile最佳移动数据应用
    Windows Mobile 5 新特性
    Windows Mobile 5:让你的企业动起来
    Windows Mobile应用访问远程服务
    使用.NET CF开发Smartphone应用程序
    使用MSMQ创建Windows Mobile远程通讯程序
    基于Windows Mobile的企业办公应用及架构
    基于Windows Mobile的企业应用开发
    存档
    软件项目交易
    Csdn Blog version 3.1a
    Copyright © 马宁