鱼C论坛

 找回密码
 立即注册
查看: 2774|回复: 3

[技术交流] “疯狂刷新”的托盘图标都隐藏的功能

[复制链接]
发表于 2012-8-21 00:32:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  突然想到又添加一个把“疯狂刷新”的托盘图标都隐藏的功能。于是百度了半天才弄到一个还可以的实现功能。

                               
登录/注册后可看大图


(添加uses CommCtrl;)
[url=]procedure[/url] HideAllTrace;
[url=]var[/url] TBHWND: [url=]HWND[/url];
i, count: [url=]Integer[/url];
PID, PRC: THandle;
Buff: [url=]PChar[/url];
Info: _TBBUTTON;
R: [url=]Cardinal[/url];
S: [url=]array[/url][0..1024] [url=]of[/url] [url=]char[/url];
[url=]begin[/url]
TBHWND := GetSysTrayWnd;
[url=]if[/url] TBHWND = 0 [url=]then[/url] exit;

[url=]GetWindowThreadProcessId[/url](TBHWND, @PID);
PRC := [url=]OpenProcess[/url](PROCESS_VM_OPERATION [url=]or[/url] PROCESS_VM_READ [url=]or[/url] PROCESS_VM_WRITE, [url=]False[/url], PID);
Buff := [url=]VirtualAllocEx[/url](PRC, [url=]nil[/url], 4096, MEM_RESERVE [url=]or[/url] MEM_COMMIT, PAGE_READWRITE);
count := [url=]SendMessage[/url](TBHWND, TB_BUTTONCOUNT, 0, 0); [url=]//托盘中button的个数,不一定是图标的个数,有些button是隐藏的。[/url]
[url=]for[/url] i := 0 [url=]to[/url] count - 1 [url=]do[/url]
[url=]begin[/url]
FillChar(Info, [url=]SizeOf[/url](Info), 0);
[url=]WriteProcessMemory[/url](PRC, Buff, @Info, [url=]SizeOf[/url](Info), R); [url=]//消息使用的内存空间必须在Shell之内,所以利用ReadProcessMemoery和WriteProcessMemory。[/url]
[url=]SendMessage[/url](TBHWND, TB_GETBUTTON, i, [url=]Integer[/url](Buff));
[url=]ReadProcessMemory[/url](PRC, Buff, @Info, [url=]SizeOf[/url](Info), R);

[url=]SendMessage[/url](TBHWND, TB_GETBUTTONTEXT, Info.idCommand, [url=]Integer[/url]([url=]Integer[/url](@Buff[0]) + [url=]SizeOf[/url](Info)));
[url=]ReadProcessMemory[/url](PRC, Pointer([url=]Integer[/url](@Buff[0]) + [url=]SizeOf[/url](Info)), @S[0], [url=]SizeOf[/url](S), R);
[url=]if[/url] pos([url=]'疯狂刷新'[/url], StrPas(S)) > 0 [url=]then[/url] [url=]//如果button的TEXT中包含'疯狂刷新'[/url]
[url=]SendMessage[/url](TBHWND, TB_DELETEBUTTON, i, 0); [url=]//删除[/url]
[url=]end[/url];
[url=]VirtualFreeEx[/url](PRC, Buff, 0, MEM_RELEASE);
[url=]CloseHandle[/url](PRC);
[url=]end[/url];


转帖自:http://www.delphitop.com/html/chengxu/1589.html

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-8-21 01:14:00 | 显示全部楼层
本帖最后由 向往 于 2012-8-21 01:27 编辑


呃.....不好意思......请问.....   疯狂刷新  是什么??


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-8-21 01:38:55 | 显示全部楼层
向往 发表于 2012-8-21 01:14
呃.....不好意思......请问.....   疯狂刷新  是什么??

他后面的一段话就是答案,托盘图标都隐藏的功能,托盘上的图标没了,就像是在不断地刷新。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2015-2-1 16:38:50 | 显示全部楼层
支持楼主发扬Delphi
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 04:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表