Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 10 sur 10
  1. #1
    Invité de passage
    Inscrit en
    septembre 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : septembre 2008
    Messages : 5
    Points : 0
    Points
    0

    Par défaut Gestions padles externes

    Bonjour à toutes et tous,

    Je recherche une personne pouvant m'aider à développer quelques lignes de code en Windev 17 pour la gestion de plusieurs claviers numériques (padle).
    Je souhaite réaliser une application pour coter des photos à partir d'un programme Windev, càd utiliser 3 padles externes supplémentaires au clavier (qui lui gère le programme) et les padles uniquement la saisie des points de 0 à 9.
    Le programme étant chargé de récolter ces différents points et d'en faire la somme sous forme d'une variable que je récolterai dans mon programme pour l'affichage.

    Merci d'avance de votre réponse

  2. #2
    Expert Confirmé
    Avatar de frenchsting
    Homme Profil pro Claude
    Développeur informatique
    Inscrit en
    juin 2003
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Nom : Homme Claude
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : juin 2003
    Messages : 1 800
    Points : 2 649
    Points
    2 649

    Par défaut

    Si tes padles sont reconnus comme claviers, windev ne pourra pas les différencier. A mon avis (à confirmer par d'autres), il faudra passer par des API système pour trouver l'origine de la saisie.
    Commencez toujours par là : et puis n'hésitez à passer par là : ou par un autre moteur de recherche...
    Pas de question par MP s'il vous plait. Le forum est fait pour cela...

    Make it real not fantasy

  3. #3
    Invité de passage
    Inscrit en
    septembre 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : septembre 2008
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Bonjour frenchsting,

    En effet par Windev je ne suis pas arrivé.
    Je crois aussi qu'il faut passer par des API, mais je ne m'y connais pas du tout.

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mars 2009
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : mars 2009
    Messages : 133
    Points : 277
    Points
    277

    Par défaut

    Bonjour,

    Vous n'aurez guère plus de chance via les API : Différencier 2 claviers différents

    Peut être en utilisant des périphériques qui ne sont pas détectés comme des claviers.

  5. #5
    Invité de passage
    Inscrit en
    septembre 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : septembre 2008
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Bonjour themayu,

    Merci pour ce lien, mais je suis certain contrairement à ce que dit l'article qu'il y a moyen de différencier les claviers.
    J'ai une application faite en "Borland/Embarcadero Builder" qui fait exactement ce que j'ai besoin. Le problème c'est que je dois utiliser 2 applications pour obtenir mes résultats.

  6. #6
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mars 2009
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : mars 2009
    Messages : 133
    Points : 277
    Points
    277

    Par défaut

    J'ai peut être effectivement répondu trop vite, on doit pouvoir passer par les fonctions raw input de windows, un exemple documenté en C#.

    Plus qu'à le traduire en windev !

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    septembre 2010
    Messages
    266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2010
    Messages : 266
    Points : 644
    Points
    644

    Par défaut

    Bonjour à tous,

    [EDIT] themayu a répondu plus vite [/EDIT]

    Sous Windows, les périphériques HID (Human Interface Device) peuvent être manipulés par une application via les fonctions de l'API Raw Input.
    http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
    A mon avis, ce n'est pas à la portée d'un "nouveau né".

    Il y a un projet C# qui peut servir d'exemple:
    Using Raw Input from C# to handle multiple keyboards
    http://www.codeproject.com/Articles/...tiple-keyboard

    Si on veut éviter .NET, on peut aussi regarder cet exemple en C qui permet de récupérer les inputs de Joystick.
    Using the Raw Input API to Process Joystick Input
    http://www.codeproject.com/Articles/...Joystick-Input

    Pour gagner du temps, on peut utiliser une application pour gérer des macros, comme par exemple le freeware HID Macros:
    http://www.hidmacros.eu/whatisit.php


    @hoves
    Je pense que tu utilises ce genre de programme (peux-tu nous donner son nom)
    Et pourquoi n'est-ce pas adapté ?


    (pour information)
    A minima, Windows est prévu pour reconnaître les types de HID suivants:
    • Pointer
    • Mouse
    • Joystick
    • Game pad
    • Keyboard
    • Keypad
    • Consumer audio control

    Un lecteur de code barres USB est probablement géré comme un HID.

  8. #8
    Invité de passage
    Inscrit en
    septembre 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : septembre 2008
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Merci themayu et OnePoint pour vos exemples,
    Mais c'est bien là que je bloque
    La programmation en Windev ça va mais le reste
    Le programme que j'utilise actuellement est celui de la firme rmf products => rfmproducts.com
    Il fonctionne bien, mais il est en anglais et il faut que j'utilise un autre programme pour faire défiler les photos à juger d'où un second PC.
    Je souhaiterais faire cette tâche uniquement en Windev, càd récupérer les chiffres des padles et gérer tout le reste avec mon application.

  9. #9
    Membre chevronné
    Profil pro
    Inscrit en
    septembre 2010
    Messages
    266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2010
    Messages : 266
    Points : 644
    Points
    644

    Par défaut

    Citation Envoyé par hoves Voir le message
    Mais c'est bien là que je bloque
    La programmation en Windev ça va mais le reste
    Utiliser les fonctions de l'API Raw Input directement en Windev, ça va demander un gros travail, et je dis ça pour un développeur qui y comprend quelque chose.

    Si tu n'as pas beaucoup de temps devant toi, alors regarde de plus près le freeware HID Macros dont je t'ai parlé. Cet outil est de plus bas niveau que l'application que tu utilises.

    A l'origine il était conçu pour interfacer des HID avec un simulateur de vol.
    Il permet d'exécuter des actions prédéfinies quand certaines touches sont enfoncés.
    Même s'il est assez limité, il peut exécuter un programme externe, ou exécuter un script VBS.
    Son avantage principal est son interface utilisateur qui simplifie la reconnaissance des différents HID et l'association entre un événement et une macro.

    Dans le tutoriel dont je te donne le lien, l'auteur propose une solution simple et rapide à mettre en oeuvre: utiliser HID Macros avec un autre utilitaire (le fameux) NirCmd.
    [Tutorial] Individual hotkeys with multiple keyboards
    http://deskthority.net/workshop-f7/i...oards-t11.html

    On peut reprocher à cette solution de ne pas être codée (c'est surtout du paramétrage et de la configuration), mais elle semble opérationnelle et facile à réaliser, même par des néophytes.

    Le lien pour NirCmd (outil en ligne de commande):
    http://www.nirsoft.net/utils/nircmd.html

    NirCmd est un formidable "couteau suisse". La liste des fonctions:
    http://www.nirsoft.net/utils/nircmd2.html#using

    Alors comment communiquer à ton application Windev, un n° de keypad et un chiffre ?

    Avec NirCmd, tu peux très facilement envoyer un message windows à la fenêtre principale de ton application qui affiche les photos.

    Exemple pour envoyer à la calculatrice Windows le message de fermeture de la fenêtre:
    nircmd.exe win sendmsg title "calculator" 0x10 0 0

    Pour revenir à ton pb...
    Tu choisis et tu utilises un n° de message spécifique à ton application (c'est un nombre, supérieur à 2324, car en dessous ce sont des codes de message déjà utilisés par Windows et Windev)
    Les 2 autres arguments peuvent désigner le n° de keypad et le chiffre de la touche enfoncée.

    Au niveau de ton application Windev, tu n'as plus qu'à surveiller l'arrivée des messages windows avec ton n° de message spécifique.
    Pour ça, il faut utiliser la fonction Evénement et récupérer le n° de keypad et la valeur.
    http://doc.pcsoft.fr/fr-FR/?3015011&...9v%C3%A9nement

    Voilà c'est une piste possible, probablement la plus facile.

  10. #10
    Invité de passage
    Inscrit en
    septembre 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : septembre 2008
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Un grand merci OnePoint je vais décortiquer tout cela et voir si j'arrive à une solution
    Bonne journée

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •