mogwai93
Messages postés362Date d'inscriptionmardi 31 décembre 2002StatutMembreDernière intervention 4 novembre 2023
-
18 avril 2006 à 16:09
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019
-
18 avril 2006 à 22:01
Bonjour,
j'essaie de modifier les valeurs affichees d'un programme B à l'aide d'un programme A
le programme A arrive à recupérer la liste des objets graphiques de B
A arrive à afficher ou cacher les fenetres de B
avec SetWindowText :
A arrive à modifier le contenu des fenetres "static" de B
mais
ca ne fonctionne pas avec les fenetres "edit" de B
DeAtHCrAsH
Messages postés2670Date d'inscriptionvendredi 25 janvier 2002StatutMembreDernière intervention 6 février 2013 18 avril 2006 à 16:54
Logiquement ca devrais marcher. Es tu surs que tes handles sont bons? Tu peux le vérifier avec Spy++.
SetDlgItemText et SetWindowText, ne sont rien de plus que des appels a SendMessage, avec le message WM_SETTEXT
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 18 avril 2006 à 22:01
C'est clairement précisé dans MSDN (dans Petzold aussi), il faut utiliser WM_SETTEXT en interprocessus pour forcer le système à transférer le contenu de l'adresse mémoire d'un processus vers l'autre. Il est clair sinon qu'une adresse mémoire est invalide d'un processus l'autre.