Interception des touches systèmes

 

 

Evidemment, les messages commençant par WM_SYS… sont en principe plus important pour le système que pour vous. Les messages WM_SYSKEYDOWN, WM_SYSKEYDOWN ou WM_SYSCHAR proviennent généralement de la combinaison d'une touche avec la touche ALT et sont généralement transférés à la procédure DefWindowProc pour traitement par défaut. Mais on peut fort bien imaginer les traiter voir les désactiver :

Voici un exemple:
Case WM_SYSKEYDOWN :
Case WM_SYSKEYUP :
Case WM_SYSCHAR :
Return 0;

Cependant, ce code est quand même un peu violent !

 

Plutôt orienté pour les jeux (et donc avec DIRECT X):

La touche ALT-ENTRER est généralement utilisée pour passer d'un mode plein écran (et l'équivalent DirectX) à un mode fenêtré et vice versa. Dans ce cas, il suffira d'ajouter à la procédure de la fenêtre un code de ce type:



De même, il peut être intéressant de traiter la touche ALT-TAB ou clique sur une autre appli. En effet, rien de plus énervant qu'un jeu qui continu de tourner alors que vous n'êtes plus dessus !

Dans ce cas, on pourra intercepter le message WM_ACTIVATEAPP ou encore WM_KILLFOCUS.