Quels types d'applications Windows peuvent recevoir des événements système? Je veux dire des événements comme fermée par l'utilisateur. Les formulaires Windows, les applications WPF et les services Windows peuvent le faire. Mais je ne suis au courant d'aucun autre.Quels types d'applications Windows peuvent recevoir des événements système?
Répondre
Les applications graphiques basées sur Windows Forms et WPF écoutent nativement certains événements Windows API. Ligne de commande et d'autres types peut s'abonner à ces événements, mais vous devez écrire ce code.
MISE À JOUR:
Voici un article sur la réception des événements de l'API Win32 à partir d'une application gérée:
http://www.codeproject.com/KB/cs/interopevents.aspx
Notez que l'application doit être en cours d'exécution pour recevoir les événements, donc si vous voulez Pour ce faire, à partir d'une application de console, votre application devrait démarrer et rester en fonctionnement jusqu'à ce qu'un signal externe provoque sa fermeture.
Voulez-vous s'il vous plaît me guider vers un tutoriel ou quelque chose sur la façon dont cela peut-il être fait avec les applications de la console? Merci beaucoup! –
+1 pour avoir fait les recherches de l'OP pour lui. –
@Wonko_the_Sane Alors, quel genre de questions je devrais demander ici? Vous êtes si sûr de juger les gens comme vous le faites! Vous êtes un grand développeur! Félicitation! –
Obtenir des événements comme celui-ci nécessite une fenêtre et une boucle de message. La fenêtre est prise en charge par SystemEvents, la boucle de message est automatiquement présente dans une application WPF ou winforms.
Il est assez intelligent de créer un thread dédié si vous l'utilisez dans un autre type d'application, comme un service ou une application en mode console. Vous verrez ce thread dans le débogueur (Debug + Windows + Threads) avec le nom ".NET SystemEvents". Cela se produit lorsque votre application est exécutée sur un poste de travail Windows non interactif (comme les services) ou lorsque votre méthode Main n'a pas l'attribut [STAThread] (comme les applications de la console).
Rien de spécial n'est nécessaire dans votre code pour vous abonner à l'événement. Mais prenez garde que votre gestionnaire d'événements fonctionnera sur ce thread d'assistance, la synchronisation avec le mot-clé lock pourrait être nécessaire.
- 1. Quels types d'exécutables peuvent être décompilés?
- 2. Quels types d'applications peuvent utiliser WebParts?
- 3. Comment générer des événements système sur Windows?
- 4. Recevoir des événements clavier iPhone
- 5. Quels types de retour peuvent être sérialisés par JQuery AJAX?
- 6. Quels types de vidéos peuvent être lus par MediaElement?
- 7. Quels événements javascript peuvent déclencher un popup sans être bloqués?
- 8. Bloc PictureBox pour recevoir des événements C#
- 9. Application Adobe AIR pour recevoir des événements en arrière à partir d'une application Windows native
- 10. Quels langages de programmation peuvent générer des fichiers .exes autonomes?
- 11. Android MapView arrête de générer (ou de recevoir?) Des événements
- 12. quels événements sont liés?
- 13. Quels types de contrôles sont utilisés dans Windows Security Center?
- 14. Recevoir des appels manqués dans Windows Mobile
- 15. Comment recevoir des commentaires d'un Windows MessageBox?
- 16. Windows Forms journal des événements
- 17. Les événements PhoneStateListener cessent parfois de recevoir
- 18. Comment recevoir des événements clés lors d'un glisser-déposer?
- 19. Comment recevoir des événements drop dans un wxTextCtrl?
- 20. Empêcher la barre d'état de recevoir des événements tactiles
- 21. Recevoir des messages pour les types dérivés dans MVVMLight
- 22. Quels types de messages d'état peuvent être affichés à l'utilisateur lors d'une recherche?
- 23. Quels événements flash peuvent interrompre un événement mouse_up et comment les détecter?
- 24. Quels types d'effets web existent?
- 25. Python - Événements d'arrêt de Windows
- 26. Quels compilateurs peuvent intégrer des appels de fonction indirects?
- 27. Quels outils de suivi des bogues peuvent fonctionner avec Beanstalk?
- 28. Quels jetons peuvent être paramétrés dans AOP préparé des déclarations?
- 29. Quels types d'algorithmes cryptographiques je peux utiliser pour envoyer/recevoir des données vers/depuis un serveur web?
- 30. Quels types de problèmes peuvent survenir lors de l'exécution d'une page JSP?
Quels types d'événements fermés? –
Existe-t-il un type spécifique d'application Windows pour lequel vous essayez de piéger les événements système? –
Je l'ai fait avec une application Windows Form et avec une application WPF. J'ai eu quelques problèmes avec la version de WPF sur Vista et avec la version de Windows Forms sur Win 7; mais c'est une autre histoire. Je voulais juste savoir si c'est possible avec (c.-à-d.) Une application console en C#? Merci –