Lire le contenu du NotePad [Résolu]

Messages postés
163
Date d'inscription
samedi 2 août 2003
Dernière intervention
4 novembre 2013
- - Dernière réponse : CrazyMan19
Messages postés
163
Date d'inscription
samedi 2 août 2003
Dernière intervention
4 novembre 2013
- 13 déc. 2006 à 14:07
salut
je vx savoir s'il y as une manière pour lire le contenu d'un champ de texte d'une autre application par exemple lire le contenu de l application NotePad  ?
et merci
Je suis né intelligent ... L'éducation me détruit ;)
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
357
Date d'inscription
mercredi 18 décembre 2002
Dernière intervention
24 mars 2011
3
Merci
Salut,

Il faut que tu trouves le handle de la textbox ou tu veux ecrire.

Pour le bloc note c'est très simple :

1. Trouve la fenetre du bloc note avec FindWindow
2. Trouve le Handle du controle "Edit" de la fenetre du bloc note avec EnumChildWindows
2 bis. Si tu connais l'ID du controle (0x00000F pour notepad), utilise GetDlgItem

Pour une autre appli, je te conseille d'utiliser Spy++ pour analyser la structure de la fenetre et/ou trouver les IDs des controles.

D@runia

Merci cs_darunia 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_darunia
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Dernière intervention
22 août 2014
0
Merci
Si tu veux lire le contenu, ligne par ligne, tu peux utiliser Open For Input et LineInput (de nombreux exemples sur ce site)

Si tu veux ouvrir Notepad, utilise l'instruction Shell (de nombreux exemples également)
Commenter la réponse de jmfmarques
Messages postés
163
Date d'inscription
samedi 2 août 2003
Dernière intervention
4 novembre 2013
0
Merci
j ai pu recuperer le handle et le ID du contrôle à l aide du GetDlgCtrlID mais voila j ai tous ce que j en suis besoin le handle de l application et du contrôle et le ID du contrôle ais koi faire après j ai ecrivai ce petit bout de code et je sais pas si ca pourra lire le contenu du contrôle ou nn (pour moi ca ne marche pas) :

IDBox = GetDlgCtrlID(hwnd)
GetDlgItemText hwnd, IDBox, strString, Len(strString)

et merçi pour votre aide
Je suis né intelligent ... L'éducation me détruit ;)
Commenter la réponse de CrazyMan19
Messages postés
357
Date d'inscription
mercredi 18 décembre 2002
Dernière intervention
24 mars 2011
0
Merci
Essaye avec GetWindowText.

Sinon, comment as tu delcarée strString. Il faut la declarer avec un dimensionnement :

Dim strString as String*255

De plus, à quoi correspond hwnd ? Le handle du controle ou de la fenetre ? Il faut que ce soit celui de la fenetre !

Enfin bref, si tu arrives à choper le handle du controle, utilise GetWindowText

D@runia
Commenter la réponse de cs_darunia
Messages postés
163
Date d'inscription
samedi 2 août 2003
Dernière intervention
4 novembre 2013
0
Merci
j ai declaré le strstring avec un demension * 255 et Hwnd est le handle du fenêtre le prob que le code me donne le contenu des contrôles dans mon programme mais si je le passe le handle du "NotePad" il me donne rien même avec le GetWindowText , j ai utilisé cette dernière avec le handle du contrôle mais tjs avec mon programme ca marche mais avec d autre app ca marche pas ,,, je suis vraiment coincé ...
Je suis né intelligent ... L'éducation me détruit ;)
Commenter la réponse de CrazyMan19
Messages postés
357
Date d'inscription
mercredi 18 décembre 2002
Dernière intervention
24 mars 2011
0
Merci
Hum, pas très claire ta réponse, fait un effort de redaction !
Si j'ai bien compris ça marche avec notepad mais pas avec une autre appli ?
C'est que la structure de l'autre appli est différente de notepad : analyse la avec Spy++ et ajuste ton code en conséquence.

D@runia
Commenter la réponse de cs_darunia
Messages postés
163
Date d'inscription
samedi 2 août 2003
Dernière intervention
4 novembre 2013
0
Merci
non ca marche pas avec le notepad mais ca marche avec l application que j ai fait avec VB

Je suis né intelligent ... L'éducation me détruit ;)
Commenter la réponse de CrazyMan19

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.