Всем привет
Имеется задача — по Alt-TAB свернуть полноэкранное DirectDraw приложение. Приложение там не совсем простое, при сворачивании приходится тормозить поток, останавливать таймер и т.д. Все это успешно делатется и приложение в итоге мирно сворачивается. Однако был замечен следующий глюк: если нажать Alt-TAB и первым отпустить TAB, то все Ок. Но если первым отпустить Alt — имеем не то чтобы зависание, но в общем картинка приложения остается висеть на экране... ПОЧЕМУ ЭТО МОЖЕТ БЫТЬ??? Т.е. какая вообще разница, что первым отпускать?
Это была первая часть

Вторая начинается с того, что я решил вообще запретить переключение по Alt-TAB, ибо по Ctrl-ESC или кнопке WIN все сворачивается в любом случае. Для этого использовал соответственно:
m_HK = GlobalAddAtom("alttab"); // DWORD m_HK;
RegisterHotKey(GetSafeHwnd(), m_HK, MOD_ALT, VK_TAB);
Однако выяснилось, что этот запрет легко обоходится либо дабл-кликом на табе (!!!) при зажатом альте, либо при использовании правого альта, а не левого. Это все, конечно, очень забавно, но меня до сих пор мучает вопрос — КАК ПОЛНОСТЬЮ ОТКЛЮЧИТЬ ALT-TAB???
Буду очень признателен за любые соображения по поводу двух этих вопросов...