sibi12
Messages postés337Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention15 avril 2006
-
16 mars 2003 à 13:25
gblade
Messages postés85Date d'inscriptionsamedi 16 novembre 2002StatutMembreDernière intervention19 mai 2003
-
17 mars 2003 à 19:00
Bonjour je maitrise bien le VB et un peu le C et je suis dans mes debuts en ASM. J'aimerais incorporer du code ASM ds d'anciens programme VB pour les améliorer. Est-ce qu'il y moyen et comment dois-je faire?
gblade
Messages postés85Date d'inscriptionsamedi 16 novembre 2002StatutMembreDernière intervention19 mai 2003 16 mars 2003 à 14:23
Salut,
Je ne connais pas du tout VB, pas mal le C++ et assez d'ASM.
Alors, je ne peux pas te dire comment incorporer du code directement mais tu peux toujours créer des DLLs, des fichiers OBJ ou des objets COM.
BruNews
Messages postés21041Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 17 mars 2003 à 00:04
ASM direct dans VB, NENNI.
Si on code en asm c'est pour la vitesse, alors tu fournis ton code en dll. Le COM ferait perdre pratiquement le benef et faire du COM en asm c'est limite maso.
BruNews, ciao...
gblade
Messages postés85Date d'inscriptionsamedi 16 novembre 2002StatutMembreDernière intervention19 mai 2003 17 mars 2003 à 07:34
BruNews :
Faire du COM en ASM c'est très possible, j'ai déjà développé un composant ActiveX (qui faisait pas grand chose certe ;p) et beaucoup d'autres l'ont déjà fait avant moi... Mais pourquoi dis-tu que c'est un truc de maso parce-que si tu prends le C++, t'enlèves les MFC et les ATL, tu te retrouves avec la même difficulté quasiment. Evidemment, il y a plus de chances de faire une erreur mais c'est comme dans tout programme ASM, pas seulement COM ;p.
Bon c'est vrai que ce n'est pas la melleure possibilité parce-que comme tu dis, pour la vitesse c'est pas génial mais c'était juste pour l'idée ;).
BruNews
Messages postés21041Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 17 mars 2003 à 08:09
oui oui gblade, on fait tout en asm mais ici c'etait reponse pour un cas specifique. J'ai fait du COM pendant 1 an et je n'en ferai plus. MFC et ATL c'est pas pour moi.
BruNews, ciao...
Vous n’avez pas trouvé la réponse que vous recherchez ?
sibi12
Messages postés337Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention15 avril 2006 17 mars 2003 à 15:46
Merci pour vos reponses. donc ils suffit de compiler une DLL et de l'utiliser en VB si j'ai bien compris... Au fait c quoi les MFC et ATL et la programmation COM est elle si différente de l'ASM
BruNews
Messages postés21041Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 17 mars 2003 à 15:58
MFC et ATL faits pour codeurs C/C++ presses, moi j'aime pas mais c'est selon.
COM faisable en asm mais tres difficile.
Neaucoup de livres sur ces sujets, msdn est fait our cela.
BruNews, ciao...
gblade
Messages postés85Date d'inscriptionsamedi 16 novembre 2002StatutMembreDernière intervention19 mai 2003 17 mars 2003 à 19:00
Pour préciser ce que BruNews a dit, COM est un standard de MS, MFC et ATL sont des librairies que je connais pas du tout car je n'en ai jamais eu l'usage (comme dit BruNews c'est pour les programmeur pressés et je ne le suis pas ;).
Pour être plus précis, MFC c'est assez généraliste comme lib; ATL c'est pour créer des composants ActiveX (une forme de COM) normallement.
Pour COM, c'est un standard qui permet de créer des librairies portables OO. Je suppose que tu es au courant mais chaque langage et chaque compilo a sa propre façon de décorer les noms de ses fonctions (ou procédures). Donc on se retrouve avec des DLLs qui exportent des fonctions non reconnues par d'autres langages ou compilos... Pour arriver à faire ça en fait, les objets COM ont seulement des méthodes virtuelles (qui utilisent le dynamic linkage pour l'appel); de ce fait, COM est un standard lent. Donc au possible, faire des DLLs, si on y est obligé, faire un composant COM.
Si tu veux plus d'info sur COM, va sur MSDN mais c'est très axé sur la création de composants avec MFC ou ATL et pas à la main.