Windows 10 - Панель задач - Добавить пункт в контекстное меню для каждой программы - PullRequest
0 голосов
/ 20 марта 2020

Мне нужна запись в контекстном меню для каждой программы на панели задач. Хотите добавить запись, которая немедленно завершает (UNIX / Linux -подобный сигнал SIGKILL) процесс. На этом сайте много вопросов, как это сделать для проводника или рабочего стола. Но возможно ли добавить такую ​​опцию в контекстное меню панели задач?

Illustration

Чтобы прояснить вопрос, согласно моим комментариям:

Текущая проблема:

У меня есть программа (не Firefox), которая случайно вылетает. Программа находится в полноэкранном режиме. Но если я хочу закрыть окно программы с помощью Выйти из окна , это займет много времени, чтобы Windows убило программу. Когда я пытаюсь открыть диспетчер задач, программа сразу же захватывает ввод пользователя, и у меня нет шансов взаимодействовать с диспетчером задач. Поэтому я решил добавить пункт контекстного меню на панель задач, чтобы выйти из задачи программы. Согласно комментарию пользователя, я проверяю опцию «Всегда сверху» в диспетчере задач. Не знал этого. Но я еще не пробовал. Меня также интересуют дальнейшие проекты, если в WINAPI или Windows Registry есть функция для добавления элемента.

Чтобы избежать отключения -волос:

Мне не интересно взламывать Windows или приложение. Решения с внедрением кода для меня табу. Хотите чистого решения, если это возможно. Я хочу улучшить мою Windows версию. Добавление также некоторой дополнительной информации (информации о процессе) в контекстное меню.

На данный момент найдено this (Регистрация обработчиков расширения оболочки) . Кто-нибудь использовал это раньше? Я думаю, это звучит многообещающе.

1 Ответ

1 голос
/ 20 марта 2020

Нет API для расширения этого меню. Приложения могут настраивать верхнюю часть меню с помощью ICustomDestinationList , но нет возможности добавить записи для всех приложений.

Для проекта личного использования вы можете добавить .dll в экземпляр панели задач. Explorer.exe и добавьте свой пункт после выяснения адреса функции, где создается меню. Этот адрес, конечно, может измениться после обновления Windows, поэтому это не очень универсальное c решение. Использование символов c publi может помочь, но вы все равно должны ожидать, что оно будет время от времени ломаться, когда Microsoft изменяет часть кода своей панели задач.

...