[R] Détecter la présence d'un clavier sous Windows 8

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
Niverton
Niveau 2
Niveau 2
Messages : 21
Enregistré le : dim. 09 janv. 2011 14:05
Status : Hors ligne

[R] Détecter la présence d'un clavier sous Windows 8

#1

Message par Niverton »

Bonjour,
J'ai récemment acheté une tablette Windows 8 avec un dock clavier (et j'en suis très content !). Le truc c'est que le clavier virtuel de Windows est toujours activé, même quand la tablette est dockée, du coup le clavier virtuel s'interpose à chaque fois que je clique sur un champ, et il occupe la moitié de l'écran. J'ai trouvé comment le désactiver, mais c'est fastidieux et comme je suis un gros flemmard et que j'aime bien bricoler, j'aimerais qu'AutoIt le fasse pour moi ! J'ai donc cherché un moyen de détecter la présence du dock.
Comme Microsoft pense à tout c'est possible de savoir si un clavier physique est présent via la bibliothèque .Net, l'inconvénient c'est que le je ne parle pas le C#, et qu'AutoIt me semble plus indiqué pour désactiver le clavier virtuel (contrôle de la souris). Après recherche je n'ai pas trouvé de moyen "d'intégrer" .Net à Autoit (mais l'inverse est apparemment possible).
Merci d'avance !
Modifié en dernier par Niverton le mar. 09 déc. 2014 08:52, modifié 1 fois.
Utilisateur 3309 supprimé
Status : Hors ligne

Re: [..] Détecter la présence d'un clavier sous Windows 8

#2

Message par Utilisateur 3309 supprimé »

Bonjour, j'ai une tablette (sous android) avec un dock clavier, le système ne m'affiche jamais de clavier virtuel lorsque la tablette est sur le dock...ma tablette a 3 ans, ca me semble un peu incroyable que Windows 8, bien plus récent, ne sache pas nativement gérer la présence/absence du clavier...
Utilisateur 3309 supprimé
Status : Hors ligne

Re: [..] Détecter la présence d'un clavier sous Windows 8

#3

Message par Utilisateur 3309 supprimé »

j'ai trouvé ceci :

Just go to the start screen, and then to Control Panel. In the search box for Control Panel, type Administrative Tools, or click it if you see it already. Scroll down to the Services shortcut and select that.

If you scroll down in the list of services to the 'T' area, you should see Touch Keyboard and Handwriting Service, or words to that effect. It is running, and on Automatic start type.

Stop the service, then go into Properties and switch the startup type to Disabled.


Donc il faudrait arrêter le service ou le démarrer suivant les besoins.

Code : Tout sélectionner

net stop TabletInputService <-- pour démarrer le service en question
net start TabletInputService <-- pour l'arrêter
2 fichiers .bat à faire, un pour lancer et un pour arrêter.
Avatar du membre
Niverton
Niveau 2
Niveau 2
Messages : 21
Enregistré le : dim. 09 janv. 2011 14:05
Status : Hors ligne

Re: [..] Détecter la présence d'un clavier sous Windows 8

#4

Message par Niverton »

Woah super, merci ! Je n'avais pas trouvé comment faire via une ligne de commande, ça va me simplifier la tache :)
Cependant ça ne permet pas d'automatiser entièrement la tâche, enfin si je ne trouve pas de solution, une icône dans la barre des taches qui toggle le clavier virtuel sur simple clique devrait suffire.

Il est vrai qu'on pourrait espérer que W8 gère ça tout seul, mais c'est un détail mineur, et une tablette convertible mini pc portable c'est super pour les loisirs et les cours
Y01
Niveau 5
Niveau 5
Messages : 160
Enregistré le : lun. 17 nov. 2014 10:46
Status : Hors ligne

Re: [..] Détecter la présence d'un clavier sous Windows 8

#5

Message par Y01 »

Je pense que ce que tu cherche à faire ne se trouve pas si loin que ça de ce sujet.

Ton dock clavier étant un périphérique que tu branche :)

AutoIt permet aussi de démarrer et arrêter un service, tu peux donc tout avoir d'un coup et sans batch.
Y01
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2127
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Détecter la présence d'un clavier sous Windows 8

#6

Message par TommyDDR »

Cela devrait vous indiquer si un clavier est branché ou non.
► Afficher le textecode
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
Niverton
Niveau 2
Niveau 2
Messages : 21
Enregistré le : dim. 09 janv. 2011 14:05
Status : Hors ligne

Re: [..] Détecter la présence d'un clavier sous Windows 8

#7

Message par Niverton »

J'ai fait des recherches sur WMI, mais je ne sais pas trop quoi chercher, ça rend les choses difficiles :/
TommyDDR a écrit :Cela devrait vous indiquer si un clavier est branché ou non.
► Afficher le textecode
Merci de votre aide, cependant cette fonction retourne True sur la tablette, clavier présent ou non
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Détecter la présence d'un clavier sous Windows 8

#8

Message par jguinch »

J'ai pas de quoi tester, mais tu devrais pouvoir t'en sortir avec WM_SETTINGCHANGE, pour lequel lParam peut recevoir les messages ConvertibleSlateMode et SystemDockMode.

Sinon, pour WMI, tu pourrais essayer de compter le nombre de claviers :
► Afficher le texte
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Avatar du membre
Niverton
Niveau 2
Niveau 2
Messages : 21
Enregistré le : dim. 09 janv. 2011 14:05
Status : Hors ligne

Re: [..] Détecter la présence d'un clavier sous Windows 8

#9

Message par Niverton »

jguinch a écrit :Sinon, pour WMI, tu pourrais essayer de compter le nombre de claviers :
► Afficher le texte
Ca marche nickel ! Merci beaucoup, Windows doit compter son clavier virtuel comme un vrai clavier, du coup il compte deux claviers quand la tablette est dock, et un seul sinon. Je me met au boulot pour le script

Merci à tous pour votre aide !
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Détecter la présence d'un clavier sous Windows 8

#10

Message par jguinch »

N'oublie pas de passe le sujet en [R] si c'est OK. :roll:
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Répondre