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

API standards et tierces Java Discussion :

interagir avec l'api windows


Sujet :

API standards et tierces Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 20
    Par défaut interagir avec l'api windows
    Salut,
    je dois récupérer les evènements clavier et souris. cad que si je suis sous word, mon appli doit etre capable de déterminer les touches appuyés afin de reconstituer le document.
    j'ai entendu parler de hook.
    le top serait de la faire en C++ mais je préfère java.

    comment interagir avec l'api win32 en java.

    je suis ouvert à toutes propositions

    merci

  2. #2
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Si tu veux quelque chose de semblable au java et qui manipule aisément windows je te conseille plutôt de te mettre au C#, car java n'est pas le grand potes des systèmes d'exploitations

  3. #3
    Invité
    Invité(e)
    Par défaut
    Effectivement java n'est pas doué d'énormément de possibilité a ce point de vue.
    Néanmoins moi j'utilise la classe robot.
    Et si tu veux interagir avec une autre applic, il y a moyen d'émuler les touches claviers mais il faut que l'application (word par example) ait le focus sur ton écran.

  4. #4
    Membre éclairé Avatar de Vesperal
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 81
    Par défaut
    C'est le mauvais côté des languages portables, y'en faut bien un

  5. #5
    Invité
    Invité(e)
    Par défaut
    Ben oui... mais est-ce que language portable signifie langage sans interaction avec l'OS ?
    Ce serait bien domage

  6. #6
    Membre éclairé Avatar de Vesperal
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 81
    Par défaut
    Ca signifie surtout qu'il faudrait une couche "générale" entre le language et les OS possibles, ce qui n'est pas vraiment faisable (ou très difficilement, vu que les OS évoluent chaqun de leur côté en plus). D'ou la naissance de certaines API, mais qui ne règlent qu'en partie le problème puisque peu développées.

    Le language a été développé pour être portable, donc ca réduit très fortement les liens avec les différents OS. Il y a un prix à tout

    (oups, je divague du sujet je crois ... les débâts ont l'air d'aller fort en ce moment, on peut en lancer un autre si tu veux )

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 20
    Par défaut
    ok la discussion est partie un peu en live.

    Citation Envoyé par septentryon01
    Effectivement java n'est pas doué d'énormément de possibilité a ce point de vue.
    Néanmoins moi j'utilise la classe robot.
    Et si tu veux interagir avec une autre applic, il y a moyen d'émuler les touches claviers mais il faut que l'application (word par example) ait le focus sur ton écran.
    je ne veux pas interagir avec une autre application mais juste savoir les touches qui sont appuyés et ce quelque soit l'application qui a le focus.

    Explique moi ta

  8. #8
    Invité
    Invité(e)
    Par défaut
    pas besoin de tuto, regarde juste la définition et les méthodes de la classe Robot. Tu peux récuperer des événements clavier, souris...
    Tu créés un batch qui tourne en background et le tour est joué.

  9. #9
    Membre expérimenté Avatar de Lethal
    Profil pro
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 194
    Par défaut
    Citation Envoyé par septentryon01
    pas besoin de tuto, regarde juste la définition et les méthodes de la classe Robot. Tu peux récuperer des événements clavier, souris...
    Tu créés un batch qui tourne en background et le tour est joué.
    Faut que tu m'expliques ca! Je ne crois pas qu'il est possible d'utiliser la classe robot pour récupérer les évenements clavier. T'es obligé d'utiliser un listener ce qui implique que ta frame java doit avoir le focus non?

  10. #10
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 22
    Par défaut
    Citation Envoyé par kouadjalain
    comment interagir avec l'api win32 en java.
    La réponse: JNI. Java Native Interface
    Je l'ai déjà utilisé (en 2000, mais ça n'a absolument pas changé). Il te faut une bonne connaissance du C, de l'api win32 et des dlls pour ce qui est de l'appel du code natif de Windows. Ensuite, une connaissance moyenne de java est requise pour charger et faire appel aux fonctions que tu auras défini dans ta dll. Il y a un utilitaire dans le jdk a appeler pour générer une classe java qui contient l'interfaçage vers les méthodes exportées par la dll.
    Perso, je déconseille sauf si tu n'as vraiment pas le choix du langage: c'est pas très "orienté objet" et, fatalement, ton code ne sera pas portable (à moins que tu écrives l'équivalent de ta dll en version unix, car la partie de code en java reste la même).

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/12/2005, 11h37
  2. Tutorial d'initiation a la programmation avec l'API Windows
    Par mcdonald dans le forum Autres éditeurs
    Réponses: 3
    Dernier message: 16/09/2005, 17h20
  3. Stocker un imprim ecran sous bmp avec l'api windows
    Par Tofalu dans le forum Windows
    Réponses: 7
    Dernier message: 04/05/2005, 11h32
  4. Réponses: 3
    Dernier message: 09/11/2004, 10h44

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