10.1. Ловушки Windows
10.1. Ловушки Windows
Из предыдущих глав вам должен быть понятен или, по крайней мере, известен механизм, который используется Windows для управления окнами приложений, – сообщения. Вероятно, большая мощь этого механизма и в то же время его уязвимость состоят в возможности посылки сообщений любым окнам (окнам одного процесса или окнам других процессов).
В Windows также предусмотрен мощный механизм, позволяющий следить за некоторыми важными событиями в системе и, конечно, производить мониторинг сообщений, получаемых различными окнами. Речь идет об установке так называемых ловушек. Ловушка представляет собой функцию, вызываемую при возникновении определенного события, например перед получением каким-либо окном нового сообщения, при нажатии клавиши, записи события в системный журнал и т. д.: все зависит от того, для каких событий разработчики предусмотрели ловушки. Интересен тот факт, что в Windows предусмотрены даже ловушки для отладки других ловушек.
Мы рассмотрим некоторые наиболее простые виды ловушек, перехватывающих сообщения окон. По глобальности действия рассмотренные нами ловушки являются устанавливаемыми на отдельный поток: при ошибке в функции-ловушке это безопаснее для системы.
Начинается создание ловушки с написания собственно функции-ловушки, имеющей следующий прототип:
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
Возможные ловушки и распространенные ошибки
Возможные ловушки и распространенные ошибки Существует ряд факторов, о которых следует всегда помнить при разработке многопоточных программ. Пренебрежение некоторыми базовыми принципами может привести к появлению серьезных дефектов в программе, и лучше заранее
Запуск сценария с помощью Проводника Windows (Windows Explorer)
Запуск сценария с помощью Проводника Windows (Windows Explorer) Самым простым является запуск сценария в окнах Проводника Windows или на рабочем столе — достаточно просто выполнить двойной щелчок мышью на имени файла со сценарием или на его значке (рис. 1.6). Рис. 1.6. Запуск сценария с
Добавляем Windows Media Center в меню автозапуска в Windows 7
Добавляем Windows Media Center в меню автозапуска в Windows 7 В Windows 7 меню автозапуска не предоставляет возможности воспроизведения мультимедиа в Windows Media Center. Вы не найдете такого пункта и в настройках параметров автозапуска в панели
1.17. Чем отличаются Windows XP Professional и Windows XP Home?
1.17. Чем отличаются Windows XP Professional и Windows XP Home? Обе эти системы имеют очень много общего, и XP Pro и XP Home построены на одном и том же ядре, NT 5.1. Разница между ними заключается только в том, что XP Home не поддерживает несколько функций, работающих в XP Pro. В XP Home не поддерживаются
5.6 Служба теневого копирования томов в Windows ХР и Windows Server 2003
5.6 Служба теневого копирования томов в Windows ХР и Windows Server 2003 В Windows ХР и Windows Server 2003 компания Microsoft реализовала службу теневого копирования. Таким образом, предоставляется инфраструктура, позволяющая создавать целостные копии дисковых томов в заранее определенный момент
1.1. Гонки на выживание: Windows ХР, Windows Vista и Windows 7
1.1. Гонки на выживание: Windows ХР, Windows Vista и Windows 7 Время не стоит на месте, и уж тем более на месте не стоят новые технологии. Появление многоядерных процессоров, мощных видеокарт и других новых устройств, которые не могут полностью раскрыть свой потенциал в существующих
Быстрое завершение работы Windows (Windows NT/2000/XP)
Быстрое завершение работы Windows (Windows NT/2000/XP) Windows NT версии 3.1 и 3.5 позволяла закрыть все процессы за 20 секунд. В Windows NT 3.51 и выше существует возможность определять величину интервала, в течение которого система должна завершить свою работу. Для этого необходимо исправить ключ
Общие ловушки
Общие ловушки Прежде чем писать ядерные модули, надо учесть несколько важных моментов.1. Использование стандартных библиотек. Вы не можете делать этого. В модуле, Вы можете использовать только функции, которые Вы можете увидеть в /proc/ksyms.2. Запрет прерываний. Если Вы на
Искусство неприятных сюрпризов: Патентные ловушки
Искусство неприятных сюрпризов: Патентные ловушки Автор: Родион Насакин«Патентными троллями» прозвали мелкие компании и частных лиц, которые тем или иным способом получают в собственность (обычно скупают по дешевке) множество патентов, но вместо разработки товаров и
Ein Volk, ein Plattform, ein Windows!, или Когда уничтожат Windows RT? Евгений Золотов
Ein Volk, ein Plattform, ein Windows!, или Когда уничтожат Windows RT? Евгений Золотов Опубликовано 04 декабря 2013 В лагере MS Windows зреют большие перемены: не все варианты самой популярной ОС чувствуют себя одинаково хорошо. Windows Phone набирает пользовательскую массу
6.5. Общие команды меню Windows-программ. Буфер обмена Windows
6.5. Общие команды меню Windows-программ. Буфер обмена Windows Практически все Windows-программы имеют главное меню, которое расположено сразу под заголовком окна. В большинстве случаев некоторые команды главного меню совпадают. Например, многие Windows-программы имеют меню Файл,
О чем нужно позаботиться перед установкой Windows XP в режиме Windows
О чем нужно позаботиться перед установкой Windows XP в режиме Windows Итак, на вашем жестком диске уже установлена одна из версий операционной системы Windows и вы хотите инсталлировать Windows XP. С чего начать? Прежде всего – вспомнить (выяснить), какая важная информация содержится на
5.4.2. Настройка локальной сети в Windows Vista и Windows 7
5.4.2. Настройка локальной сети в Windows Vista и Windows 7 В Windows Vista и Windows 7 настройки, в целом, схожи с Windows XP, однако при щелчке правой кнопкой мыши на значке Сеть и выборе в меню пункта Свойства, открывается окно Центр управления сетями и общим доступом (рис. 5.22) — его также можно
7.2.2. Настройка почтового ящика в программе Почта Windows (Windows Vista)
7.2.2. Настройка почтового ящика в программе Почта Windows (Windows Vista) В программе Почта Windows почтовый ящик настраивается аналогичным образом. Откройте меню опций Сервис и выберите пункт Учетные записи. В открывшемся окне (рис. 7.9) нажмите кнопку Добавить. В открывшемся окне
7.2.3. Настройка почтового ящика в программе Почта Windows Live (Windows 7)
7.2.3. Настройка почтового ящика в программе Почта Windows Live (Windows 7) Чтобы добавить учетную запись почты Windows Live, щелкните на ссылке Добавить учетную запись в рабочем окне программы (см. рис. 7.3). В открывшемся окне (рис. 7.10) введите адрес электронной почты, пароль и отображаемое