Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 2021
-
12 mai 2009 à 23:47
LandTech
Messages postés73Date d'inscriptiondimanche 14 octobre 2007StatutMembreDernière intervention28 février 2011
-
29 mai 2009 à 18:26
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
LandTech
Messages postés73Date d'inscriptiondimanche 14 octobre 2007StatutMembreDernière intervention28 février 2011 29 mai 2009 à 18:26
Salut,
D'accord Banbiou, pas de problème.
Bon courage.
Voilà.
banbiou
Messages postés70Date d'inscriptionmercredi 6 février 2008StatutMembreDernière intervention 4 août 2015 29 mai 2009 à 15:01
Merci plus qu'à décripter ton message..^^
Si j'ai des soucis je te refais signe si tu veux bien.
Merci en tout cas.
LandTech
Messages postés73Date d'inscriptiondimanche 14 octobre 2007StatutMembreDernière intervention28 février 2011 28 mai 2009 à 19:53
Salut,
Pour commencer, Banbiou, l'API SendMessage n'a rien à voir avec VB, c'est une fonction de l'API Windows, qui marche donc avec toutes les applis Windows.
Ensuite, pour entrer le texte dans un control, il faut que tu connaisse le handle de la fenêtre que tu peux trouver avec l'API FindWindow.
Une fois que tu connais ce handle, tu navigue dans les controls de la fenêtre, et tu trouve le handle du control dans lequel tu veux entrer le texte.
Puis, tu fais un SendMessage SETTEXT sur ce handle en lui passant en paramètre ton texte. Et le tour est joué !
Voilà.
banbiou
Messages postés70Date d'inscriptionmercredi 6 février 2008StatutMembreDernière intervention 4 août 2015 28 mai 2009 à 17:57
oui LandTech, je veux bien mais, peux etre que ma question va etre débile, comment introduire les phrases (que j'aurai récupéré grace a SendMessage) dans mon appli qui est Agir (Saturn) ???
il n'y a pas de VB dans Saturn. Je sais que je peux recevoir un texte en ASCII mais je ne sais pas comment le placer au bon endroit...
Merci en tout cas de prendre du tps pour moi.. ^^
LandTech
Messages postés73Date d'inscriptiondimanche 14 octobre 2007StatutMembreDernière intervention28 février 2011 27 mai 2009 à 19:29
Salut,
Sinon, si c'est du texte que tu veux placer dans une textbox, richtextbox ou même un label, ou bouton, et que tu es sous windows, tu peux te servir de l'API Windows SendMessage et du "message" SETTEXT.
Voilà.
banbiou
Messages postés70Date d'inscriptionmercredi 6 février 2008StatutMembreDernière intervention 4 août 2015 27 mai 2009 à 11:41
Heureusement que tu as mis des coms oui... :p
Lorsque je t'ai dis débutant, c'est débutant...lol
Faut le dire et pas avoir honte : je comprend le raisonnement mais serai incapable de le faire.
Tu ne pourrais pas m'ouvrir l'esprit ;), me faire suivre quelques programmes de petit débutant où bien le point de départ qui à toi t'a permis de commencer ...?
Merci.
cs_comme
Messages postés122Date d'inscriptiondimanche 19 mars 2006StatutMembreDernière intervention18 juillet 2009 21 mai 2009 à 13:20
Souvent les réponses de RENFIELD sont convaincantes des quelles nous avons appris beaucoup ,mais cette fois il n'a pas pu devoiler cette communication avec un exeple convainquant....ni de viser notre ignorance;;......
PROTEUS91
Messages postés156Date d'inscriptionmardi 4 novembre 2003StatutMembreDernière intervention28 décembre 2010 20 mai 2009 à 17:45
C'est sure banbi :p
Meme en lisant les détails que j'ai mis dans le module ca ne te parait pas clair ?
banbiou
Messages postés70Date d'inscriptionmercredi 6 février 2008StatutMembreDernière intervention 4 août 2015 20 mai 2009 à 15:55
oui mais pour les débutants comme moi les lignes de code ou certaines applications reste compliquées à comprendre lorsque ce n'est pas réalisé avec un interface graphique...
Sinon pour sendkeys, merci, je vais y réfléchir à deux fois si je l'utilise.
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 20 mai 2009 à 12:57
Sendkeys, c'est dangereux, je le repète.
deux applis qui communiquent ?
ben oui, demander des nouvelles de la famille, tout ça...
Dans la vie de tous les jours, tu utilises des applis qui communiquent entre elles...
ton navigateur et le serveur web qui est en face, par exemple...
le but est de lancer des opérations, et de demander des infos accessible a l'autre application...
banbiou
Messages postés70Date d'inscriptionmercredi 6 février 2008StatutMembreDernière intervention 4 août 2015 20 mai 2009 à 12:53
Bonjour
Comme,
je suis d'ac. avec toi, moi même je comprend pas tout car je suis également débutant... Mais j'essaye de plus en plus ;)
LandTech,
je vais me renseigner sur le SendKeys, mais comme dit juste au dessus, moi etre débutant...
Merci qd même, j'aime les choses compliquées.
cs_comme
Messages postés122Date d'inscriptiondimanche 19 mars 2006StatutMembreDernière intervention18 juillet 2009 20 mai 2009 à 00:13
Mes excuses d'abord pour cette question: j'aime bien savoir qu'est ce qu'une communication entre 2 applications,nous les débutants ,nous ne commprenons pas votre discussion ci dessus,je fais des applications vb ,des connections ado,mis jamais entendu que deux applictions peuvent communiquer....comment... et quel est le but....... Merci d'expliquer
LandTech
Messages postés73Date d'inscriptiondimanche 14 octobre 2007StatutMembreDernière intervention28 février 2011 19 mai 2009 à 18:15
Salut
J'oubliais, je travaille en .Net 2.0 donc si vous pouviez me fournir une solution dans ce langage et sans DLL à ajouter, ce serai bien merci encore.
Voila
LandTech
Messages postés73Date d'inscriptiondimanche 14 octobre 2007StatutMembreDernière intervention28 février 2011 19 mai 2009 à 18:00
Salut,
Pour commencer, très bon code PROTEUS91.
Pour Banbiou, tu pourrais utiliser le très vieux SendKeys, pas top mais au moins, ça marche.
Et moi, j'ai une question, comment on peut faire pour faire ouvrir un fichier à une application quand celle ci est déja ouverte, genre Notepad++ ou Visual C++.
Voila et merci d'avance.
banbiou
Messages postés70Date d'inscriptionmercredi 6 février 2008StatutMembreDernière intervention 4 août 2015 19 mai 2009 à 14:23
Renfield,
ce que je voudrais faire avec agir c'est :
j'ai une application dans Excel (avec des bout de code...) qui, en remplissant des carractéristiques dans des cellules, me donne au final un texte. C'est ce texte que je veux mettre dans Agir (saturn).
Saturn est "tres tres vieux" donc très peu de renseignements...(env 1980)
Merci d'avance.
dc46
Messages postés20Date d'inscriptionmardi 6 avril 2004StatutMembreDernière intervention 7 juillet 2022 19 mai 2009 à 13:13
Merci Renfield
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 19 mai 2009 à 10:13
non, SendMessage ne s'y prête guère.
tournes toi vers les Sockets (ou les Mailslots)
dc46
Messages postés20Date d'inscriptionmardi 6 avril 2004StatutMembreDernière intervention 7 juillet 2022 19 mai 2009 à 10:09
Bonjour,
une question, peut-etre stupide, ce code permet-il de faire communiquer deux applications situés sur deux machines en réseaux.
Merci et félicitations.
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 18 mai 2009 à 14:56
que souhaites tu faire faire a Saturn ? (connais pas, mais bon)
PROTEUS91
Messages postés156Date d'inscriptionmardi 4 novembre 2003StatutMembreDernière intervention28 décembre 2010 18 mai 2009 à 14:49
Le probleme c'est que dans notres cas les deux applications qui communiquent ensemble sont deux applications developpées par nos soins (toi y compris) dans le cas ou se sont des applications developpées par des tiers il faut obligatoirement passer par des API si elles sont disponible, desolé dans ton cas je ne saurai te venir en aide.
banbiou
Messages postés70Date d'inscriptionmercredi 6 février 2008StatutMembreDernière intervention 4 août 2015 18 mai 2009 à 13:55
Bonjour,
tout d'abord, merci pour les applications que vous développer sans arrêt. J'ai toujours du mal à suivre mais j'aime ça...
Peux être que ma demande n'a rien à voir avec ce bout de code, mais je vous la pose quand même car je souhaiterai faire communiquer dans logiciel ensemble : Excel et Agir (Saturn). Celui ci est un vieux logiciel de traitement de taches. Je me suis renseigné sur la fonction DDE mais vu mon niveau, je comprend pas tout...
Si quelqu'un peut me venir en aide, je lui serais reconnaissant.
Merci,
Banbiou
PROTEUS91
Messages postés156Date d'inscriptionmardi 4 novembre 2003StatutMembreDernière intervention28 décembre 2010 13 mai 2009 à 18:18
C'est un peu le jeu de la chevre qui demande a une vache comment faire le meme lait :) il faut que je regarde ton code, apres promis je te tiens o courant. O fait ta vu je me suis pas trompé t bien domicilié sur ce site t le premier a avoir repondu :p
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 13 mai 2009 à 16:05
la virtual machine qui execute le code VB coupe net l'execution.
ma dll interroge la fonction EbMode pour questionner la VM sur son etat receptif ou non
PROTEUS91
Messages postés156Date d'inscriptionmardi 4 novembre 2003StatutMembreDernière intervention28 décembre 2010 13 mai 2009 à 16:02
Merci Renfield, pour le message j'irai jeter un coup d'oeil dès que j'aurai une seconde. :) Mais a defaut de vouloir utiliser ta subclass qui je suis sure doit certainement repondre a mes attente n'est il pas possible de dire au programme de couper l'écoute quand visual basic passe en mode point d'arret ?
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 12 mai 2009 à 23:47
tu peux utiliser mon module de subclassing.
en mode IDE, il injecte du code assembleur qui sera utilisé comme WindowProc.
Si VB6 est en point d'arret, il n'est pas receptif... Si on lui transmet un message, boum.
Enfin, en temps normal... là, la procédure ASM detecte que VB6 ne peux pas réagir, et donne le message a traiter à Windows.
En mode Exe, comme tu le sais surement, pas de soucis.
29 mai 2009 à 18:26
D'accord Banbiou, pas de problème.
Bon courage.
Voilà.
29 mai 2009 à 15:01
Si j'ai des soucis je te refais signe si tu veux bien.
Merci en tout cas.
28 mai 2009 à 19:53
Pour commencer, Banbiou, l'API SendMessage n'a rien à voir avec VB, c'est une fonction de l'API Windows, qui marche donc avec toutes les applis Windows.
Ensuite, pour entrer le texte dans un control, il faut que tu connaisse le handle de la fenêtre que tu peux trouver avec l'API FindWindow.
Une fois que tu connais ce handle, tu navigue dans les controls de la fenêtre, et tu trouve le handle du control dans lequel tu veux entrer le texte.
Puis, tu fais un SendMessage SETTEXT sur ce handle en lui passant en paramètre ton texte. Et le tour est joué !
Voilà.
28 mai 2009 à 17:57
il n'y a pas de VB dans Saturn. Je sais que je peux recevoir un texte en ASCII mais je ne sais pas comment le placer au bon endroit...
Merci en tout cas de prendre du tps pour moi.. ^^
27 mai 2009 à 19:29
Sinon, si c'est du texte que tu veux placer dans une textbox, richtextbox ou même un label, ou bouton, et que tu es sous windows, tu peux te servir de l'API Windows SendMessage et du "message" SETTEXT.
Voilà.
27 mai 2009 à 11:41
Lorsque je t'ai dis débutant, c'est débutant...lol
Faut le dire et pas avoir honte : je comprend le raisonnement mais serai incapable de le faire.
Tu ne pourrais pas m'ouvrir l'esprit ;), me faire suivre quelques programmes de petit débutant où bien le point de départ qui à toi t'a permis de commencer ...?
Merci.
21 mai 2009 à 13:20
20 mai 2009 à 17:45
Meme en lisant les détails que j'ai mis dans le module ca ne te parait pas clair ?
20 mai 2009 à 15:55
Sinon pour sendkeys, merci, je vais y réfléchir à deux fois si je l'utilise.
20 mai 2009 à 12:57
deux applis qui communiquent ?
ben oui, demander des nouvelles de la famille, tout ça...
Dans la vie de tous les jours, tu utilises des applis qui communiquent entre elles...
ton navigateur et le serveur web qui est en face, par exemple...
le but est de lancer des opérations, et de demander des infos accessible a l'autre application...
20 mai 2009 à 12:53
Comme,
je suis d'ac. avec toi, moi même je comprend pas tout car je suis également débutant... Mais j'essaye de plus en plus ;)
LandTech,
je vais me renseigner sur le SendKeys, mais comme dit juste au dessus, moi etre débutant...
Merci qd même, j'aime les choses compliquées.
20 mai 2009 à 00:13
19 mai 2009 à 18:15
J'oubliais, je travaille en .Net 2.0 donc si vous pouviez me fournir une solution dans ce langage et sans DLL à ajouter, ce serai bien merci encore.
Voila
19 mai 2009 à 18:00
Pour commencer, très bon code PROTEUS91.
Pour Banbiou, tu pourrais utiliser le très vieux SendKeys, pas top mais au moins, ça marche.
Et moi, j'ai une question, comment on peut faire pour faire ouvrir un fichier à une application quand celle ci est déja ouverte, genre Notepad++ ou Visual C++.
Voila et merci d'avance.
19 mai 2009 à 14:23
ce que je voudrais faire avec agir c'est :
j'ai une application dans Excel (avec des bout de code...) qui, en remplissant des carractéristiques dans des cellules, me donne au final un texte. C'est ce texte que je veux mettre dans Agir (saturn).
Saturn est "tres tres vieux" donc très peu de renseignements...(env 1980)
Merci d'avance.
19 mai 2009 à 13:13
19 mai 2009 à 10:13
tournes toi vers les Sockets (ou les Mailslots)
19 mai 2009 à 10:09
une question, peut-etre stupide, ce code permet-il de faire communiquer deux applications situés sur deux machines en réseaux.
Merci et félicitations.
18 mai 2009 à 14:56
18 mai 2009 à 14:49
18 mai 2009 à 13:55
tout d'abord, merci pour les applications que vous développer sans arrêt. J'ai toujours du mal à suivre mais j'aime ça...
Peux être que ma demande n'a rien à voir avec ce bout de code, mais je vous la pose quand même car je souhaiterai faire communiquer dans logiciel ensemble : Excel et Agir (Saturn). Celui ci est un vieux logiciel de traitement de taches. Je me suis renseigné sur la fonction DDE mais vu mon niveau, je comprend pas tout...
Si quelqu'un peut me venir en aide, je lui serais reconnaissant.
Merci,
Banbiou
13 mai 2009 à 18:18
13 mai 2009 à 16:05
ma dll interroge la fonction EbMode pour questionner la VM sur son etat receptif ou non
13 mai 2009 à 16:02
12 mai 2009 à 23:47
en mode IDE, il injecte du code assembleur qui sera utilisé comme WindowProc.
Si VB6 est en point d'arret, il n'est pas receptif... Si on lui transmet un message, boum.
Enfin, en temps normal... là, la procédure ASM detecte que VB6 ne peux pas réagir, et donne le message a traiter à Windows.
En mode Exe, comme tu le sais surement, pas de soucis.
voir:
http://www.vbfrance.com/codes/MODULE-SUBCLASSER_38442.aspx