FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Button_picture
par pascal10000 Aujourd'hui à 11:41

» Pourquoi le compilateur stagne
par Minibug Aujourd'hui à 11:09

» 4 (en analyse): SYNEDIT_TARGET_IS_OBJECT devient inactif
par Jack Aujourd'hui à 10:09

» 3 (en analyse): Mauvaise interprétation du string "THEN"
par Jack Aujourd'hui à 10:03

» KGF.dll - demandes ou suggestions de modifications ou ajouts
par Marc Aujourd'hui à 10:00

» KGF_dll - nouvelles versions
par pascal10000 Hier à 17:27

» Mah-Jong européen new-look
par Minibug Mar 12 Déc 2017 - 22:31

» track_bar circulaire
par Klaus Mar 12 Déc 2017 - 13:54

» API Windows
par Klaus Mar 12 Déc 2017 - 3:21

» Cartes de voeux, menus, etc.
par JL35 Lun 11 Déc 2017 - 17:48

» a l'aide klaus
par Minibug Lun 11 Déc 2017 - 11:42

» bug SYNEDIT_TARGET_IS_OBJECT
par Jack Lun 11 Déc 2017 - 0:16

» Jukebox : Serge Reggiani
par papydall Sam 9 Déc 2017 - 5:58

» Ecouter la radio fm sur votre pc
par pascal10000 Sam 9 Déc 2017 - 3:42

» anomalie
par Klaus Sam 9 Déc 2017 - 3:21

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Décembre 2017
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
25262728293031
CalendrierCalendrier

Partagez | 
 

 Problème d'envoi de touches à une application.

Voir le sujet précédent Voir le sujet suivant Aller en bas 
Aller à la page : 1, 2  Suivant
AuteurMessage
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 9:58

Bonjour.

@Klaus.

J'ai vraiment besoin de ton aide, suite à un problème d'envoi de touches à une application, sur lequel je bute depuis plusieurs mois.

J'ai donc téléchargé la version d'essai du logiciel de traduction Promt, sur leur site: www.promt.fr (menu: Logiciels Promt).
L'installation s'est déroulée correctement.

Par la suite, j'essaie d'obtenir les traductions en allemand de mots individuels, par programme.
Mais cela semble impossible.

Après installation, cliquer sur "Dictionnaires électroniques", puis "Démarrer".

Pourrais-tu y jeter un coup d'oeil ?

Merci de la suite.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 10:40

Je vais télécharger la version personnelle en version d'essai pour voir de quoi il retourne.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 11:26

Désolé. Echec de l'installation, sans message précis - juste "Echec de 'installation".

Pour essayer d'avancer, peux-tu poster quelques captures d'écran, en commentant qu'elle partie tu veux capturer ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 11:34



Voici le lien vers l'image.

Je souhaiterais récupérer les traductions, par programme, d'un mot quelconque.
Ces traductions se trouvent dans l'écran de droite.

Merci de la suite.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 12:18

Alors, s'il te plaît, fais marcher le programme suivant:
Code:
dim res%, hnd%, classe$, x%, y%

height 0,80 : width 0,350
edit 1 : top 1,10 : left 1,10 : width 1,300

dll_on "KGF.dll"

repeat
  res% = dll_call2("GetAbsoluteMousePosition",adr(x%),adr(y%))
  res% = dll_call2("GetObjectUnderPosition",x%,y%)
  if res%<>hnd%
    hnd% = res%
    classe$ = string$(255," ")
    res% = dll_call2("GetObjectClassName",hnd%,adr(classe$))
    text 1,"handle="+str$(hnd%)+"   Classe="+trim$(classe$)
  end_if
until scancode=27

terminate
Place le curseur dans le cadre dont tu veux capturer le contenu et note ce que le EDIT de mon programme montre.
Puis, place le curseur jsute au-dessus de ce cadre, à droite de l'icône "?" (il devrait se trouver dans la form de base) et note ce que le EDIT de mon programme montre.
Si tu postes ensuite ces deux informations, je pourrai certainement faire quelque chose.

EDIT

Si, pour la seconde mesure, cela affiche une classe du genre ToolBar, essaie d'agrandir la fenêtre de sorte à faire apparaitre une zone "nue" du fond de la fenêtre, et place le curseur à cet endroit.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 12:33

Bonjour.

Voici le contenu de l'objet EDIT après avoir effectué les deux manipulations.


handle=460592 Classe=ListBox
handle=395298 Classe=BCGPDockBar:400000:98:10003:10
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 12:51

Bon, nouvel essai, avec le code suivant:
Code:


