Windows Mobile 实例开发
李利平
2009 年 8 月 27 日
第 1 页
前言
声明
z 本书示例开发环境为 vs2005 C++,针对 Windows Mobile 5.0 以上平台。如无特殊
说明,均采用 Win32 API。
z 本书内容皆来自本人亲身实践,主要针对一些热点和难点问题展开。由于本人水
平有限,书中不足之处在所难免,欢迎批评指正。
z 本人拥有全部版权。
z 商业使用请联系本人。
特别感谢
z 本书所有读者,以及博客上支持我的朋友。
z 感谢我的家人,他们是我最坚强的后盾。
联系方式
z 电子邮箱:pknife@sohu.com,欢迎任何意见或建议。
z 欢迎访问博客:
http://blog.csdn.net/pknife。
z
www.devdiv.net论坛是本人常去的论坛,读者亦可在上面提问。
版本
z 该版本是发布的第一个版本,以后将不定期勘误、更新。
第 2 页
目录
Windows Mobile实例开发...............................................................................................................1
前言...........................................................................................................................................2
目录...........................................................................................................................................3
第一章 Windows Mobile开发环境 .........................................................................................5
环境搭建...........................................................................................................................5
模拟器联网.......................................................................................................................5
编译错误的改正...............................................................................................................9
第二章 系统相关功能开发...................................................................................................10
短信相关.........................................................................................................................10
电话相关.........................................................................................................................11
Cab打包...........................................................................................................................14
安装和卸载.....................................................................................................................16
创建程序快捷方式.........................................................................................................17
程序自启动.....................................................................................................................17
关机与重启.....................................................................................................................18
使用鼠标、键盘钩子.....................................................................................................18
POOM操作.........................................................................................................................21
MAPI.................................................................................................................................23
线程事件同步.................................................................................................................27
手机震动.........................................................................................................................28
keybd_event的应用.......................................................................................................28
获取程序路径.................................................................................................................29
IMEI、IMSI、手机号码与手机型号.............................................................................30
时间.................................................................................................................................34
SendMessage与PostMessage.........................................................................................35
阻塞与非阻塞、同步与异步.........................................................................................35
第三章 窗口及界面...............................................................................................................36
MoveWindo与SetWindowPos...........................................................................................36
窗口自适应输入法.........................................................................................................36
获取输入焦点.................................................................................................................37
菜单相关.........................................................................................................................39
获取程序图标.................................................................................................................40
窗口全屏.........................................................................................................................41
双缓冲画图.....................................................................................................................42
透明、半透明、3D效果实现.........................................................................................43
图片的各种加载方式.....................................................................................................46
窗口的隐藏与关闭.........................................................................................................47
等待光标.........................................................................................................................47
第四章 文件及注册表...........................................................................................................48
文件的操作.....................................................................................................................48
注册表的操作.................................................................................................................49
文件关联程序.................................................................................................................51
第 3 页
存储空间.........................................................................................................................53
文件改变通知.................................................................................................................54
遍历文件目录.................................................................................................................56
第五章 网络...........................................................................................................................58
联网操作.........................................................................................................................58
Windows Sockets...........................................................................................................59
区分cmnet与cmwap.........................................................................................................62
WinInet异步使用方法...................................................................................................66
WinInet中的同步和异步区别.......................................................................................68
IE Cookie.......................................................................................................................75
BHO技术...........................................................................................................................76
HTML控件应用.................................................................................................................77
第六章 多媒体.......................................................................................................................79
PCM音频的双缓冲播放...................................................................................................79
调用摄像头.....................................................................................................................80
Media Player控件的使用.............................................................................................81
第七章 其他应用...................................................................................................................83
DMProcessConfigXML的用处.........................................................................................83
CreateProcess的用处...................................................................................................85
压缩与解压缩.................................................................................................................86
Notification.................................................................................................................87
第 4 页
第一章 Windows Mobile 开发环境
环境搭建
Windows Mobile 是微软进军移动设备领域的重大品牌调整,它包括 Pocket PC、S
martphone 以及 Media Centers 三大平台体系,面向个人移动电子消费市场。凭借微软
在视窗领域内的垄断地位,Windows Mobile 从一诞生起就占据了很多优势,众多的 Win
dows 开发者可以在熟悉的环境下进行各种应用的开发。
要进行 Windows Mobile C++开发,需要搭建相应的开发环境。
z 安装 eMbedded Visual C++4.0 或 VS2005
eMbedded Visual C++的最高版本 4.0+SP4,微软已确定不会再对 ecv 版本进行
维护升级。目前主流开发环境是 VS2005,需搭配最新的补丁包。目前最新的 IDE 环境是
VS2008。
z 安装 SDK
Pocket PC 2003 SDK/Smartphone 2003 SDK
Windows Mobile 5.0 Pocket PCSDK/Windows Mobile 5.0 Smartphone SDK
Windows Mobile 6.0 ProfessionalSDK/ Windows Mobile 6.0 Standard SDK
Windows Mobile 6.5 Professional Developer Tool Kit
Windows Mobile 6.5 Standard Developer Tool Kit
z 安装 ActiveSync
微软的同步软件 ActiveSync 可以同时支持 PPC 和 Smartphone,它能方便地在 PC 与 PPC
或 Smartphone 间方便地进行数据同步。Windows Mobile 设备的用户还可以通过 PC 来访问
互联网。ActiveSync 是 PC 与移动设备间的一座桥梁。
模拟器联网
很多时候,都是使用模拟器来开发调试程序。要模拟器上使用网络功能,需先世模拟器
连接上网络。以 Windows Mobile Pocket PC 5.0 中文模拟器为例:
选择 Tools->Device Emulator Manger…,弹出界面如下图。在“CHS Windows Mobile
5.0 Pocket PC Emulator”选项点击右键,在弹出菜单上选择“connect”
第 5 页