UTILISER DES OBJETS EXTERNE DANS VOS PROJETS (ADDIN)

cs_Warning Messages postés 516 Date d'inscription samedi 3 février 2001 Statut Membre Dernière intervention 24 octobre 2006 - 28 juin 2004 à 18:12
Enneka_NK Messages postés 18 Date d'inscription jeudi 8 juillet 2004 Statut Membre Dernière intervention 19 avril 2006 - 23 avril 2006 à 15:38
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/24092-utiliser-des-objets-externe-dans-vos-projets-addin

Enneka_NK Messages postés 18 Date d'inscription jeudi 8 juillet 2004 Statut Membre Dernière intervention 19 avril 2006
23 avril 2006 à 15:38
Je pige pas du tout à quoi ca sert... Je ne veux pas dire que je pense que ca n'sert à rien! Mais je pige rien là. A quoi ca sert de lier des fichiers de ce type?
Quelqu'un peut m'expliquer le principe de ce "Addon pour vb"?

Merki bcp!
++
NK
shadowmoy Messages postés 340 Date d'inscription jeudi 25 juillet 2002 Statut Membre Dernière intervention 25 août 2007
1 janv. 2005 à 13:01
en gros si j'ai bien compris tu utilise un module vide pour creer des adresses de fonctions dans ton exe puis à la compilation tu injecte le obj ayant les memes nom de fonction pour recuperer leur adresse et les executer

