Как получить скрытые окна дескриптор окон, которые показывают скрытые значки в системном трее

Я пытаюсь написать приложение на C #, которое ловит дескриптор скрытых окон, которые появляются при нажатии кнопки («Показать скрытые значки»).

Когда мы не показываем всю область уведомлений, у нас есть скрытые значки на панели задач.

Когда мы нажимаем кнопку («Показать скрытые значки»), которая показывает их, у нас появляется новое окно, в котором находятся все значки:
введите описание изображения здесь
Скрытые окна отмечены зеленым кружком

Как я могу поймать ручку этого скрытого окна?

Когда я использовал Spy ++, я не мог найти это окно, потому что окна исчезают, когда я нажимаю любую другую клавишу на клавиатуре.

Итак, я нашел маркер кнопки и использовал опцию регистрации:
введите описание изображения здесь

В результатах регистрации я видел только дескрипторы окон обычной панели инструментов в системном трее:
введите описание изображения здесь

Так, как я могу поймать ручку скрытого окна (то, которое я пометил зеленым в начале моего вопроса, первая картинка).

Рекомендации (ссылки, которые я нашел, но не помогли мне):
Как получить свойства значков уведомлений с помощью Microsoft Spy ++
Получить информацию о скрытых иконках в трее в windows7

1

Решение

Я преуспеваю !

Мне удалось поймать его с помощью 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;
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]