Windows Mobile SDK例子浅析
来源:互联网 发布:宏编程鼠标怎么设置 编辑:程序博客网 时间:2024/05/26 12:02
SDK目录下提供了丰富的例子,开发中各方面的内容都有涉及,是开发者可充分利用的宝库。以windows mobile 5.0 Pocket PC SDK和Windows Mobile 5.0 Smarphone SDK为例,简单介绍一下其提供的例子。需要说明的是,两者中有部分例子是相同的。 注:本人以Windows Mobile6.0为例~ 1.AXSample 示例演示创建一个Activex控件以及如何在web页中访问该控件。 2.DvorakSIP 示例演示如何基于Pocket PC创建一个SIP输入法。示例是一个实现了IInputMethod接口的COM组件。当用户选择输入面板开始点击按键时,将发生下列事件:1) 系统调用dll,它实现了IInputMethod接口;2) Select方法被调用来创建输入窗口;3) 系统调用GetInfo获取IMINFO结构的信息,包括尺寸和其他的上下文信息;4) 改变输入法面板的尺寸,可使用IIMCallback::SetImInfo,而系统调用ReceiveSipInfo来获取输入法尺寸、位置信息;5) RegisterCallback将被调用,赋给输入法一个IMCallBack接口的指针,这个接口通常用于给应用程序发送按键消息;6)示例给出了一个位置索引,当用户点击键盘时,会对应到一个键值;7)IICallBack:SendVirtualKey可发送虚拟键值,比如回车、空格、删除等,如果要发送字符串,则使用IICallBack::SendString;8)Deselect方法被调用来销毁窗口。 3.MiniPIE 示例演示如何在应用程序中使用IE Mobile Web browser。示例使用了ATL。 4.Piehelper 示例演示如何创建一个浏览帮助对象(BHO),使用BHO,可实现上网监控。 5.CmHelper 示例演示连接管理函数的用法。相关函数与接口: ConnMgrEstablishConnection ConnMgrConnectionStatus ConnMgrReleaseConnection ConnMgrMapURL ConnMgrProviderMessage 6.Notifymfc 示例演示了 Pocket PC的通知提醒函数的能力和选项。相关函数与接口: SHNotificationAdd SHNotificationUpdate SHNotificationRemove 7.AddContactPicture 示例演示如何选择联系人和图片,并显示联系人的主题卡片。相关函数与接口: ChooseContact GetOpenFileNameEx POOM IItem接口 8.Autorun 示例演示当扩展卡插入或拔出设备时如何管理自动运行通知。 9.Basicapp 示例演示使用主要的Shell API来适配Windows Mobile OS。相关函数与接口: RegisterClass CreateWindow SetForegroundWindow SHCreateMenuBar SHInitDialog SHGetUIMetrics SHHandleWMActivate SHHandleWMSettingChange SHLoadImageResource WM_HIBERNATE 10.Bluetooth 简单的蓝牙设备扫描程序。例子提供的列表框只列出发现的蓝牙设备名称,但也会检索设备的地址,地址可用于更多设备信息的查询。相关函数与接口: Winsock WSALookupServiceBegin WSALookupServiceNext WSALookupServiceEnd 11.Browse 示例演示了如何使用HTML Viewer控件,包括使用DTM_NABIGATE消息来触发控件从URL地址下载和显示内容。 12.Bthchat 示例演示如何基于蓝牙无线技术在两台设备之间创建P2P通信。 13.Calendaranddtp 示例演示如何使用日历和日期时间选择器控件。 14.Calendarview 示例演示如何在约会中使用POOM IItem接口。 15.Callingcard 示例演示直接从联系人界面呼叫一个电话。相关函数与接口: PhoneMakeCall QueryContextMenu 16.Cameracapture 示例提供了基础的视频截取功能,视频被截取并编码为WMV文件,图片被截取并编码为jpg文件。相关函数与接口: ICaptureGraphBUilder2 17.Cecamera 示例演示使用摄像头拍照或录制视频。相关函数与接口: SHCameraCapture 18.Ceinvoke 示例通过服务端和客户端两种方式演示如何使用CEInvoke API。 19.CeDialer 示例演示TAPI(Microsoft Telephony API)的使用。相关函数与接口: lineInitialize lineNegotiateAPIVersion lineGetDevCaps lineDrop, lineDeallocateCall, lineClose 20.Extapi 示例演示了ExTAPI的一些功能。注意:应用程序要使用ExTAPI需授权。相关函数与接口: lineNegotiateAPIVersion lineGetDevCaps lineGetGeneralInfo lineInitializeE 21.Extapiasync 演示ExTAPI的一些异步功能。注意:应用程序要使用ExTAPI需授权。相关函数与接口: lineNegotiateAPIVersion lineGetDevCaps lineGetGeneralInfo lineInitializeEx lineNegotiateExtVersion lineGetOperatorStatus lineOpen lineClose lineShutdown 22.HelloSMS 示例演示简单的短信发送。相关函数与接口: SmsSendMessage 23.HelloTAPI 示例演示简单的TAPI拨号。相关函数与接口: tapiRequestMakeCall 24.Wdp_sms 示例演示经由无线数据协议(WDP)收发数据。相关函数与接口: WapOpen WapSend WapRead WapClose 25.Cfgclient 示例演示DMProcessConfigXML的调用。相关函数与接口: DMProcessConfigXML 26.Crossword DPI(Dot Per Inch)认知程序。相关函数与接口: ChangeDisplaySettingsEx WM_SETTINGCHANGE WM_SIZE GetDeviceCaps GetSystemMetrics SHGetUIMetric 27.Ctxmenu 示例演示如何实现一个上下文菜单扩展处理器。相关函数与接口: IContextMenu 28.Customform 示例演示如何截取和处理SMS/EMS,并且在收件箱程序实现了一个自定义阅读格式。 29.Deviceinfo 示例演示IRAPI接口的用法。相关函数与接口: IRAPIDesktop EnumDevices IRAPIDevice IRAPIDevice::GetConnectionInfo IRAPIDevice::GetDeviceInfo 30.Directx 示例演示Directx在Mobile上的用法。 31.Dirtree 示例演示浏览文件系统,显示所有目录和文件的名称。相关函数与接口: FindFirstFile FindNextFile Tree控件 32.Dynamenu 示例演示了一些使用菜单句柄的技巧。相关函数与接口: SHGetSubMenu SHSetSubMenu CheckMenuRadioItem CheckMenuItem InsertMenu DeleteMenu 33.Filechangenotify 示例演示如何监听文件系统的改变。相关函数与接口: SHChangeNotifyRegister SHChangeNotifyDeregister 34.Fileclient 示例演示接受push消息。 35.FileDRM 示例演示文件Drm函数的调。DRM(Digital Rights Management,内容数字版权加密保护技术)。相关函数与接口: FileDrmIsDRM FileDrmShowLicenseInfo FileDrmVerifyRights FileDrmCreateFile FileDrmGetMetric FileDrmCommitRights 36.Gapiapp ??? 示例演示GAPI(游戏API)的用法。 Getdeviceid 示例演示GetDeviceUniqueID的使用。 37.Getphonenumber 示例获取电话号码。 38.Handlesip 示例演示如何使用一些SIP函数。 39.Htmlhose 示例演示HTML视图控件的使用。 40.Hwnavigation 示例演示了当用户使用导航键时,对话框中焦点的移动。相关函数与接口: WM_GETDLGCODE DrawFocusRectColor LVS_EX_DISJOINTFOCUS 41.Imaging 示例演示使用imaging.dll加载和显示一副图片。相关函数与接口: IImage IImagingFactory 42.Inboxmenuextensibility 示例演示为收件箱的菜单添加新项。该示例是一个dll,可被收件箱加载以扩展特定的菜单。相关函数与接口: IContextMenu接口 IObjectWithSite接口 IMAPIFolder::DeleteMessages IMAPIFolder::CopyMessages 43.Ink2 示例演示richink控件对于rtf和txt数据的处理。相关函数与接口: RichInk控件 44.Inky 示例演示RichInk控件的能力。相关函数与接口:
RichInk控件
45.ListView
示例演示使用ListView控件的一些技巧。相关函数与接口:
ListView控件
46.Mailset
使用IMsgStore::GetProps和IMsgStore::SetProps检索和设置消息存储。相关函数与接口:
IMAPISession
IMAPITable
IMsgStore::GetProps
IMsgStore::SetProps
47.MapiRule
实现一个MAPI Rule客户端,能够处理过滤新短信。相关函数与接口:
IMailRuleClient
IMailRuleClient::ProcessMessage
IMailRuleClient::Initialize
IMsgStore
IMsgStore::OpenEntry
IMessage
IMessage::GetProps
48.Medicalhistory
示例往联系人卡片添加菜单扩展项,允许添加医疗信息包括健康保险公司、血型、血压、过敏症状。相关函数与接口:
POOM自定义属性
IPOutlookApp2接口
IItem接口
菜单扩展
IContextMenu接口
IObjectWithSite接口
49.Memwatcher
创建一个自定义今日屏幕项。相关函数与接口:
今日插件
50.Menu
示例演示添加、创建、插入菜单子项。
51.VisAdm
示例演示如何使用消息队列(MSMQ)。
52.Mybacklight
示例演示在PPC设备上创建一个简单的控制面板程序。相关函数与接口:
CPlApplet
53.Owneralistview ???
示例演示如何实现一个自绘的ListView控件以及如何使用不同的ListView通知事件。
54.Picturedialer
示例将电话号码和图片关联到网格中的数字,按下数字将拨打电话号码。
55.Pimexprovider
联系人和日历。
56.PoomMaster
演示使用POOM API。相关函数与接口:
IPOutlookApp
IPOutlookCollection
ITask
IContact
IAppointment
Listview控件
Datetime控件
57.Powermanager
示例演示电源管理API的使用。相关函数与接口:
RequestPowerNotifications
StopPowerNotifications
SetPowerRequirement
ReleasePowerRequirement
GetSystemPowerState
SetSystemPowerState
58.ProjectEnumeration
演示项目文档和文件操作的API。
59.PViewCE
设备进程查看器。相关函数与接口:
CreateToolhelp32Snapshot
60.Raip ???
PC端程序例子,用于ActiveSync与终端同步。
61.ReadViewMenuExt
使用默认的电子邮件账户回复邮件。相关函数与接口:
菜单扩展
IContextMenu
IObjectWithSite
MailComposeMessage
62.Regviewer
一个Pocket PC注册表查看程序。相关函数与接口:
RegOpenKeyEx
RegQueryInfoKey
RegEnumValue
RegEnumKey
对于不同分辨率终端在程序安装过程中资源图片的处理,示例给出了方案。
63.Resolve
示例演示如何将一个域名(类似www.microsoft.com)解析成IP地址,或者IP地址解析成域名。相关函数与接口:
gethostbyaddr
gethostbyname
64.Reversi
示例实现了掌上电脑黑白棋游戏。包括绘图,游戏逻辑和算法。
65.SendMail
演示一些CEMAP函数的用法。通过使用这些函数,程序可实现多联系人发送邮件。相关函数与接口:
MapiLogonEx
SRowSet
IMapiSession::GetMsgStoresTable
IMapiSession::OpenMsgStore
IMapiTable::QueryRows
IMsgStore::OpenEntry
IMsgStore::GetProps
IMapiFolder::CreateMessage
IMessage::SubmitMessage
MAPIFreeBuffer
FreeProws
66.Setupdll
在CAB包安装和写在过程中,用户可实现一些自定义操作,setupdll将起到此作用。
67.ShellApiDemo
演示了一些Shell API。比如,如何显示/隐藏任务栏、菜单和Sip按钮,以及SHInitDialog、SHCreatemenuBar的用法。相关函数与接口:
SHInitDialog
SHDoneButton
SHSetNavBarText
SHFullScreen
SHGetAutoRunPath
SHCreateMenuBar
SHEnableSoftkey
68.SocketApp
SocClient是一个Win32桌面组件,演示了使用套接字与Windows Mobile设备通信。第一步,应用程序使用IRAPI接口来获得通过ActiveSync连接的移动设备IP;第二步,它发送一个Hello字符串,并侦听设备返回。相关函数与接口:
IRAPIDesktop
EnumDevices
IRAPIDevice
IRAPIDevice::GetConnectionInfo
69.Spintest
示例演示自定义控件(SpinCube)的使用。
70.Syncmanager
演示ActiveSync API的用法。相关函数与接口:
ActiveSyncStart
ActiveSyncStop
IsCradled
IsSynchronizing
71.Tasktree
在tree视图显示任务对象,允许用户添加新的任务项。
72.Transportdemo
演示如何创建一个自定义的收件箱传输。此示例传输实际上并不使用任何协议同步电子邮件。它只是说明了如何构造一个收件箱的传输,通过该传输,开发人员可以实现其所需的协议。
73.TrayApp
演示如何在今日页面上放置一个图标,以及如何点击图标弹出一个对话框。相关函数与接口:
Shell_NotifyIcon
74.TrayTaskList
演示如何获取运行任务列表。相关函数与接口:
Shell_NotifyIcon
CreateToolhelp32Snapshot
Process32First
Process32Next
75.Tty
示例演示如何打开,配置和关闭串行通信端口,并执行读/写一个tty终端仿真应用操作。
76.Tv_inbox
实现一个新的邮件类别。相关函数与接口:
IFormProviderEx
IMailRuleClient
77.VirtualListView
ListView的使用。相关函数与接口:
ListView_SetItemCount
ListView_SetExtendedListViewStyle
ListView_GetExtendedListViewStyle
ListView_SetImageList
ListView_InsertColumn
78.Back
演示如何检测返回按键被按下以及如何与之交互。相关函数与接口:
SHCMBM_OVERRIDEKEY
SHNavigateBack
79.CloseWindow
演示如何销毁子窗口。
80.Cmtime
演示如何与服务器同步时间。相关函数与接口:
ConnMgrReleaseConnection
ConnMgrEnumDestinations
ConnMgrEstablishConnection
TCP sockets
81.Currency
演示如何把一个PPC程序转化为Smartphone程序。
82.HomeScreen
该示例实现了Home插件和自定义Home插件的布局。相关函数与接口:
IHomePlugin
IPersistStream
IHomePluginEnvironment
83.Menudemo
创建和操作软键菜单。相关函数与接口:
SHCreateMenuBar
SHMENUBARINFO
84.Muihello
一个hello world示例的MUI版本。MUI是一种单独发行的Windows版本的代号。它的正式名字叫Windows多语种版(Windows Multilanguage Version)。在这个版本的Windows中,用户可以自己设定Windows界面中使用的语言。
85.Phoneime
演示如何创建Smartphone上的IME输入法(Input Method Editor)。相关函数与接口:
SHImeSetCustomInputIcons
SHImeSetModeIcon
SHImeOnKeyPress
SHImeGetClearMessage
86.Simmgr
演示如何添加和删除SIM卡的电话号码项。相关函数与接口:
SimInitialize,
SimGetDevCaps,
SimDeinitialize,
SimReadPhonebookEntry
- Windows Mobile SDK例子浅析
- Windows Mobile SDK例子浅析
- Windows Mobile SDK例子浅析
- Windows Mobile SDK例子浅析
- Windows Mobile SDK例子浅析
- Windows Mobile SDK例子浅析
- Windows Mobile SDK
- Windows Mobile 6 Professional SDK
- Windows Mobile 6 Professional SDK
- Windows Mobile 6 Professional SDK
- Windows Mobile 6 Professional SDK
- Windows Mobile 5.0 SDK 下载地址
- Windows Mobile 5.0 SDK 下载地址
- Windows Mobile 6 SDK 中的 Cellular Emulator
- Windows Mobile 6 SDK 中的 GPS 工具
- Windows Mobile 6 SDK 中的 GPS 工具
- Windows Mobile 6 SDK 中的 Cellular Emulator
- Windows Mobile 6 SDK 中的 GPS 工具
- 新女儿
- static关键字的作用
- C#路径,文件,目录,I/O常见操作汇总
- 把数组排成最小的数--总结
- 在ToolBar中加其他控件
- Windows Mobile SDK例子浅析
- effective c++ 学习笔记2----auto_ptr
- test
- [常见问题]文件点击右键出现WINDOWS INSTALLER”解决方案
- java--JTable用法
- Symbian 活动对象和RSocket
- 献给想学有所成的人.
- 生活总会越来越好
- 资料收集----windows mobile 常用代码(转)