我正在尝试用C#编写应用程序来捕获按下按钮时出现的隐藏窗口的句柄(“显示隐藏的图标”)。
当我们没有显示所有通知区域时,我们隐藏了系统托盘图标。
当我们按下显示它们的按钮(“显示隐藏的图标”)时,我们有一个新窗口,其中包含所有图标:
隐藏的窗口标有绿色圆圈
如何抓住这个隐藏窗口的句柄?
当我使用Spy ++时,我找不到这个窗口,因为当我点击键盘上的任何其他键时,窗口会消失。
那么我怎样才能抓住隐藏窗口的句柄(我在问题的乞讨中标记为绿色的窗口,首先是图片)。
参考文献(我发现但没有帮助我的链接):
How to capture Notification icons properties using Microsoft Spy++
Get information about hidden tray icons in windows7
答案 0 :(得分:0)
我成功了!
我成功地用Spy ++抓住了它:
代码解决方案:
static IntPtr GetHiddenSystemTrayHandle()
{
IntPtr hWndTray = User32.FindWindow("NotifyIconOverflowWindow", null);
if (hWndTray != IntPtr.Zero)
{
if (hWndTray != IntPtr.Zero)
{
// Windows caption "Overflow Notification Area"
hWndTray = User32.FindWindowEx(hWndTray, IntPtr.Zero, "ToolbarWindow32", null);
return hWndTray;
}
}
return IntPtr.Zero;
}