2009-08-26 5 views
0

ce que je veux faire est d'avoir une application d'arrière-plan qui par elle-même ou ses modules s'exécutent seulement quand une certaine touche est pressée. Comme quand j'appuie sur F10 du code que j'ai écrit s'exécute et puis arrête ou se met en veille puis de nouveau quand j'appuie sur F10 je réexécute et se met en veille mais entre les frappes il ne prend aucun temps de processeur. Comment puis-je le faireKeyBoard Stroke Events

Par exemple, un thread qui exécute ses déclarations et

thread.Sleep("till i press F10"); 

bien c'est une fonction imaginaire. Toute aide du monde réel :)

C# + Winforms

Répondre

1

Vous pouvez jeter un coup d'oeil ici: http://www.codeproject.com/KB/cs/CSLLKeyboardHook.aspx

+0

oui un morceau de code, mais ne pas efface la concepts avec lui mais bon merci quand même :) – Moon

+0

Était-ce une question de filetage, une question d'événement de clavier, ou les deux? –

0

est probablement Simplest SetWindowsHookEx avec le type de crochet WH_KEYBOARD ou WH_KEYBOARD_LL. L'appeler à partir de C# peut être un peu désagréable, mais c'est possible.

0

pourquoi ne pas vous essayez console.ReadKey qui va lire la clé et effectuer immédiatement une opération n dès que la tâche se termine u appeler Thread.sleep()

Questions connexes