Je cherche du code (de préférence C#) qui empêchera la saisie au clavier et à la souris.Comment puis-je bloquer l'entrée du clavier et de la souris en C#?
Répondre
Regardez dans la fonction Win32 BlockInput
Ça a l'air comme un test amusant :)
Puis-je bloquer uniquement certains types d'entrées? Comme seulement le clavier et la souris. – Kishori
expansion sur la réponse de Josh (correct). Voici la signature PInvoke pour cette méthode.
public partial class NativeMethods {
/// Return Type: BOOL->int
///fBlockIt: BOOL->int
[System.Runtime.InteropServices.DllImportAttribute("user32.dll", EntryPoint="BlockInput")]
[return: System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.Bool)]
public static extern bool BlockInput([System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.Bool)] bool fBlockIt) ;
}
public static void BlockInput(TimeSpan span) {
try {
NativeMethods.BlockInput(true);
Thread.Sleep(span);
} finally {
NativeMethods.BlockInput(false);
}
}
EDIT
ajouté du code pour montrer comment bloquer pendant un intervalle
Un grand merci pour cela. Avez-vous un code qui utilise cette signature? Par exemple, bloquer l'entrée, attendre 30 secondes, réactiver l'entrée. Merci –
Jetez un coup d'œil à l'API Managed Windows, il y a peut-être quelque chose qui enveloppe déjà cette fonctionnalité. http://mwinapi.sourceforge.net/ –
@Matt, je prends habituellement la signature de l'assistant PInvoke Interop http://www.codeplex.com/clrinterop – JaredPar
Jetez un oeil à cet article Processing Global Mouse and Keyboard Hooks in C#. Le gars qui a écrit cet article a fait beaucoup de recherches sur le problème.
Peut-être qu'il y a quelque chose que vous pouvez utiliser.
- 1. Test du 'Ctrl' du clavier en C#
- 2. QGraphicsView - comment désactiver le défilement de la souris et du clavier
- 3. Quelqu'un sait-il de l'événement windows pour intercepter l'entrée de la souris et du clavier
- 4. wxPython - Piégeage de la souris et du clavier Événements sans fenêtre Focalisation
- 5. Entrée du clavier C# en cours d'envoi
- 6. Capture des traits du clavier en C#
- 7. Interaction entre le clavier et la souris sous Linux
- 8. suivi de la touche utilisateur/souris. C#
- 9. souris suivie du dessin en C#
- 10. entrée de souris/clavier de redirection
- 11. Comment identifier les touches du clavier en utilisant C#
- 12. Prévention de la sélection du clavier comboBox
- 13. Filtrer l'entrée du clavier dans la zone de texte, C#
- 14. Comment faire pour définir la position du curseur de la souris à un point spécifié sur l'écran en C#?
- 15. Capture de l'événement global du centre du clic de la souris en utilisant C#
- 16. En c, comment bloquer un descripteur de fichier?
- 17. changer la couleur du thème ui et le clic de souris pour passer la souris?
- 18. Existe-t-il des Javascripts prédéfinis pour vérifier l'activité du clavier/de la souris?
- 19. Comment désactiver les événements clavier et souris dans une partie de l'arborescence visuelle sans utiliser IsEnabled?
- 20. Utilisation de Python pour lire l'écran et contrôler le clavier/la souris sous OSX
- 21. Combiner la combinaison du clavier
- 22. C#: image suivre la souris en dehors de l'application
- 23. Modification de la langue d'entrée du clavier en Java
- 24. SVG emplacement du pointeur de la souris
- 25. Flèches du clavier vers le haut et vers le bas
- 26. C# bouger la souris de façon réaliste
- 27. Comment envoyer des commandes de clavier et de souris au système d'exploitation sous-jacent en utilisant Ruby?
- 28. Événements de clavier C++ Win32
- 29. Comment obtenir la position actuelle de la souris en C++/OpenGL?
- 30. Saisir le mouvement de la souris
Pouvez-vous donner un peu plus de contexte quant à la raison pour laquelle vous voulez faire cela? – JaredPar
Voulez-vous dire uniquement dans votre application ou globalement à travers le système? –
Et à quoi? après tout, vous pourriez faire référence à une zone de texte, qui définirait la propriété readonly le ferait. –