前两天有朋友找我,让帮忙写个小工具,隐藏windows的托盘图标,想想最近在家也不想做太复杂的事,也好几年没写过windows上的小工具了,就答应了。想来挺简单的事,没想到还是有点小插曲的。特地来博客园上记录一下,方便自己也方便大家。

  隐藏托盘图标主要有如下5个步骤:

  1.获取ToolbarWindow32窗口对象句柄,因为图标都在这里面。(有两个,用spy++找了好久才找全)

  2.注入ToolbarWindow32进程,发送TB_BUTTONCOUNT/TB_GETBUTTON消息。

  3.读取TBBUTTON和TRAYDATA结构体数据。(64位和32位差异比较大,网上基本上都是32位的,查看了msdn才搞清楚TBBUTTON的结构体,TRAYDATA的结构体基本上就靠查资料和结合数据猜)

  4.设置NOTIFYICONDATA结构体。

  5.完工。

网友评论