VC 如何获得鼠标指向任务栏系统时间的消息

来源:百度知道 编辑:UC知道 时间:2024/06/23 12:16:47
说白了就是我想写个程序让鼠标指向系统时间时出现的是我的小对话框,上面有阳历和阴历,呵呵,目前就是不知如何捕获这个消息,望高人指点

我能想到的有两个。但没一个感觉特别好,随便聊聊吧。
1)修改时钟窗口的窗口函数,捕获鼠标移动事件后弹出自定义日历对话框。
先利用远程代码注入技术,把自己事先写好的窗口函数植入时钟窗口所在的进程内。然后修改时钟窗口函数。
使时钟窗口执行自己的窗口函数。这里会有两个比较麻烦的问题,1:远程线程注入被当做恶意代码,会弹杀毒窗口,2:修改系统的窗口可能还好说,只要自己谨慎些,但如果要修改商业软件的窗口函数多半会失败,什么原因大家都猜得到。有点特别要提醒的是:用SetWindowLongPtr修改时,一定要首先对窗口函数地址的进程虚拟地址空间进行属性改写,使其成为可写的地址,否则调用SetWindowLongPtr可能会失败,并导致被注入的进程强制终止,这个后果非常严重。呵呵,本人曾经为此困惑过!

2)确定时钟窗口所在位置(不一定在右下角),下钩子实时捕获鼠标,判断鼠标在时钟窗口的上面就弹窗。这种方法不好是因为,就为了弹个窗就随意下钩子,太浪费了。而且钩子用惯了,就会太依赖,不利于提高编程技术。如果是商业软件的用户,也不会买账,有谁会愿意自己的系统被弄得到处是钩子?

我也得学学

做个标记 和以前写的程序类似 翻翻看去~