IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

Les touches clavier envoyer a Windows ils sont ou stocké?


Sujet :

Windows

  1. #1
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut Les touches clavier envoyer a Windows ils sont ou stocké?
    Bonjour,

    Les touches clavier envoyer a Windows ils sont ou stocké?

  2. #2
    Expert éminent sénior
    Avatar de JML19
    Homme Profil pro
    Retraité : Electrotechnicien Electronicien Informaticien de la SNCF
    Inscrit en
    Décembre 2010
    Messages
    14 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Retraité : Electrotechnicien Electronicien Informaticien de la SNCF
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2010
    Messages : 14 939
    Points : 23 253
    Points
    23 253
    Billets dans le blog
    10
    Par défaut
    Bonjour

    Les touches clavier ne sont pas stockées c'est une interruption qui arrête l'application pour récupérer les indications du clavier.

    Ensuite l'application elle même peut utiliser la RAM pour faire un tampon clavier mais c'est à l'application de gérer ce tampon.

    Voici une partie d'un programme assembleur 8086 qui récupère une touche du clavier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    ;------------------------- entrée des données du fichier -----------------------
    
    entreF: mov ch,[id10]          ;récupère la position du pointeur d'écriture
    
    entreC: mov ah,0
            int 16h                ;entrée d'un caractère au clavier
            mov [bx],al            ;place le code ascii du caractère dans id1
    
            cmp ah,3fh             ;compare le scan code avec la touche [F5]
            jnz suite2             ;si vrai fin
            jmp fermeF
    
    suite2: cmp ah,01h             ;compare le scan code avec la touche [ESC]
            jnz suite3             ;si vrai entrée d'un caractére
            jmp entreF
    
    suite3: cmp ah,1ch             ;compare le scan code de la touche avec [enter]
            jnz suite4             ;si comparaison vraie crée le fichier
            jmp creeF
    
    suite4: cmp ah,0eh             ;compare le scan code avec [back space]
            jnz suite5a            ;si comparaison vraie efface le caractére
            jmp effC
    
    suite5a:cmp ah,0fh             ;compare le scan code avec la touche TAB
            jnz suite5             ;si comparaison vraie entrée d'un caractère
            jmp entreF
    
    suite5: cmp ch,41              ;compare le nombre de caractères entré
            jnz suite6             ;si vrai attente de la touche [enter]
            jmp entreC
    
    suite6: mov [id5],bx           ;sauve bx à l'adresse id5
            add bx,+1              ;additionne bx avec +1
    
            mov dl,al
            mov ah,02h             ;affiche le caractère entré au clavier
            int 21h
    
            add ch,+1              ;additionne ch (nombre de caractères entré + 1)
    
            mov [id10],ch          ;sauve la position du pointeur d'écriture
    
            mov ah,01h
            mov ch,6
            mov cl,7               ;modifie le curseur = (_)
            int 10h
    
            jmp entreF             ;entrée d'un nouveau caractère
    ;-------------------------------------------------------------------------------
    Vous pouvez utiliser les FAQ (ICI) ou les Tutoriels (ICI) et aussi accéder au blog (ICI)

  3. #3
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    Merci pour la réponse mais mon but c'est pas de récupérer cette mémoire mais de le modifier sur Excel, comme ca si je veux commander diffèrent logiciel sur Windows faut juste envoyer des touches fictif envoyer par excel.

  4. #4
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 694
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 694
    Points : 13 130
    Points
    13 130
    Par défaut
    Citation Envoyé par JML19 Voir le message
    Les touches clavier ne sont pas stockées c'est une interruption qui arrête l'application pour récupérer les indications du clavier.
    Plus en multi-tâches. L'interruption est gérée par le driver de clavier qui remplit un tampon par Keybd_Event (la même chose que lorsqu'on simule une touche). Son contenu est ensuite envoyé par message (WM_KEYDOWN, WM_KEYUP) à la fenêtre au premier plan.

  5. #5
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    Est ce que c'est possible d'envoyer (WM_KEYDOWN, WM_KEYUP) pas avec le clavier mais avec Excel pour commander Windows directement?


    Ca veux dire si j'envoi ALT (dans une cellule Excel) par exemple il vas s'exécuter sur Windows .
    Donc si j'ai une tache répétitive cliquer sur le bouton Scientifique sur calculatrice puis cliquer sur un autre logiciel dans une bouton X ca sera facile si je veux le faire 1000 fois(avec des donnés de saisie qui se trouve dans excel),ils suffit de lancer la calculatrice puis envoyer touche=ALT+en Bas +en Bas a Windows
    puis lancer l'autre logiciel depuis Excel puis touche=ALT+.... a Windows

    l'intérêt c'est piloter ses donnés envoyer par excel pour commander des taches répétitive sur Windows que en fait manuellement.

  6. #6
    Expert éminent sénior
    Avatar de Escapetiger
    Homme Profil pro
    Administrateur système Unix - Linux
    Inscrit en
    Juillet 2012
    Messages
    1 477
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur système Unix - Linux

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1 477
    Points : 11 057
    Points
    11 057
    Par défaut
    Bonjour,

    Il me semble que tu confonds l'utilisation du tableur Excel propement dite avec l'interaction (administration/envoi de commande ...) avec le système Windows.

    Ci-dessous des FAQ qui devraient t'éclairer :

    http://excel.developpez.com/faq

    http://windows.developpez.com/faq/batch
    « Developpez.com est un groupe international de bénévoles dont la motivation est l'entraide au sens large » (incl. forums developpez.net)
    Club des professionnels en informatique

  7. #7
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 694
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 694
    Points : 13 130
    Points
    13 130
    Par défaut
    Ce ne serait pas forcément impossible depuis Excel mais par macro. Il faudrait par contre que Excel soit minimisé pour qu'il ne soit pas lui-même la cible des commandes (l'application au premier plan).
    Il faut plutôt regarder du côté des applications de scripting telles que AutoIt.

  8. #8
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par Andnotor Voir le message
    Ce ne serait pas forcément impossible depuis Excel mais par macro. Il faudrait par contre que Excel soit minimisé pour qu'il ne soit pas lui-même la cible des commandes (l'application au premier plan ).
    Il faut plutôt regarder du côté des applications de scripting telles que AutoIt.
    normal le macro excel c'est lui qui commande est gère les taches.
    merci je comprend pas l'anglais il fait quoi autoit

  9. #9
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    Je sais que Windows est un logiciel avec une donnée d'entrée le clavier ou la souris et une donnée de sortie mémoire modifiée
    Je voulais juste savoir quand l'impulsion arrive à Windows cette impulsion comme donnée d'entrée elle est enregistrée où dans la mémoire pour être traiter par Windows .

  10. #10
    Expert éminent sénior
    Avatar de JML19
    Homme Profil pro
    Retraité : Electrotechnicien Electronicien Informaticien de la SNCF
    Inscrit en
    Décembre 2010
    Messages
    14 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Retraité : Electrotechnicien Electronicien Informaticien de la SNCF
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2010
    Messages : 14 939
    Points : 23 253
    Points
    23 253
    Billets dans le blog
    10
    Vous pouvez utiliser les FAQ (ICI) ou les Tutoriels (ICI) et aussi accéder au blog (ICI)

  11. #11
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 453
    Points : 43 104
    Points
    43 104
    Par défaut
    Attention, l'exemple fourni par JLM est valable sous DOS, qui va utiliser le tampon du BIOS, sous Windows le principe sera le même mais le tampon non accessible via son adresse directe. Le tampon Windows est peut être accessible via des fonctions système

    Si j'ai bien compris, tu souhaites lors de l'appui d'une touche ou combinaison de touche dans Excel déclencher quelque chose dans le système. Il te faudrait en VBA déclencher ce que tu souhaites faire en appelant les API système. C'est faisable, mais lourd et complexe.

    Tu pourrais ensuite intercepter les messages clavier.

    Regardes ceci :
    https://support.microsoft.com/fr-fr/kb/468105
    Il est précisé que ça ne fonctionne pas hors de l'application en cours.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  12. #12
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    Merci moi j'ai pensé a utilisé un autre principe(puisque je suis pas admin) je vais tout simplement pirater mon proprops système comme ca je peux envoyer se que je veux depuis le tronjon vers mon pc comme commande clavier .
    Est ce que cette idée peux marcher?
    Alimenter le commande envoyer par le tronjon par une cellule exel.

Discussions similaires

  1. [Trucs & Astuces] Forcer les touches clavier en numerique
    Par ProgElecT dans le forum Vos contributions VB6
    Réponses: 2
    Dernier message: 25/04/2007, 19h27
  2. [Système] detecter les touche clavier en php
    Par youcef81 dans le forum Langage
    Réponses: 11
    Dernier message: 01/09/2006, 13h32
  3. Les E-Mails sont envoyés, sauf s'ils sont longs !?
    Par wappyboy dans le forum Réseau
    Réponses: 4
    Dernier message: 18/07/2006, 10h50
  4. Réponses: 3
    Dernier message: 30/06/2006, 14h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo