# Simuler l'appui sur la touche entrée

**URL:** <https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901>\
**Category:** Programmation\
**Created:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901 "2016-02-20T21:13:38Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![linux78](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/l/9fc29f/32.png) [@linux78](https://www.debian-fr.org/u/linux78)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/1 "2016-02-20T21:13:38Z")

</div>

Bonjour,  
Je cherche une fonction écrite en c permettant de simuler l’appui sur la touche entrée d’un clavier.  
Quelqu’un aurait il une fonction dans ce genre (qui fonctionne aussi bien sous windows que sous linux),svp?  
Merci d’avance.

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/2 "2016-02-20T21:13:40Z")

</div>

Salut,

J’ai çà sous Windows mais c’est un shareware très perfectionné qui sait ne faire enter que s’il reconnait la question posée. Il pourrait, mis entre de vilaines mains servir à outrepasser les droits d’un autre slack-ware 🙂

---

<div class="post-metadata">

**Author:** ![ricardo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ricardo/32/3864_2.png) [@ricardo](https://www.debian-fr.org/u/ricardo)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/3 "2016-02-20T21:13:40Z")

</div>

Si je ne me trompe pas, cette fonction existait sous Pascal mais ça remonte pour moi à … 20 ans 😒 donc plus de mémoire.

---

<div class="post-metadata">

**Author:** ![linux78](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/l/9fc29f/32.png) [@linux78](https://www.debian-fr.org/u/linux78)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/4 "2016-02-20T21:13:48Z")

</div>

[quote=“ggoodluck47”]Salut,

J’ai çà sous Windows mais c’est un shareware très perfectionné qui sait ne faire enter que s’il reconnait la question posée. Il pourrait, mis entre de vilaines mains servir à outrepasser les droits d’un autre slack-ware 🙂[/quote]

J’ai oublier de préciser que je cherche une fonction écrite en c pas un logiciel.

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/5 "2016-02-20T21:13:49Z")

</div>

Re,

> [@](#):
>
> Je cherche une fonction écrite en c

J’avais bien lu

---

<div class="post-metadata">

**Author:** ![linux78](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/l/9fc29f/32.png) [@linux78](https://www.debian-fr.org/u/linux78)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/6 "2016-02-20T21:13:50Z")

</div>

[quote=“ggoodluck47”]Salut,

J’ai çà sous Windows mais c’est un shareware très perfectionné qui sait ne faire enter que s’il reconnait la question posée. Il pourrait, mis entre de vilaines mains servir à outrepasser les droits d’un autre slack-ware 🙂[/quote]

Elle ne va pas servir à ça, mais à autre chose de moins “illégal”.

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/7 "2016-02-20T21:13:51Z")

</div>

Plonge toi dans la doc de xlib ou mieux de xcb. Ça permet de discuter directement avec le serveur X.

---

<div class="post-metadata">

**Author:** ![linux78](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/l/9fc29f/32.png) [@linux78](https://www.debian-fr.org/u/linux78)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/8 "2016-02-20T21:13:57Z")

</div>

> [@](#):
>
> Plonge toi dans la doc de xlib ou mieux de xcb. Ça permet de discuter directement avec le serveur X.

Dois-je comprendre que je vais devoir expliquer à quoi va servir cette fonction?

---

<div class="post-metadata">

**Author:** ![benghost](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/b/779978/32.png) [@benghost](https://www.debian-fr.org/u/benghost)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/9 "2016-02-20T21:13:57Z")

</div>

Hello,

Le c remonte pour moi, mais je suis assez curieux de savoir quel utilité tu vas en faire.

Normalement, la touche entrée ne sert que pour l’IHM sinon tu utilises un bon vieux caractères 0x0A non?

Ceci dit, je suis novice … mais curieux (on dit que c’est un défaut mais bon je dormirais peut être moins c\*\* ce soir 😛 )

---

<div class="post-metadata">

**Author:** ![linux78](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/l/9fc29f/32.png) [@linux78](https://www.debian-fr.org/u/linux78)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/10 "2016-02-20T21:13:58Z")

</div>

C’est dans le cadre du projet que nos profs de langage c veulent nous faire faire (un logiciel pour skipper).

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/11 "2016-02-20T21:13:58Z")

</div>

> [@](#):
>
> [quote=“MisterFreez”]Plonge toi dans la doc de xlib ou mieux de xcb. Ça permet de discuter directement avec le serveur X.

Dois-je comprendre que je vais devoir expliquer à quoi va servir cette fonction?[/quote]  
???

---

<div class="post-metadata">

**Author:** ![linux78](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/l/9fc29f/32.png) [@linux78](https://www.debian-fr.org/u/linux78)\
**Post date:** [Février 20, 2016, 9:13 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/12 "2016-02-20T21:13:58Z")

</div>

Pourquoi tu me parles de xlib ou de serveur x?  
Ce projet doit fonctionner aussi bien sous Windows que sous Linux.

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 20, 2016, 9:14 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/13 "2016-02-20T21:14:02Z")

</div>

Excuse moi j’avais mal lu. Tu peut peut être jouer sur un caractère de la table ASCII comme disait benghost.  
Sinon je doute que la norme C intègre ce genre de choses (en tout cas elle ne le fait pas à ma connaissance) donc je te conseillerais d’intégrer un autre langage à ton appli voir de coder en C mais de choisir à la compilation si tu utilise xlib sous BSD/GNU et je ne sais pas quoi sous windows.

---

<div class="post-metadata">

**Author:** ![gege2061](https://www.debian-fr.org/user_avatar/www.debian-fr.org/gege2061/32/3493_2.png) [@gege2061](https://www.debian-fr.org/u/gege2061)\
**Post date:** [Février 20, 2016, 9:14 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/14 "2016-02-20T21:14:08Z")

</div>

> [@](#):
>
> Sinon je doute que la norme C intègre ce genre de choses (en tout cas elle ne le fait pas à ma connaissance)

Je confirme 😉

Comme je ne sais pas ce qu’est un logiciel pour skipper, soit c’est en mode console, dans ce cas le caractère entrée ("\n") peux faire l’affaire, soit c’est en mode graphique, dans ce cas regarde du côté de GTK (plus précisément GDK qui te servira de couche portable entre X ou l’API win32).

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 20, 2016, 9:14 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/15 "2016-02-20T21:14:09Z")

</div>

T’es sur que \n est portable ? Ils utilisent pas \r\n ?

---

<div class="post-metadata">

**Author:** ![linux78](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/l/9fc29f/32.png) [@linux78](https://www.debian-fr.org/u/linux78)\
**Post date:** [Février 20, 2016, 9:14 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/16 "2016-02-20T21:14:11Z")

</div>

Le logiciel en question est en mode console.  
Voilà plus précisément la section du code où cette fonction serait utile:  
void Vider\_Tampon()  
{  
char x ;  
while((x=getchar())!=’\n’&&x!=EOF);  
}

---

<div class="post-metadata">

**Author:** ![gege2061](https://www.debian-fr.org/user_avatar/www.debian-fr.org/gege2061/32/3493_2.png) [@gege2061](https://www.debian-fr.org/u/gege2061)\
**Post date:** [Février 20, 2016, 9:14 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/17 "2016-02-20T21:14:14Z")

</div>

> [@](#):
>
> T’es sur que \n est portable ? Ils utilisent pas \r\n ?

Oui, en mode texte les caractères de saut de ligne (\r, \n ou \r\n) sont automatiquement convertis en \n

[quote=“linux78”]Le logiciel en question est en mode console.  
Voilà plus précisément la section du code où cette fonction serait utile:  
void Vider\_Tampon()  
{  
char x ;  
while((x=getchar())!=’\n’&&x!=EOF);  
}[/quote]  
Si le but est de vider le tampon d’entrée jusqu’à ce qu’il soit vide ou jusqu’au premier saut de ligne, c’est bon 😉

---

<div class="post-metadata">

**Author:** ![linux78](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/l/9fc29f/32.png) [@linux78](https://www.debian-fr.org/u/linux78)\
**Post date:** [Février 20, 2016, 9:14 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/18 "2016-02-20T21:14:14Z")

</div>

Ok.  
Merci à tous. Je crois que je vais laisser la fonction telle qu’elle est écrite.

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 20, 2016, 9:14 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/19 "2016-02-20T21:14:16Z")

</div>

Tu as la possibilité suivante (hack un peu immonde mais ça marche)

Tu fais tout d’abord un strace de ton programme pour voir quelle fonction est appelé pour le clavier. Tu écrits une petite librairie redéfinissant cette fonction et tu charges le tout par LD\_PRELOAD.

---

<div class="post-metadata">

**Author:** ![linux78](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/l/9fc29f/32.png) [@linux78](https://www.debian-fr.org/u/linux78)\
**Post date:** [Février 20, 2016, 9:14 UTC](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901/20 "2016-02-20T21:14:17Z")

</div>

[quote=“fran.b”]Tu as la possibilité suivante (hack un peu immonde mais ça marche)

Tu fais tout d’abord un strace de ton programme pour voir quelle fonction est appelé pour le clavier. Tu écrits une petite librairie redéfinissant cette fonction et tu charges le tout par LD\_PRELOAD.[/quote]

Tu peux être + explicite?

[Page suivante](https://www.debian-fr.org/t/simuler-lappui-sur-la-touche-entree/23901.md?page=2)
