Как сделать так, чтобы значок появлялся / скрывался в области уведомлений панели задач (может быть также известен как системный трей) с помощью командной строки? Как то, что я могу сделать со следующим пользовательским интерфейсом:
Я думал, это может быть где-то под HKEY_CURRENT_USERSOFTWAREMicrosoftWindowsCurrentVersionExplorer
или где-то еще, но ничего не нашел при мониторинге событий реестра RegSetValue
с Прокмон.
Я стремлюсь скрыть набор иконок в рабочее время, а потом показывать их через командную строку.
2 ответа
Хотя ответ от @harrymc позволит вам добавлять и удалять программы в фактическая панель задачв контексте этого вопроса (как показано на скриншоте) слово «панель задач» фактически относится к «области уведомлений» Windows (ранее формально, а теперь неофициально, известной как «панель задач» или «панель задач»).
И, к сожалению, как сказано здесь:
Были изменения в область уведомлений, которая дает пользователю гораздо больше контроля над тем, какие значки появляются на панель задач. Все уведомления иконки теперь по умолчанию скрыты, и эта видимость не может управляться программно.
(курсив мой)
Я нашел эту информацию на этот поток MSDN, что является тем же самым вопросом, который задает OP.
Теперь, поскольку вопрос не указывает на это явным образом и ради завершения: если вопрос касается управления значком, добавленным той же программой, которая предназначена для управления им, то документация здесь.
И последнее: если вы не против нестандартного мышления (и, следовательно, взлома), вы можете обойти это ограничение, используя любой из этих методов:
- Перехватить в
dwMessage
к Функция Shell_NotifyIconA в программе (ах), иконкой которой вы хотите управлять, используя программу, созданную вами (это может потребовать, а может и не потребовать от вас выполнения исходного двоичного файла в качестве дочернего элемента программы, которую вы создали). - Заменять
explorer.exe
вашим собственным двоичным файлом, который воспроизводит его внешний вид и функции. Я знаю, что это звучит безумно, но это решило бы проблему наименее хакерским способом.
Самый надежный метод, который я нашел, — это небольшой инструмент командной строки:
Брать на заметку.
Чтобы использовать его в командной строке для закрепления:
syspin "path/file.exe" c:5386
И открепить:
syspin "path/file.exe" c:5387
Я тестировал программу на Windows 10 20H2, и она отлично работала с указанными выше параметрами. Другие сценарии PowerShell, которые рекомендовали в прошлом, у меня не работали.
Я называю это системным лотком каждый день, но я запутываюсь, когда делаю снимок экрана. Так что я использовал панель задач в вопросе. Спасибо за информацию 🙂 скоро постараюсь проверить
— Уэйн
28 мар в 2:12
@Ramhound действительно шокирует. Я все еще с трудом могу пить чай, не пролив;) В любом случае, я отредактировал свой ответ, чтобы отразить ваше замечание, и если вам понадобятся какие-либо доказательства того, что окна действительно иметь что-то формально называемое «системный трей» или «системный трей», пожалуйста прочитайте это. Однако я не смог найти никакого «официального» упоминания указанной «панели действий» за пределами
Android.app
пространство имен… Но если знаешь где, буду рад узнать. Ваше здоровье.— 7heo.tk
28 марта в 15:35
Извините, центр действий, автокоррекция
— Рамхаунд
28 марта в 16:21