вторник, 26 октября 2010 г.

Нажатие зарегистрированной горячей клавиши подарит вам "любовь переднего плана"

Это перевод Pressing a registered hotkey gives you the foreground activation love. Автор: Реймонд Чен.

Одной из категорий приложений, на которые люди жаловались, являются запускалки приложений, которые регистрируют горячие клавиши (hotkey) и не получают право на передний план.

Ну, только вот окна с зарегистрированными горячими клавишами получают его.

После того как вы вызовете функцию RegisterHotKey для регистрации горячей клавиши, оконный менеджер будет отправлять вам сообщение WM_HOTKEY каждый раз когда пользователь нажимает эту клавишу - а вместе с этим сообщением вы получите и "любовь переднего плана". Если вы вызовите функцию SetForegroundWindow из вашего обработчика горячей клавиши, то окно переднего плана послушно изменится, согласно вашим командам.

Если бы мы ввели специальный список программ, управляемый только администратором, которым разрешено исключаться из правил для SetForegroundWindow, то мы бы добавили ещё один раунд к игре в стены и лестницы. Что бы случилось: в этот список записывались бы все, кому не лень, делая его бесполезным - и мы вернулись к тому, с чего начали.

"Ох, нет. Я супер-защищу этот ключ реестра, так что единственным способом добавить туда что-то будет способ, требующий разрешения от человека."

Ну, во-первых, это не остановит установщики с администраторскими привилегиями, поскольку они могут просто удалить вашу супер-защиту, изменить ключ и вернуть защиту назад (да, так работают администраторские привилегии). И даже, есть вы как-то сумеете супер-защитить настройку (как? Понятия не имею), то следующим шагом будет: разработчики приложений (или системные администраторы, пытающиеся развернуть приложение в своей компании) будут просить у вас программный способ добавить их программу в ваш супер-защищённый список исключений. И вы снова возвращаетесь к тому, с чего начали.

Комментариев нет:

Отправить комментарий

Можно использовать некоторые HTML-теги, например:

<b>Жирный</b>
<i>Курсив</i>
<a href="http://www.example.com/">Ссылка</a>

Вам необязательно регистрироваться для комментирования - для этого просто выберите из списка "Анонимный" (для анонимного комментария) или "Имя/URL" (для указания вашего имени и ссылки на сайт). Все прочие варианты потребуют от вас входа в вашу учётку.

Пожалуйста, по возможности используйте "Имя/URL" вместо "Анонимный". URL можно просто не указывать.

Ваше сообщение может быть помечено как спам спам-фильтром - не волнуйтесь, оно появится после проверки администратором.

Примечание. Отправлять комментарии могут только участники этого блога.