C ++ программа только в системном трее - PullRequest
0 голосов
/ 23 января 2019

После проверки документации Microsoft по иконкам в системном трее (что я смог найти):

Функция Shell_NotifyIconA

NOTIFYICONDATAA структура

Я заметил, что дескриптор окна (HWND) ТРЕБУЕТСЯ. Это очень плохо для того, что я пытаюсь выполнить, так как я пытаюсь создать программу, которая реагирует только на системный трей: она не «минимизирует» окно в трей, она просто использует уведомления (нажав / щелкните правой кнопкой мыши по значку) для взаимодействия.

Как бы я поступил так?

1 Ответ

0 голосов
/ 24 января 2019

Windows 7 SDK содержит пример с именем NotificationIcon .Этот пример содержит строку

ShowWindow(hwnd, nCmdShow);

в своей функции wWinMain.Эффект этого вызова заключается в том, что вы видите окно программы.

Просто измените эту строку на

ShowWindow(hwnd, SW_HIDE);

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

...