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 :

"ecouter" un peripherique


Sujet :

Windows

  1. #1
    Membre expérimenté
    Inscrit en
    Septembre 2006
    Messages
    414
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 414
    Par défaut "ecouter" un peripherique
    salut

    existe t il, en langage C, un moyen "d'ecouter" un peripherique (souris, clavier...)
    ou un port (parallele, serie,usb, ps2...)
    à l'aide d'une sorte de pointeur (je dis bien une sorte) qui pointerai sur l'adresse du port ou du perif en question...
    si c'est possible, comment ? Et est ce que l'adressage est le meme pour tous les ordi ?

  2. #2
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par kamouminator
    existe t il, en langage C, un moyen "d'ecouter" un peripherique (souris, clavier...)
    ou un port (parallele, serie,usb, ps2...)
    à l'aide d'une sorte de pointeur (je dis bien une sorte) qui pointerai sur l'adresse du port ou du perif en question...
    si c'est possible, comment ? Et est ce que l'adressage est le meme pour tous les ordi ?
    Evidemment, rien de standard (Le C ne connait que les flux d'E/S). Quel système ?

  3. #3
    Membre expérimenté
    Inscrit en
    Septembre 2006
    Messages
    414
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 414
    Par défaut

    euh...comment ca quel systeme ?

  4. #4
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Citation Envoyé par kamouminator

    euh...comment ca quel systeme ?
    Quel système d'exploitation tu utilises ?
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  5. #5
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par kamouminator

    euh...comment ca quel systeme ?
    "Mais qu'est-ce qu'on va faire d'eux plus tard ?"

  6. #6
    Membre averti
    Inscrit en
    Octobre 2006
    Messages
    54
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Octobre 2006
    Messages : 54
    Par défaut
    Moi ça m'intéresserai de savoir pour xp...

  7. #7
    Membre expérimenté
    Inscrit en
    Septembre 2006
    Messages
    414
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 414
    Par défaut
    Citation Envoyé par Emmanuel Delahaye
    "Mais qu'est-ce qu'on va faire d'eux plus tard ?"

    ^^ XP !
    desolé....fatigué...

  8. #8
    Expert confirmé

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    Tu veux écouter quoi ? Si c'est au niveau hardware, faut passer par un driver, et c'est très très très complexe.

  9. #9
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par kamouminator
    XP
    Si tu veux atteindre le matériel directement, c'est pas possible en mode utilisateur. Il faut utiliser les drivers comme DirectX.

    Mais le matériel est déjà sous la responsabilité du système. Tu veux faire quoi exactement ?

  10. #10
    Membre expérimenté
    Inscrit en
    Septembre 2006
    Messages
    414
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 414
    Par défaut
    j'aimerai bien ecouter le clavier en fait !

  11. #11
    Expert confirmé

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    Tu veux faire un keylogger ? Y'a pas besoin de descendre au niveau hardware pour cela. Mais... la petite question habituelle quand on aborde ce sujet : pourquoi as-tu besoin d'un keylogger ?

  12. #12
    Membre expérimenté
    Inscrit en
    Septembre 2006
    Messages
    414
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 414
    Par défaut
    non, c'est pas vraiment ca,

    en fait je suis entrain d'ecrire une calculatrice, et chaque caractere que je tape au clavier (mis apar quelques uns) est stocké dans une structure "element" d'une liste doublement chainée.

    je cherche à stocker ces caracteres à la volée, sans passer par une variable..
    je sais que s'est pas vraiment utile, vu que ca marche deja avec un getch() mais s'est plus pour le defi et l'apprentissage que je veux faire ca...
    si il faut passer par les drivers pour ecouter le clavier, et si c'est si compliqué que ca, je peux peut etre ecouter le ports (PS2 en l'occurence) à la place ?
    je me doute bien que ce ne sera pas vraiment portable...mais c'est pas vraiment un probleme !

  13. #13
    Expert confirmé

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    Tu as une vision trop bas niveau L'OS est là pour t'affranchir des problèmes matériels. PS/2... et si c'est un clavier USB ? Et si c'est un clavier virtuel ? etc...
    En ce qui te concerne, tu souhaites juste récupérer les entrées utilisateurs. L'OS va te transmettre ces entrées si ton application a le focus. Car sinon, si l'utilisateur lance ta calculette, la minimise, et tape du texte dans Word, il aura la désagréable surprise de ne pas voir son texte dans Word, mais de le voir envoyé à ta calculette parce qu'elle "écoute".
    Donc, tu souhaites justes récupérer les entrées utilisateurs qui te sont destinées. Il y a un mécanisme parfaitement définit dans Windows, qui fonctionne justement à la volée. Ca marche par messages, tu vas recevoir des messages "eh! Du texte a été tapé pour toi!" envoyé par Windows quand tu as le focus.
    Il te faut simplement développer une application Win32 classique, avec boucle des messages.
    http://chgi.developpez.com/windows/
    http://bob.developpez.com/tutapiwin/

  14. #14
    Membre expérimenté
    Inscrit en
    Septembre 2006
    Messages
    414
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 414
    Par défaut
    Citation Envoyé par Aurelien.Regat-Barrel
    Tu as une vision trop bas niveau
    Normal, je suis electronicien ^^

    Plus serieusement, il serait pas possible de lire sur le stdin plutot ?
    ca reviens au meme, non ?

  15. #15
    Membre expérimenté
    Inscrit en
    Septembre 2006
    Messages
    414
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 414
    Par défaut
    ah non...je viens de voir que le stdin etait du type FILE *...
    je vais essayer avec l'API windows...

  16. #16
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par kamouminator
    ah non...je viens de voir que le stdin etait du type FILE *...
    je vais essayer avec l'API windows...
    Sous windows, tout ce qui vient du clavier est transformé en message WM_xxx. Il suffit de te placer dans la boucle de message de ton application et tu as tout. A toi de faire le switch-case qui va bien.

    Sous Windows, on ne s'amuse pas à bricoler dans le hard. On utilise les mécanismes prévus pour ça. Au fait, sous Windows, en mode GUI, à ma connaissance, il n'y a plus de stdin.

  17. #17
    Membre expérimenté
    Inscrit en
    Septembre 2006
    Messages
    414
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 414
    Par défaut
    ok, merci pour les infos !

+ Répondre à la discussion
Cette discussion est résolue.

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