开发windows mobile今日插件

开发windows mobile今日插件

ID:15127036

大小:580.00 KB

页数:11页

时间:2018-08-01

开发windows mobile今日插件_第1页
开发windows mobile今日插件_第2页
开发windows mobile今日插件_第3页
开发windows mobile今日插件_第4页
开发windows mobile今日插件_第5页
资源描述:

《开发windows mobile今日插件》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、开发WindowsMobile今日插件     本篇文章讲解的是开发WindowsMobile上的今日插件。关于是今日插件,在PPC或者SPSDK的帮助文档中有相关的章节介绍,在网络上也有一些帖子和资源讲解。在这里简要回顾一下。今日插件就是在windowsmobile的桌面上显示的条目,例如系统提供的“日历”(Calendar),主人信息,以及许多第三方开发的今日插件等等。由于桌面是开机后的第一个屏幕,所以插件显示在屏幕上将会得到用户最多的浏览时间。这里我们主要讲解的是用户自定义插件的开发。自定义插件如

2、下图所示:            一个插件就是一个位于屏幕上的窗口,每个插件负责自己的绘制和对用户输入的响应。插件可以通过给自己的父窗口(桌面窗口)发送TODAYM_DRAWWATERMARK消息,委托父窗口为自己绘制背景,也就是通过把自己的HDC传递给shell来完成的,这样插件就看起来好像是“透明”的效果。同时,shell也负责在相邻的插件之间绘制一条分割线。      通常,PPC最多允许加载12个插件。最大插件数量是由K_cTodayItemsMax定义的。      对于自定义的插件,要求开发

3、者提供一个DLL函数并注册到注册表:HKLMSoftewareMicrosoftTodayItems;      如下图,我们使用远程注册表查看工具打开一个插件的在注册表中的位置:            在下面包含了所有今日插件的键。每个插件将含有下列的值:       ◆Type(DWORD);      对自定义插件来说,等于4。它是SDK中的插件类型枚举中的一个值(tlitCustom)。       typedefenum_TODAYLISTITEMTYPE{             t

4、litOwnerInfo=0,             tlitAppointments,             tlitMail,            tlitTasks,            tlitCustom,//自定义插件=4            tlitNil            }TODAYLISTITEMTYPE;      ◆Enabled;      插件是否启用。用户能够在设置-今日-项目中进行启用或禁用。      ◆Options;      是否含有设置对话框。也就

5、是设置-今日-项目中插件被选中时的“选项按钮”的Enabled状态。      ◆DLL:      插件dll的路径。      ◆Selectability;      可选项,插件是否可以被选中(用户在屏幕上按导航键时)。通常为1,表示允许被选中。当允许选中时,用户按上下方向键,被选中的插件背景会高亮。如果不能选中,就会跳过该插件。      ◆Order;      可选项,插件显示循序的排序值。缺省时由系统自动设置。      下面我们再介绍插件的协议,也就是插件的DLL应当满足以下要求。  

6、    (1)要求dll导出序号为240的以下函数,以初始化和创建插件窗口;      #defineORDINAL_INITIALIZEITEM     240      typedefHWND(*PFNCUSTOMINITIALIZEITEM)(TODAYLISTITEM*,HWND);      参数1:TODAYLISTITEM结构的指针,包含了该插件在系统中注册的相关信息。      参数2:桌面窗口的句柄,它将成为插件窗口的父窗口。      (2)如果插件具有设置对话框,则要求dll导出序

7、号为241的以下函数,作为设置对话框的窗口过程;      #defineORDINAL_OPTIONSDIALOGPROC  241      typedefBOOL(*PFNCUSTOMOPTIONSDLGPROC)(HWND,UINT,UINT,LONG);      同时要求dll提供资源ID为500的一个对话框资源作为设置对话框的模板。(可以通过手工修改resource.h中的定义)      (3)shell将向插件窗口发送以下信息,要求插件处理这些消息;      WM_TODAYCUST

8、OM_CLEARCACHE      告知插件正在被从显示中卸载,要求插件清理自己所维护的数据缓存。      WM_TODAYCUSTOM_QUERYREFRESHCACHE      此消息在桌面显示期间以每2秒钟一次的频率周期性对所有插件发送。询问插件是否需要进行更新。      在插件首次加载时,还要求插件告知系统插件的高度以对插件窗口进行布局。由于插件窗口被上下垂直分布,所以宽度对于系统属于已知的。如果返回TRUE,表示要求进行更

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。