Для этого требуется перехват, установленный SetWindowsHookEx, WH_SHELL.Обратный вызов получает уведомления, такие как HSHELL_WINDOWACTIVATED и HSHELL_WINDOWCREATED, чтобы вы могли знать, что происходит с окнами верхнего уровня.Ознакомьтесь со статьей SDK для " ShellProc " для получения полного списка уведомлений, которые вы можете получить.Почти все они имеют отношение к реализации вашей собственной панели задач.
Это была хорошая новость.Плохая новость в том, что WH_SHELL - глобальный хук.Это требует DLL, которая может быть вставлена в другой процесс.Проблема в том, что вы не можете написать эту DLL в управляемом коде.Внедрение управляемого кода в неуправляемый процесс невозможно.
Вернемся к хорошим новостям. Кто-то решил эту проблему и создал неуправляемую DLL, которая может быть внедрена и может взаимодействовать с управляемым кодом.Проект здесь .Понятия не имею, насколько это хорошо.Я подозреваю, что это не совсем доказательство UAC.