Windows Mobile Incoming Call View Custom
来源:互联网 发布:中英等宽字体windows 编辑:程序博客网 时间:2024/05/17 05:14
Incoming call view custom of Windows Mobile PhoneCanvas
关于WinMobile电话自定义, 在SDK Documents里已经有说明 "Phone Canvas Customization"
位置: Shell, GWES, and User Interface > Shell > Shell OS Design Development >
Sample Code: ../WM650/PUBLIC/APPS/OAK/SAMPLES
1. Customizing Controls in the Phone Canvas
Shell > Shell OS Design Development > Phone Canvas Customization >
添加注册表, 告诉MSFT的程序说我们要自定义电话, 并说明要加载哪个DLL文件.
2. PHExtGetPhoneViewInfo 函数. 通过它, 可以调用自己自定义的对话框,
Shell > Shell OS Design Development > Phone Canvas Customization > 这里有说明哪些电话对框可以充许自定义下面关于PHExtGetPhoneViewInfo的例子:
这样当有电话进来的时候, 就会调用CalertWndProc, 和调用dwIDD_CALERT_XXX资源对话框了. 我做的是整个来电对话框自己Draw上相关的来电信息,还有接听/挂断按钮,添加菜单等. 没用dwIDD_CALERT_XXX资源对话框, 所以没有试过不用HOOK, 只换Caler资源对框来自定义的情况, 不过文档上说是可以的...
3. 来电时会调用CalertWndProc, 这里要添加一些小小的处理. 这个CallBack里的hWnd是最底层的(用Remote SPY 可以看得到), 所以要用两次GetParent来取得MSFT显示的来电对话框的handle, 将其它Move出显示区域,并对它进行SetWindowLong.
4. IncomingCallWndProc 处理. SHBM_SHOW(用Remote SPY 可以看得到)这个就是来电BubbleBox, Show/Hide时的消息
上面第3步和第4步是之前自己跟出来, 但这样做会有问题. 就是设置PIN码锁之后, 无法显示来电对话框.
还是因为文档没查仔细的原因, 其实MSFT里文档已经有custom来电的处理方法了. 这样上面的第3,第4步就可以合为以下:
New 3. 通过Phone Canvas Messages来处理
Shell OS Design Development > Phone Canvas Customization > Phone Canvas Reference >
不过调用自己的来电时, CreateWindow的话要注意
如果Window已经Create过了,就要SetWindowPos一下
好了, 这样当锁住的时候, 来电同样也可以弹出来了 :-<
OK, 这样当来电的时候就显示自定义的窗口了...
关于来电防火墙的处理嘛,就应该更简单了:-<
关于来电话定义的东西比较多, 这里我先写点对来电对话框自定义显示的小结, 等有时间再写其它的.
发表于 @ 2009年12月31日 09:43:00 | 评论( 5 ) | 举报| 收藏
旧一篇:How sign the code by own certificate and install the certificate on device. | 新一篇:Override VK_TTALK & VK_TEND
- 查看最新精华文章 请访问博客首页相关文章
- 匿名用户 发表于2010年2月3日 12:00:42 IP:举报回复删除
- hi 我现在正遇到一些lock状态的问题,怎么把创建好的window显示在最前面,看了你的文章,调用了SetWindowPos 但是没有效果,而setwindowlong是可以实现,但是menubar却没有反映,menubar 也 使用setwindowlong修改了WS_EX_ABOVESTARTUP 类型,menubar在左右物理按键是有响应的,触摸屏没有响应,不知道你有没有这方面的经验能解决该问题,非常感谢!
- ice520301 发表于2010年2月5日 15:13:54 IP:举报回复删除
- 我在6.5上新建了一个新的工程试过了,只要在窗口Create的时候用 CreateWindowEx(WS_EX_ABOVESTARTUP | WS_EX_TOPMOST 显示出来的时候用 SetWindowPos(m_hWnd, HWND_TOPMOST, 0, g_MainWnd.m_nTaskBarHeight, nCxScreen, nCyScreen-2*g_MainWnd.m_nTaskBarHeight, SWP_STARTUP | SWP_NOMOVE | SWP_NOSIZE | SWP_NOACTIVATE | SWP_SHOWWINDOW); 这样即使是Locked也能弹出这个窗口的, 你是什么情况啊?
- 匿名用户 发表于2010年3月1日 21:38:11 IP:举报回复删除
- Hi! Could you, pliz, email me "phcanvas.h" file? I need it very-very much. Email: Adam.Jones.J@gmail.com (Adam.Jones.J at gmail.com) Wolud be great appreciated! Thanks a lot. Alexander.
- ice520301 发表于2010年3月3日 16:14:27 IP:举报回复删除
- Had sent the phcanvas.h to you, please check it.
- 匿名用户 发表于2010年3月8日 11:40:42 IP:举报回复删除
- Hi! 能否也给我发一下"phcanvas.h"和那个oak的例程,非常感谢!我的邮箱是mingzon@gmail.com
- Windows Mobile Incoming Call View Custom
- Windows Mobile Incoming Call View Custom
- Windows Mobile Incoming Call View Custom
- MTK UCM incoming call
- MTK UCM incoming call
- Trick:Incoming call notification(Symbian)
- OPAL学习笔记 - Incoming Call
- Creating Custom DirectShow SampleGrabber Filter for Windows Mobile
- [JavaME]解决来电问题(Incoming Call)
- [JavaME]解决来电问题(Incoming Call)
- [JavaME]解决来电问题(Incoming Call)
- custom view
- Custom View
- 一个incoming call的流程 (来电话代码流程)
- Azure Mobile App - Custom Authentication
- Creating a Custom View
- ActionBar - Custom view
- 2501-View-custom
- 程序员的必杀技——编程全能词典
- 红皮书c#高级编程(第6版)_第3章_对象和类型_部分类
- 新浪博客
- PROC系列之---关于CPU
- April 1st Tuesday 2010
- Windows Mobile Incoming Call View Custom
- Oracle学习笔记(01):Windows下常见Oracle服务介绍
- oracle--sql汇总
- makefile教程
- linux 修改环境变量
- 理解矩阵
- 惊艳的“学长帮我修电脑” VS “我想作你的下一行code”
- MyEclipse javaw.exe 占用内存资源过大的主要原因
- smarty truncate 载取中文乱码的解决方案