Блокирование Alt+Tab

В принципе это сделать довольно легко, т.к. Windows уже имеет средства для такого рода занятий. Эти средстава позволяют зарезервировать в системе определенные комбинации клавиш. Для нашей цели вполне хватит вот такого кода:

RegisterHotKey(GetSafeHwnd(), m_nID, MOD_ALT, VK_TAB); // забрали Alt+Tab

При этом m_nID это должно быть уникальное целое число в пределах 0x0000 - 0xBFFF. Уникальность обязательна для того чтобы операционная система не конфликтовала если вы назначите с таким же ID еще одну комбинацию.

После того, как эта комбинация вам стала не нужна, ее нужно освободить:

UnregisterHotKey(GetSafeHwnd(), m_nID);


Этого в принципе и достаточно, вы зарегистрировали  HotKey в системе, а обработчика ему не дали и, следовательно, никакого действия производится не будет.

 
« Предыдущая статья