2009-06-18 6 views
1

Mon problème est très simple, mais la mise en œuvre peut être difficile!Appelez mon application par mot-clé

Je veux que mon application (Windows Application :: Visual C# .net) soit lancée chaque fois que l'utilisateur utilise des combinaisons de touches (sur son clavier).

Par exemple, il types Ctrl +W + W et mon application est lancée, c'est tout, je veux la mise en œuvre plus simple, moins de code, mémoire ...

Merci: D

+0

Voyons voir, le moins de mémoire possible, l'application s'ouvre lorsque l'utilisateur est en train de taper, ce qui peut être un comportement inattendu .. Cela me semble être un logiciel espion. – NotMe

+0

S'il s'agissait d'un logiciel espion, pourquoi spécifierait-il un code de raccourci spécifique? Sûrement il voudrait juste qu'il fonctionne au démarrage? – James

+0

Il pourrait s'agir d'un dictionnaire ou d'un IME, ou d'un gestionnaire de contacts, ou quelque chose comme ça. – ChrisW

Répondre

1

Vous auriez besoin d'écrire une application de type enregistreur de frappe en conjonction avec votre application qui surveille les événements du clavier. Une fois votre raccourci spécifique déclenché, vous pouvez charger votre application. Voir here pour plus d'informations sur la saisie des frappes.

+0

Je suis curieux de connaître la raison pour laquelle quelqu'un m'a voté pour cette réponse, il est Qu'as tu besoin de faire! – James

+0

Je ne suggérais pas réellement la création d'un keylogger .... le mot-clé était "keylogger TYPE application" – James

+0

votre suggestion est intéressante, je +1 il ... il peut être la réponse! –

0

Je ne pense pas que ce soit possible dans la façon dont vous avez formulé cette question. Ce qui est possible, cependant, c'est que votre application s'exécute automatiquement au démarrage sans afficher de formulaire, qu'elle soit connectée à Windows pour surveiller toutes les frappes (je ne sais pas exactement comment faire cette partie) et ensuite afficher un formulaire lorsque le l'utilisateur appuie sur une séquence particulière de touches. Donc, en d'autres termes, votre application devrait fonctionner à partir du démarrage de Windows, mais ne s'afficher que si elle est visible (rendre visible un formulaire) lorsque l'utilisateur clique sur une séquence de touches particulière.

Mise à jour: voici un lien vers un article qui explique comment effectuer une capture de frappe globale à l'aide de C#: http://blogs.msdn.com/toub/archive/2006/05/03/589423.aspx.

+0

Voici la partie la plus difficile de l'histoire, je veux savoir si Windows a un service qui surveille "frappe" parce que l'exécution de mon application à temps plein est un gaspillage de mémoire en particulier les utilisateurs en ont besoin peu de fois! –

+0

Vous pouvez écrire votre propre service Windows pour le faire pour vous. – James

+0

Vous pouvez écrire votre application pour qu'elle n'utilise pas beaucoup de mémoire tant que vous n'avez pas besoin d'afficher un formulaire (mettez tout sauf l'application de base dans une DLL séparée). Windows a déjà une tonne de merde tout le temps. – MusiGenesis

1

Créez un raccourci vers l'application et affectez une combinaison de raccourcis au raccourci. En fonction de l'E/S, toutes les combinaisons de touches ne peuvent pas être affectées à un raccourci, par ex. vous pourrez peut-être assigner Ctrl + Alt + W mais pas Ctrl + W + W.

+0

cette solution! Je me souviens que je l'utilisais pour certaines applications ms-dos; alors que cela fonctionne, il me semble que ce n'est pas robuste et garanti –

1

Sous Windows, vous pouvez créer un raccourci (sur le bureau) vers votre application. Lorsque vous ouvrez les propriétés du raccourci, dans le deuxième onglet (intitulé «Raccourci»), vous pouvez affecter une touche de raccourci. Mais vous pouvez utiliser uniquement Ctrl + Alt + raccourcis clavier.

Questions connexes