消防酒店评估报告:求助,如何删除或转移正在在活动的通知区域的图标而不关闭程序

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 14:31:43
我和同学共同拉了一根网线,电信2兆的,他们经常用BT .eMule下载电影和电视剧,搞得我什么网页也打不开,我劝他们先关一下,可他们却对我的话从来都置之不理,说什么快下完了,快下完了,老让我再等一会儿,就这样天天如此.今天我找了一个源数多得电影,也学他们用了eMule下载,可他们却跑到我电脑前大叫他们得网速慢慢,非得叫我把eMule关了不可,我把通知区域的eMule图标设为总是隐藏,可他们一点鼠标,通知区域的eMule图标就出来了,他们说我什么虚伪自私什么的.我觉得自己真的很委屈的,其实是我先拉的网线,他们只是从我那里又拉的线接到他们电脑上的,平均到每天的宽带费数我的最多,他们已经得了便宜了,可他们背地里却还在不停地埋怨和辱骂,那位电脑高手能帮我出个主意呀让我能删除或转移正在在活动的通知区域的eMule图标而不关闭eMule呀,求求你们了,我也没办法呀,我想只有这样我才能既能下载也不得罪他们呀,他们也太霸道了,其实我们都是大学生了,没想到人居然是这样,我的积分只有24分,悬赏分没24这个数字我只有悬赏20分了,各位高手请帮帮忙,或者给我出个其他可行的主意,我是又急又气,真的没什么办法,还望各位高手能不吝赐教呀,我先谢谢你们了,还望早日能见到高手们的指教!!!

介绍几种比较专业的办法:

一、正统做法

利用windows的消息机制、进程注入来实现图标提示文字的获取,并根据提示文字来删除、隐藏及恢复托盘图标。
局限:因为9x系统不能实现进程注入,所以这种方法只能适用于2000、xp、2003操作系统,只能根据提示文字来删除、隐藏及恢复图标。

二、部件引用法

引用windows的oleacc.dll部件,利用MS Active Accessibility 接口技术来获取图标的提示文字,并根据提示文字来删除、隐藏及恢复托盘图标。
局限:因为没有使用进程注入,所以在me操作系统上也可实现图标的删除、隐藏及恢复。由于98的托盘区不是"ToolbarWindow32"控件,不能使用"ToolbarWindow32"的消息来删除、隐藏图标,所以此种方法仅适用于me,2000,xp,2003。

三、最简单的方法

将第一种方法的代码用C++封装成DLL,供其他语言调用。

四、最无耻的做法

利用API: Shell_NotifyIcon 来暴力删除外进程的托盘图标。适合于所有windows操作系统。
一般程序的托盘图标的uid的固定的,用 Shell_NotifyIcon 删除图标时,只需要提供窗口句柄(hwnd)和uid就可以了,因此我们可以搜索指定进程的所有窗口的句柄,然后然后对每一个窗口句柄来进行 NIM_DELETE 操作。
对特定程序的托盘图标的uid我做了一个专门程序来查找,一般的图标uid是0或1,当然也有一些变态的程序,它的uid特别大(比如腾讯TT的是60001)或者hwnd不是它自己的窗口。

你在那个下载软件里找找 是不是有隐藏托盘图标 选项