donc si je me trompe pas (j'ai bien dit si) on pourrai aussi bien remplacer des fonctions de vb par des fonctions dans un obj

donc si on avait le obj de la dll msvbvm6.dll on pourrai l'injecter dans vb et rendre l'exe autonome ?
(en theorie) bien sur je vois pas comment extraire le obj d'une dll donc deja c mort.

en gros suffit de coder une dll avec des export et s'assurer que le nom des fonctions sont les meme ?

un truc tout bete serait de faire une dll en C pour des fonctions comme Left(..) et Right(..) et tester le Gain de vitesse de la version en C via le .obj et la version originale de vb

si il a un gain réel alors on pourrai s'amuser a recoder
beaucoup de fonctions vb dans un fichier obj pour remplacer celles de vb est accellerer vb

ben dis moi si c faisable ;op
cs_JLN Messages postés 371 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 17 juin 2013
30 oct. 2004 à 13:37
Un exemple serait le bienvenu ! et je note 10 parce qu'il n'y a pas plus haut !
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
10 sept. 2004 à 23:12
Je ne sais pas si j'ai bien compris.
Peut-on par exemple compiler des dll telles quel VB6FR.dll avec l'exe afin de supprimer sa dependance ?
Dragonmaster Messages postés 126 Date d'inscription vendredi 20 août 2004 Statut Membre Dernière intervention 3 avril 2009
10 sept. 2004 à 18:50
Menu projet > ajouter un fichier...
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
5 août 2004 à 11:34
Bonjour,
tout cela m'a l'air vraiment interressant, mais je ne vois pas comment ça marche.
Quelqu'un peut-il me dire comment ajouter un fichier au projet ?
Quelle est la différence avec les fichier .res ?
Merci d'avance
++
DeadlyPredator Messages postés 222 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 30 juin 2008
3 juil. 2004 à 05:39
Ouais. C'est vrai. J'ai regardé. Mais j'ai une solution assez (trop) simple pour compiler comme on veut : remplacer Link par un exe qui modifira la ligne de commande et qui va la renvoyer au vrai Link. Je travaille là dessu...

p.s. Moi, j'ai une opignion sur VBFrance : Ici, on partage ou source supprimée. Mais évidement, le problème c'est les Tatas qui eu volent les oeuvres et les signent de leur nom (je sais qu'il y en a qui se reconnaissent :-). Quand j'utilise un code qui n'est pas de moi, je le dit dans le module. Évidement, c'est mon opignion donc oubliez ça de ma part un projet sans source de ma part. De telles oeuvres méritent un profond respect de notre part.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
3 juil. 2004 à 02:12
Pour les sources, je pense que l'on peux s'orienter sur une autre de Eb, qui permettait de générer des Dll avec un fichier .def

la même technique est ici utilisée, je pense
DeadlyPredator Messages postés 222 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 30 juin 2008
2 juil. 2004 à 23:29
Bon puisque les soucres ne sont pas là, j'aimerais décrire un peu ce qui ce passe :
1-VB compile tout vos module, classe avec le fichier C2.exe. cela donne des obj
2-Le programme Link lie tout les obj ensembles :
(C'est là que le Add-In de EB intervient en modifiant la ligne de commande : il détourne sûrement les appels avec HookDLLCall)
Microsoft (R) Incremental Linker Version 6.00.8447
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.

usage: LINK [options] [files] [@commandfile]

options:

/ALIGN:#
/BASE:{address|@filename,key}
/COMMENT:comment
/DEBUG
/DEBUGTYPE:{CV|COFF}
/DEF:filename
/DEFAULTLIB:library
/DELAY:{NOBIND|UNLOAD}
/DELAYLOAD:dll
/DLL
/DRIVER[:{UPONLY|WDM}]
/ENTRY:symbol
/EXETYPE:DYNAMIC
/EXPORT:symbol
/FIXED[:NO]
/FORCE[:{MULTIPLE|UNRESOLVED}]
/GPSIZE:#
/HEAP:reserve[,commit]
/IMPLIB:filename
/INCLUDE:symbol
/INCREMENTAL:{YES|NO}
/LARGEADDRESSAWARE[:NO]
/LIBPATH:dir
/LINK50COMPAT
/MACHINE:{ALPHA|ARM|IX86|MIPS|MIPS16|MIPSR41XX|PPC|SH3|SH4}
/MAP[:filename]
/MAPINFO:{EXPORTS|FIXUPS|LINES}
/MERGE:from=to
/NODEFAULTLIB[:library]
/NOENTRY
/NOLOGO
/OPT:{ICF[,iterations]|NOICF|NOREF|NOWIN98|REF|WIN98}
/ORDER:@filename
/OUT:filename
/PDB:{filename|NONE}
/PDBTYPE:{CON[SOLIDATE]|SEPT[YPES]}
/PROFILE
/RELEASE
/SECTION:name,[E][R][W][S][D][K][L][P][X]
/STACK:reserve[,commit]
/STUB:filename
/SUBSYSTEM:{NATIVE|WINDOWS|CONSOLE|WINDOWSCE|POSIX}[,#[.##]]
/SWAPRUN:{CD|NET}
/TSAWARE[:NO]
/VERBOSE[:LIB]
/VERSION:#[.#]
/VXD
/WARN[:warninglevel]
/WINDOWSCE:{CONVERT|EMULATION}
/WS:AGGRESSIVE

3-Il en résulte un Exe

4-Si vous parlez Allemand, il y a un éxeclent article (sûrement car la traduction est à chier) :

http://www.activevb.de/tutorials/tut_einsprungpunktdll/einsprungpunktdll.html

5-S.V.P. EB, LES SOURCES!!!
Afyn Messages postés 608 Date d'inscription samedi 3 août 2002 Statut Membre Dernière intervention 22 décembre 2016
30 juin 2004 à 19:03
C une liaison statique ?

Et les fonctions importées sont chargées en mémoire ?

Ca doit encore être EBoustouflant ... !

Yop /!
Afyn
Navedac

(Je propose que l'on décerne l'ordre du mérite à EB ?)

Yop
DeadlyPredator Messages postés 222 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 30 juin 2008
29 juin 2004 à 19:58
Et pour les sources?
cs_Warning Messages postés 516 Date d'inscription samedi 3 février 2001 Statut Membre Dernière intervention 24 octobre 2006 2
29 juin 2004 à 19:49
ben on peut tout inclure apparement ... VB créé des .obj a lié pour la compilation donc on peut y inclure tout type d'executable précompilé je pense... j'ai pa bien regardé encore mais ça semble excellent. Mais je crois pas que ça puisse rendre vb autonome :/. koike
DeadlyPredator Messages postés 222 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 30 juin 2008
29 juin 2004 à 18:36
WOW donc si je comprend bien, avec ça, on peut importer des éléments de librairies externes et les rentrer dans l'EXE donc on aurait pu besoin de la librairie. Peut-t'on importer des fonctions de DLLs (ou de tlb)?
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
29 juin 2004 à 12:58
C'est que tu pourrais finir par rendre VB autonome......

Je sais deja que tu aime bien ne pas trainer tout un tas de dll, on peux désormais le faire avec ton code....

j'attends la suite ;)
cs_moustachu Messages postés 1079 Date d'inscription jeudi 14 novembre 2002 Statut Membre Dernière intervention 1 janvier 2012
29 juin 2004 à 11:41
>et bien si vous ne l'avez pas deja compris ...
Je sens que ça va être bien... mais je sens aussi que j'ai pas encore compris :o(

++
Moustachu
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
28 juin 2004 à 20:51
Voilà qui devrai permettre de booster encore un peu plus VB !
cs_Warning Messages postés 516 Date d'inscription samedi 3 février 2001 Statut Membre Dernière intervention 24 octobre 2006 2
28 juin 2004 à 18:12
Alors là je sais pas quoi dire! je sais pas comment tu nous a pondu ça mais c'est trop excellent ! si si jte jure ;)
Rejoignez-nous