2010-05-05 21 views
2

J'utilise l'API Windows (SetWindowsHookEx) pour capturer des événements de clavier. Je voudrais passer la combinaison Ctrl + Shift + Esc à mon application pour le traitement mais supprimer le Gestionnaire des tâches apparaissant. Malheureusement, il semble que la combinaison de trois touches ne soit jamais aussi loin que ma routine Keyboard Hook; Je n'ai jamais que deux clés.Capture Ctrl + Maj + Echap avant le Gestionnaire des tâches

Je ne veux pas supprimer globalement le Gestionnaire des tâches, juste pour mon application.

Existe-t-il un moyen de le faire?

+0

Utilisez-vous des crochets globaux pour surveiller tous les threads? – Paul

+0

Non seulement le fil de l'application. En fait: hHook1 = SetWindowsHookEx (& H2 &, Adresse de KeyboardProc, 0 &, App.ThreadID) –

+0

Vous pouvez jeter un oeil à ce fil - http://stackoverflow.com/questions/1292165/how-to-trap- le-clavier-strokes-sur-ac-win-formes-application-ctrl-alt-del - et en particulier ce lien de ce fil -http: //tamaspiros.co.uk/2007/12/20/c-disable -ctrl-alt-del-alt-tab-alt-f4-début-menu-et-so-on/ – macbutch

Répondre

0

Juste mes 2 cents, mais je crois que ce n'est pas possible. Ce combo est une sorte de dernier recours, et si les applications pouvaient l'attraper, puis se bloquer ... Je suis très sûr, cet événement n'est pas livré par des moyens normaux. Et même si une application était capable d'attraper ça ... je la désinstallerais immédiatement pour déranger mon expérience de travail.

Catch Ctrl-Alt-Insert, si vous devez fournir des fonctionnalités similaires.

+0

Merci. Mais j'écris un émulateur, donc en ce sens, c'est une application Windows non standard. Dans l'émulateur, Ctrl + Maj permet de faire défiler le défilement et d'appuyer sur Échap. –

+0

VMWare, LogMeIn n'attrape également pas Ctrl-Alt-Suppr (parce qu'ils ne peuvent pas), mais Ctrl-Alt-Insert. Les utilisateurs s'y habituent. – Daniel