J'essaie de lire, sous VB6, ce qui apparaît sur l'écran du Minitel, dans
l'hyperterminal.
Pour ça, je me suis référé à la fiche Microsoft 141073, que j'ai mise en
oeuvre avec l'aide de quelques participants du newsgroup (voir 22.06 à
02:45 : Lire une zone de texte par API). J'ai donc pu lire le contenu
d'une zone de texte via les API.
A présent, j'essaie de faire pareil avec le contenu de l'hyperterminal.
Dans MSDN j'ai vu que les contrôles RichText supportent (presque) les
mêmes messages que les contrôles de texte, ce qui facilite l'évolution
des applications, en permettant de remplacer une zone de texte par un
RichText, ce qui maintient le développement réalisé jusque là (par appel
aux API de style SendMessage), avant de développer le support des mises
en forme. Voilà au moins quelque chose de facile. (Rubrique "Rich Edit
Controls overview", 2ème alinéa : "Rich edit controls support almost all
of the messages and notification messages used with multiline edit
controls.")
J'ai regardé l'arborescence des fenêtres enfants (et petits-enfants ...)
de la fenêtre hyperterminal, ce qui me donne quelque chose comme
ci-dessous. Les textes qui apparaissent après les numéros sont lus par
GetWindowText, pour ceux qui ne comportent pas de parenthèses, et sont
indiqués d'après la correspondance entre le numéro de fenêtre et
l'emplacement du curseur, observée à l'aide de WindowFromPoint, pour
ceux que j'ai saisis entre parenthèses.
(On verra que j'ai utilisé la version Anglaise, allez savoir pourquoi,
elle fonctionne bien mieux que la française, qui met bien trente
secondes de plus à s'apercevoir que le micro est équipé d'un clavier. Je
serais épaté que ce point soit déterminant.)
En voyant ça, je m'attends à ce qu'un SendMessage EM_GETLINECOUNT, sur
la fenêtre visée à la dernière ligne ci-dessous, me donne le nombre de
lignes présentes dans la zone de l'écran Minitel, quelque chose comme 25
si mes souvenirs sont exacts, du fait que j'ai fait lire à
l'hyperterminal la page d'accueil de l'annuaire électronique. Or ce
message me retourne 0.
Quelqu'un saurait-il me dire ce que mon attente a de naïf ? Et pendant
qu'on y est, ce qu'il faut faire ...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Picalausa François
Hello,
Avec Microsoft Spy++ (fournit avec VS, entre autres) et/ou avec inspect (fournit dans les bin du platform SDK) on peut vérifier que la fenêtre à laquelle on veut accéder est bien une textbox (class = edit) et pas un contrôle personnalisé. Dans ce cas ci, la textbox a pour classe, il me semble, "Term Class" et tu ne pourra donc pas y accéder via les API des edit controls.
-- Picalausa François
"Gloops" a écrit dans le message de news: 42bd5aa3$0$25061$
Bonjour tout le monde,
J'essaie de lire, sous VB6, ce qui apparaît sur l'écran du Minitel, dans l'hyperterminal.
Pour ça, je me suis référé à la fiche Microsoft 141073, que j'ai mise en oeuvre avec l'aide de quelques participants du newsgroup (voir 22.06 à 02:45 : Lire une zone de texte par API). J'ai donc pu lire le contenu d'une zone de texte via les API.
A présent, j'essaie de faire pareil avec le contenu de l'hyperterminal.
[...] Quelqu'un saurait-il me dire ce que mon attente a de naïf ? Et pendant qu'on y est, ce qu'il faut faire ...
Hello,
Avec Microsoft Spy++ (fournit avec VS, entre autres) et/ou avec inspect
(fournit dans les bin du platform SDK) on peut vérifier que la fenêtre à
laquelle on veut accéder est bien une textbox (class = edit) et pas un
contrôle personnalisé. Dans ce cas ci, la textbox a pour classe, il me
semble, "Term Class" et tu ne pourra donc pas y accéder via les API des edit
controls.
--
Picalausa François
"Gloops" <gloops@niark.fr> a écrit dans le message de news:
42bd5aa3$0$25061$8fcfb975@news.wanadoo.fr...
Bonjour tout le monde,
J'essaie de lire, sous VB6, ce qui apparaît sur l'écran du Minitel, dans
l'hyperterminal.
Pour ça, je me suis référé à la fiche Microsoft 141073, que j'ai mise en
oeuvre avec l'aide de quelques participants du newsgroup (voir 22.06 à
02:45 : Lire une zone de texte par API). J'ai donc pu lire le contenu
d'une zone de texte via les API.
A présent, j'essaie de faire pareil avec le contenu de l'hyperterminal.
[...] Quelqu'un saurait-il me dire ce que mon attente a de naïf ? Et
pendant qu'on y est, ce qu'il faut faire ...
Avec Microsoft Spy++ (fournit avec VS, entre autres) et/ou avec inspect (fournit dans les bin du platform SDK) on peut vérifier que la fenêtre à laquelle on veut accéder est bien une textbox (class = edit) et pas un contrôle personnalisé. Dans ce cas ci, la textbox a pour classe, il me semble, "Term Class" et tu ne pourra donc pas y accéder via les API des edit controls.
-- Picalausa François
"Gloops" a écrit dans le message de news: 42bd5aa3$0$25061$
Bonjour tout le monde,
J'essaie de lire, sous VB6, ce qui apparaît sur l'écran du Minitel, dans l'hyperterminal.
Pour ça, je me suis référé à la fiche Microsoft 141073, que j'ai mise en oeuvre avec l'aide de quelques participants du newsgroup (voir 22.06 à 02:45 : Lire une zone de texte par API). J'ai donc pu lire le contenu d'une zone de texte via les API.
A présent, j'essaie de faire pareil avec le contenu de l'hyperterminal.
[...] Quelqu'un saurait-il me dire ce que mon attente a de naïf ? Et pendant qu'on y est, ce qu'il faut faire ...
Gloops
Ah OK, toujours bon à savoir.
Merci. _________________________________________________ Picalausa François a écrit, le 25/06/2005 17:33 :
Hello,
Avec Microsoft Spy++ (fournit avec VS, entre autres) et/ou avec inspect (fournit dans les bin du platform SDK) on peut vérifier que la fenêtre à laquelle on veut accéder est bien une textbox (class = edit) et pas un contrôle personnalisé. Dans ce cas ci, la textbox a pour classe, il me semble, "Term Class" et tu ne pourra donc pas y accéder via les API des edit controls.
Ah OK, toujours bon à savoir.
Merci.
_________________________________________________
Picalausa François a écrit, le 25/06/2005 17:33 :
Hello,
Avec Microsoft Spy++ (fournit avec VS, entre autres) et/ou avec inspect
(fournit dans les bin du platform SDK) on peut vérifier que la fenêtre à
laquelle on veut accéder est bien une textbox (class = edit) et pas un
contrôle personnalisé. Dans ce cas ci, la textbox a pour classe, il me
semble, "Term Class" et tu ne pourra donc pas y accéder via les API des edit
controls.
Merci. _________________________________________________ Picalausa François a écrit, le 25/06/2005 17:33 :
Hello,
Avec Microsoft Spy++ (fournit avec VS, entre autres) et/ou avec inspect (fournit dans les bin du platform SDK) on peut vérifier que la fenêtre à laquelle on veut accéder est bien une textbox (class = edit) et pas un contrôle personnalisé. Dans ce cas ci, la textbox a pour classe, il me semble, "Term Class" et tu ne pourra donc pas y accéder via les API des edit controls.