首页
社区
课程
招聘
怎么屏蔽托盘提示??
发表于: 2004-8-18 19:18 5430

怎么屏蔽托盘提示??

2004-8-18 19:18
5430
软件:实达认证2.4版本,基于802.1X,现在许多大学网络都采用这种认证方式.

软件运行后,最小化在托盘区域,当鼠标移动到托盘时,会出现两个提示,一个是"认证成功",另一个提示窗口相当大,里面没有内容,只有当欠费的时候,显示"欠费"字样,而且当鼠示点击其他区域时,第二个提示窗口不消失,隔一段时间后才自动消失,相当烦人!

该软件是用vc6.0编写的,没有壳~~~~

想把软件的托盘第二个提示给去掉,

我的思路是,既然软件是VC编写,应该是调用shell_notifyicon这个api函数来实现托盘提示的.

于是,在装载shell32.dll 之后,bpx shell_notifyicon下断点

F5回程序,鼠标在托盘区移动,出现提示窗口,但没有被SOFTICE拦截下来,

难道是这个函数不对??

还请大侠们提供点思路,怎么下这个断点,或者让我参考哪个文献,我手头有softice ,ollydbg,?有点迷茫!!

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 1
支持
分享
最新回复 (10)
雪    币: 339
活跃值: (1510)
能力值: ( LV13,RANK:970 )
在线值:
发帖
回帖
粉丝
2
shell_notifyicon
这个函数的参数是一个结构体,里面包含了你那个"认证成功"的地址.
2004-8-18 22:08
0
雪    币: 339
活跃值: (1510)
能力值: ( LV13,RANK:970 )
在线值:
发帖
回帖
粉丝
3
shell_notifyicon
这个函数的参数是一个结构体,里面包含了你那个"认证成功"的地址.
把那个地址修改掉就可以了.
我想是这样
2004-8-18 22:09
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
jdg
4
最初由 nbw 发布
shell_notifyicon
这个函数的参数是一个结构体,里面包含了你那个"认证成功"的地址.
把那个地址修改掉就可以了.
我想是这样


VC编的程序,托盘提示一定是用shell_notifyicon吗?我用SOFTICE下断后,怎么拦载不下来呢??

我的两个提示是这样的:
1.鼠标停在托盘程序图标上,弹出提示A
2.鼠标移动时经过程序图标(不一定要停在上面!),就有一个很烦人的提示B!(里面没有内容,窗口很大烦人,所以想去掉这个!)

我的目标是去掉第二个提示,当前问题是下了shell_notifyicon断点,拦截不下来?困惑ing~~~~````
2004-8-18 23:21
0
雪    币: 255
活跃值: (266)
能力值: ( LV12,RANK:220 )
在线值:
发帖
回帖
粉丝
5
:D 你看一下他的输入表看看有没有相关函数
推荐使用:C32Asm
2004-8-19 00:07
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
jdg
6
我想既然鼠标移动经过托盘程序图标的时候弹出提示:

我想用bmsg hwnd wm_mousemove

首先要有句柄

hwnd 8021x;(module)
发现与8021X相关的class有:

1.static
2.comboxbox
3.button
4.#32770(dialog)
5.ime
6.comblbox
7.afx:400000:0(这个应该不是,这是我提示窗口的句柄)!

针对这种弹出提示的过程,大虾指点一下,究竟这个wm_mousemove发给哪个了呢???

晕~~~~~

补充一下刚刚尝试的结果:
:
这几个除了static ,button之外,其余都试过了,都没有把提示窗口拦载下来,

难道消息不是wm_mousemove?????????那会是什么呢??

2004-8-19 10:38
0
雪    币: 186
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
当有鼠标事件的时候,传递给父窗口的是自定义的消息。此时你再拦截Shell_NotifyIcon已经没有用了。。
我想应该在程序启动的时候,也就是在程序创建这个任务栏图标的时候拦截这个API,然后,看这个API的第二个参数使用的结构体的一些内容,修改szTip应该就可以了。。
2004-8-19 13:26
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
jdg
8
最初由 likedust 发布
当有鼠标事件的时候,传递给父窗口的是自定义的消息。此时你再拦截Shell_NotifyIcon已经没有用了。。
我想应该在程序启动的时候,也就是在程序创建这个任务栏图标的时候拦截这个API,然后,看这个API的第二个参数使用的结构体的一些内容,修改szTip应该就可以了。。


我后来也是这么想的,任务栏图标创建前拦截shell_notify,改sztip,但这只能使图标创建的时候不弹出提示,鼠标在程序图标上经过时,还是会有提示的~~~~,这跟shell_notify没关系了吧,我认为~~~~~

所以就没有进行尝试,现在是想把鼠标经过图标时,弹出的提示给屏蔽掉~~~~~
2004-8-19 14:26
0
雪    币: 186
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
最初由 jdg 发布


我后来也是这么想的,任务栏图标创建前拦截shell_notify,改sztip,但这只能使图标创建的时候不弹出提示,鼠标在程序图标上经过时,还是会有提示的~~~~,这跟shell_notify没关系了吧,我认为~~~~~

所以就没有进行尝试,现在是想把鼠标经过图标时,弹出的提示给屏蔽掉~~~~~


不是这么回事,那个szTip,就是鼠标经过的时候的提示,而不是创建时候的,你只要把szTip清空了,鼠标经过的时候就没有提示了。
2004-8-19 14:46
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
jdg
10
好,我试试看~~~~~~~~~``
2004-8-19 15:44
0
雪    币: 205
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
我觉得Softice没能拦截到Shell_NotifyIcon,可能有两个原因:1.在softice的winice.dat里Shell32.dll前面的没分号去掉。2.bpx Shell_NotifyIcon时大小写没注意。
别的就不清楚了。Shell_NotifyIcon这个函数应该肯定会被调用的。
2004-8-19 15:46
0
游客
登录 | 注册 方可回帖
返回