dim res%, hnd%, classe$, x%, y%, titre$

height 0,100 : width 0,350
edit 1 : top 1,10 : left 1,10 : width 1,300
edit 2 : top 2,30 : left 2,10 : width 2,300

dll_on "KGF.dll"

titre$ = "Dictionnaire électronique PROMT"
hnd% = dll_call2("GetWindowByTitle",1,adr(titre$))
classe$ = string$(255," ")
res% = dll_call2("GetObjectClassName",hnd%,adr(classe$))
text 2,"Handle PROMT: "+str$(hnd%)+"   Classe="+trim$(classe$)
hnd% = 0

repeat
  res% = dll_call2("GetAbsoluteMousePosition",adr(x%),adr(y%))
  res% = dll_call2("GetObjectUnderPosition",x%,y%)
  if res%<>hnd%
    hnd% = res%
    classe$ = string$(255," ")
    res% = dll_call2("GetObjectClassName",hnd%,adr(classe$))
    text 1,"handle="+str$(hnd%)+"   Classe="+trim$(classe$)
  end_if
until scancode=27

terminate
Et cette fois, il y a un EDIT supplémentaire à lire - celui avec le handle PROMT.

J'ai une information capitale: l'objet recherché est une ListBox. Reste à savoir si l'on peut identifier la form principale et de quel type elle est. C'est l'objet de ce test.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 12:55

Voici le contenu du second EDIT:

Handle PROMT: 2491162 Classe=VerDictWindow
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 13:23

Super !

Etape suivante:
Télécharge KGF.dll de mon WebDav, et essaie le code suivant:
Code:


dim res%, hnd%, classe$, x%, y%, titre$, hndPROMT%, hnd1%

height 0,100 : width 0,350
edit 1 : top 1,10 : left 1,10 : width 1,300
edit 2 : top 2,30 : left 2,10 : width 2,300

dll_on "KGF.dll"

titre$ = "Dictionnaire électronique PROMT"
hndPROMT% = dll_call2("GetWindowByTitle",1,adr(titre$))
classe$ = string$(255," ")
res% = dll_call2("GetObjectClassName",hndPROMT%,adr(classe$))
text 2,"Handle PROMT: "+str$(hndPROMT%)+"  Classe="+trim$(classe$)


repeat
  res% = dll_call2("GetAbsoluteMousePosition",adr(x%),adr(y%))
  res% = dll_call2("GetObjectUnderPosition",x%,y%)
  if res%<>hnd%
    hnd% = res%
    classe$ = string$(255," ")
    res% = dll_call2("GetObjectClassName",hnd%,adr(classe$))
    text 1,"handle="+str$(hnd%)+"  Classe="+trim$(classe$)
    if hndPROMT%<>0
      hnd1% = dll_call1("GetParentwindowFromHandle",hnd%)
      if hnd1%=hndPROMT% then message "Trouvé dans PROMT !"
    end_if
  end_if
until scancode=27


' Handle PROMT: 2491162 Classe=VerDictWindow
' ²handle=460592 Classe=ListBox

terminate
Si tu places le curseur dans la ListBox à capturer, tu devrais avoir un message "Trouvé dans PROMT !".
Si ça marche, je devrais avoir les éléments nécessaires pour réaliser ta capture.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 13:28

Question complémentaire:
tu dis
Citation :
handle=460592 Classe=ListBox
handle=395298 Classe=BCGPDockBar:400000:98:10003:10
Est-ce bien ListBox ou TListBox ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 13:31

Il s'agit bien de ListBox.

Et j'obtiens bien le message "Trouvé dans PROMT !"
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 13:59

On va faire une première tentative de récupération.

Recharge KGF.dll de mon WebDav.
Puis, lance PROMT en affichant une page dont tu veux récupérer la traduction.
Finalement, lance le programme suivant:
Code:


dim res%, hndPROMT%, titre$, hndListBox%, classe$


dll_on "KGF.dll"

list 1 : full_space 1

titre$ = "Dictionnaire électronique PROMT"
hndPROMT% = dll_call2("GetWindowByTitle",1,adr(titre$))

classe$ = "ListBox"
hndListBox% = dll_call2("FindTypedChildWindow",hndPROMT%,adr(classe$))

if hndListBox%<>0
  res% = dll_call2("GetListExternalBoxText",hndListBox%,handle(1))
else
  message "Oups... non trouvé !"
end_if

end
C'est un premier essai...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 14:03

Nécessaire fait.

Je n'obtiens pas de message d'erreur "Non trouvé"
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 14:13

Donc, dans la fenêtre du petit programme Panoramic, tu as le texte que tu veux récupérer ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 14:16

