多年不提问了,今儿问一个——MSNShell实现原理。

wmouse 2008-04-15 02:57:40
MSNShell插入MSN的原理是什么?
比如安装MSNShell之后,可以取消MSN的广告栏。我自己尝试搜索窗口关闭MSN广告,广告是关闭了,但广告区域没有隐掉,还占着一大块,遂怀疑是生画上去的;后来在网上搜到可以用Resource Hacker修改资源dll中的脚本去掉广告区域,一试果然,MSNShell也是这么做的么?
还有MSNShell增加了一个“最近的联系人”功能,不仅占用了MSN窗口的一部分,还获取到最近的联系人,并实时获取这些联系人的状态(在MSNShell的最近联系人列表中,联系人状态和MSN中的一致,但明显不是照搬图标)。

诸如此类的种种功能,我其实是想问一下它的这些做法,该归到哪些技术门类,有没有专业名词来总结,我好分门别类的查找资料,否则有些茫然。
...全文
256 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
scq2099yt 2008-04-15
  • 打赏
  • 举报
回复
up
jameshooo 2008-04-15
  • 打赏
  • 举报
回复
靠修改DLL资源或者直接控制窗口来做MSNSHELL会累死你。

MSN的主窗口实现了IAccessible接口,你可以得到这个接口,然后用这个接口来导航MSN中的“子窗口”并进行完全地控制,这种导航方式不同于一般的父子窗口导航。
事实上,操作系统的绝大部分窗口都实现了IAccessible接口,这个接口能对窗口提供更多的扩展能力,ms用这个能力提供残疾人的服务,比如语音等等。

15,980

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