Получение списка процессов, чьи иконки находятся в системном трее - C#

Узнай цену своей работы

Формулировка задачи:

Добрый вечер. Ломаю голову уже достаточно долгое время. Возможно ли узнать, какие процессы находятся в системном трее? Нужно узнать, запущен ли процесс по типу Skype и аналогичные ему, которые сворачиваются в трей. Или же, если так сделать нельзя, то можно ли как-то просто отследить переход процесса из интерактивного режима в фоновый (свернули скайп, как пример).

Решение задачи: «Получение списка процессов, чьи иконки находятся в системном трее»

textual
Листинг программы
IntPtr hDesktop = User32.GetDesktopWindow();
IntPtr hTray    = User32.FindWindowEx( hDesktop , 0, "Shell_TrayWnd"   , null );
IntPtr hReBar   = User32.FindWindowEx( hTray    , 0, "ReBarWindow32"   , null );
IntPtr hTask    = User32.FindWindowEx( hReBar   , 0, "MSTaskSwWClass"  , null );
IntPtr hToolbar = User32.FindWindowEx( hTask    , 0, "ToolbarWindow32" , null );

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4 из 5
Похожие ответы