Désolé, mais l'objet List de Panoramic ne contient rien !
J'ai relancé avec un Combo, et toujours rien.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 14:36

Ok, je vois. J'ai trouvé de quoi il retourne, et j'aurai bientôt une version opérationnelle.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 15:11

Voilà qui est fait.

Recharge KGF.dll à partir de mon WebDav.
Lance PROMT sur une page qui t'intéresse.
Lance le programme suivant:
Code:
dim PROMT%
' PROMT% = 0      : ' pour démo locale
 PROMT% = 1      : ' pour utilisation avec PROMT

dim res%, hndPROMT%, titre$, hndListBox%, classe$


dll_on "KGF.dll"

caption 0,"KGF"

if PROMT%=0
  list 1 : width 1,120
  item_add 1,"aaaaaaaaa"
  item_add 1,"bbbbb"
end_if
memo 2 : left 2,130 : width 2,200 : height 2,300 : bar_both 2

if PROMT%=1 then titre$ = "Dictionnaire électronique PROMT"
if PROMT%=0 then titre$ = "KGF"
hndPROMT% = dll_call2("GetWindowByTitle",1,adr(titre$))

classe$ = "ListBox"
hndListBox% = dll_call2("FindTypedChildWindow",hndPROMT%,adr(classe$))

if hndListBox%<>0
  res% = dll_call2("GetListExternalBoxText",hndListBox%,handle(2))
  message "Chargé !"
else
  message "Oups... non trouvé !"
end_if

end
Tu devrais trouver les données attendues dans le mémo.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 15:18

J'obtiens le texte suivant dans le memo:

Nouveau:

et aucune autre donnée !!
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 15:27

Pour vérification: invertis les commentaires sur les lignes 2 et 3, pour vérifier que la DLL marche...

Question subsidiaire:
Est-ce que, dans le cadre en question, tu peux taper ctrl/A pour tout sélectionner et ctrl/C pour tout copier ? Car si mon procédé ne marche pas, ce n'est probablement pas une - ListBox standard qu'elle ne s'appelle pas TListBox mais ListBox est troublant.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 15:35

Après vérification, la DLL fonctionne correctement.

Par contre, je n'ai pas accès, dans le cadre, avec CTRL-A, puis CTRL-C.

Et un clic avec le bouton droit de la souris n'affiche aucun menu pop-up !!

Par contre, j'ai accès à un menu "copier", lors d'un clic sur chacun des mots individuellement (in, nach, ...)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 15:43

Résumons la situation:
1. le cadre en question est un dérivé d'un composant TListBox (ce qui correspond à un LIST Panoramic).
2. ce dérivé ne parte pas le nom de classe habituel qui devrait être TListBox
3. ce composant bloque manifestement les messages Windows LB_GETCOUNT, LB_GETTEXTLEN et LB_GETTEXT (messages standard gérant un composant TListBox)
4. ce composant bloque également les ctrl/A et ctrl/C

Conclusion: ce composant a été créé de façon délibéré pour se protéger précisément contre les procédés du genre que tu veux mettre en oeuvre. Là, il n'y a pas grand-chose à faire. Désolé.

Une dernière vérification: est-ce que tu peux surligner le texte avec la souris et faire ctrl/C pour copier le texte surligné dans le presse-papier ? Je n'ai pas grand espoir, mais on ne sait jamais...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 15:46

Oui, j'ai accès à chacun des mots individuels, que je peux copier ensuite.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 15:50

Mais tu y as accès comment ? En les surlignant ? En cliquant simplement dans un mot ou une ligne de ce cadre ? Est-ce que la ligne cliquée change de couleur lors du clic ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Envoi de touches à une application.   Ven 19 Mai 2017 - 15:52

J'ai accès à chacun des mots, simplement en cliquant sur le mot, et celui-ci devient noir.
Je n'ai pas accès à la ligne de définition complète du mot.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème d'envoi de touches à une application.   Ven 19 Mai 2017 - 15:57

Alors, clique sur un mot en envoie une capture de l'état résultant.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé




MessageSujet: Re: Problème d'envoi de touches à une application.   

Revenir en haut Aller en bas
 
Problème d'envoi de touches à une application.
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 2Aller à la page : 1, 2  Suivant
 Sujets similaires
-
» [Résolu] Problème d'envoi de mail (smtp)
» [Résolu] Problème d'envoi avec Windows Live Mail
» Probleme de partage de calendriers sur Outlook
» Mapsource: problème d'envoi d'itinéraire vers NUVI 1340
» Problème envoi de mails via 1&1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: