EXEMPLE DE DLL ET EXE

cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014 - 12 juil. 2002 à 00:11
basamir Messages postés 335 Date d'inscription vendredi 21 octobre 2005 Statut Membre Dernière intervention 8 mars 2008 - 24 mai 2007 à 00:47
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/3988-exemple-de-dll-et-exe

basamir Messages postés 335 Date d'inscription vendredi 21 octobre 2005 Statut Membre Dernière intervention 8 mars 2008
24 mai 2007 à 00:47
Bonsoir,

comment faire passer une chaine de caractère par une dll, voici l'exemple que j'ai réalisé mais ça ne donne rien:
j'ai crée une 2ème fonction :
Public Function Coucou()
MsgBox "coucou"
End Function
Public Function Coucou1()
Dim a As String
a = "12345"
End Function
ensuite dans projet .exe, j'ai mis ça:
Private Sub Command1_Click()
Dim DLLTest As Object
Set DLLTest = CreateObject("DLL_TEST.ClsStart")
DLLTest.coucou
DLLTest.coucou1
Dim z As String
z = DLLTest.coucou1
Text1.Text = z
Set DLLTest = Nothing
End Sub

qu'est ce qu'il faut faire à votre avis
akella Messages postés 13 Date d'inscription lundi 13 novembre 2006 Statut Membre Dernière intervention 19 mars 2010
13 nov. 2006 à 06:48
je veux bien, mais il n'y a pas un moyen autre que de faire
("nom de l'objet"."nom de la fonction")

parce que c'est pas très pratique. Merci de me répondre
vbPink Messages postés 23 Date d'inscription mardi 8 août 2006 Statut Membre Dernière intervention 30 août 2006
8 août 2006 à 22:14
Je savais comment faire des DLLs mais je ne savais pas comment les utiliser dans mes projets (utile...), merci !

Sinon, pour éviter d'utilisater regsvr32, on peut toujours ajouter le projet DLL comme référence au projet EXE :)
Noxid Messages postés 78 Date d'inscription lundi 13 mai 2002 Statut Membre Dernière intervention 4 mai 2008
12 avril 2006 à 03:40
Merci pour cette explication courte et clair (court-éclair, je de mots... Non? Bon ok).
Bien utile pour moi, pour mes premiers pas dans les DLL! 9/10 :)
Manolitoos Messages postés 14 Date d'inscription samedi 10 septembre 2005 Statut Membre Dernière intervention 4 avril 2008
14 sept. 2005 à 11:57
Bonjour,

Comment faire pour exploiter une dll dans un VBScript ?
Merci d'avance,

Manolitoos
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
20 avril 2004 à 19:48
Salut, j'ai une question,
Est-il possible de créer une fonction telle que


Public Function Addition(Mt1 As Double, Mt2 As Double) As Double

Addition = Mt1 + Mt2

End Function

P.S. : Cette fonction est évidemment totalement imaginaire
Et comment y accéder ensuite

Merci bcp
++
cs_yannickt Messages postés 64 Date d'inscription lundi 25 août 2003 Statut Membre Dernière intervention 22 novembre 2011
19 mars 2004 à 02:54
j'ai une question... avec une activeX dll, on peut appeler une fonction à partir de l'application, après l'avoir déclaré, ce qui constitue essentiellement une assez bonne communication de l'application vers la dll. Mais comment fait-on pour inverser le processus: c'Est a dire, que la dll puisse communiquer avec l'application sans que l'application n'exécute aucune fonction. Dans un autre sens, je souhaiterais pouvoir exécuter une fonction, ou une commande quelconque, ou même utiliser les ressources de l'application, a partir de la dll ActiveX.
cs_yannickt Messages postés 64 Date d'inscription lundi 25 août 2003 Statut Membre Dernière intervention 22 novembre 2011
7 mars 2004 à 20:38
merci, ca viens de me débloquer suite à des heures et des heures de travail inutiles! Maintenant, je comprends mieux le principe des dll activeX!
SiZiOUS Messages postés 69 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 novembre 2006
15 janv. 2004 à 19:03
Je savais pas qu'en VB on peut pas faire de DLL... Je suis programmeur en Delphi. Je cherchais un exemple pour un ami afin qu'il adapte son EXE en DLL pour mon programme.

Mais il y a trop de contraintes... Par exemple enregistrer la DLL comme un OCX c'est trop embêtant. Merci d'avoir laissé ces commentaires, au moins je suis prévenu.
Rrominet Messages postés 133 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 24 novembre 2014 1
26 sept. 2003 à 07:43
Hmmm en fait je m'étais mal exprimé... :)

Le fichier MSVCRT.DLL est un fichier système. Généralement le Package d'installation VB va redémarrer l'ordi pour le mettre à jour s'il faut mais peut être que ça marche simplement en le copiant dans le répertoire courant...

Autre chose, de mon côté j'ai remarqué que quand je compilais ma DLL, parfois il me la compilait différemment (taille + grande de 5/10%) et qu'à ce moment elle était inutilisable à moins de la recompiler... (Bug VB ?)
lucky2222 Messages postés 92 Date d'inscription dimanche 14 juillet 2002 Statut Membre Dernière intervention 2 octobre 2006
25 sept. 2003 à 22:34
suite a ton message, j'ai rechercher sur googol.com le fichier MSVCRT.DLL , je suis arrivé sur un site qui me proposait de le telecharger, j'ai cliqué dessus! si il c'est passé quelque chose, je n'ai pas eu le temps de voir!)))

ensuite dans vb6 j'ai fais "complement/services des complements/actualiser tous les complements" en etant connecté au net
rien de visible non plus c'est passé, mais avec ces deux actions, maintenant ca marche ma DLL!

alors si le probleme arrive a quequ'un, il peut essayer la meme chose!

merci a tous! (j'ai pas tout compris, mais ca marche!!! c'est le secret de l'informatique))))
Rrominet Messages postés 133 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 24 novembre 2014 1
25 sept. 2003 à 22:02
Juste une petite info pour ceux qui n'arrivent pas tout le temps à faire fonctionner leurs ActiveX. Sous Windows NT 4 (même avec le SP6), il faut souvent mettre à jour le MSVCRT.DLL parce qu'il est trop ancien pour faire fonctionner la DLL...

Vu que j'en ai fait au boulot, je m'en suis rendu compte au fur et à mesure de mes tests que mes install créées sous Win 98 ne fonctionnaient pas forcément sous NT4 ou Win95, etc...

Voilà :)
lucky2222 Messages postés 92 Date d'inscription dimanche 14 juillet 2002 Statut Membre Dernière intervention 2 octobre 2006
25 sept. 2003 à 01:10
alors pour moi, j'ai un gros bleme!!!
j'ai charger ton zip, le projet du dll je l'ai enregistré en faisant "fichier/créer test_dll.dll" sur c:/
ton prog fonctionne parfaitement!
j'ai recopier texto tes ligne de commande dans une nouvelle form et un nouveau projet dll activx! et la rien ne marche !
effectivement, je ne suis pas passé par regsvr32.exe ! mais a quelle mometu l'utilise regsvr32.exe et surtout comment!
car je suis allé dans recherche fichier, je l'ai trouvé, double clic dessus, et la erreur, pas de dll declarer!
je suis un debutant en vb, en plus je n'ai pas les msdn, alors dur pour moi!
si tu pouvais m'expliqué a quel moment j'ai merdé dans ma copie de ton prog et comment réussir a m'en sortir! merci
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
23 août 2003 à 06:05
Sa se fait seulement en les langage puissant.
eka808 Messages postés 72 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 29 avril 2005
22 août 2003 à 16:12
Salut

moi j'aimerais savoir comment faire pour rajouter des paramètres à l'appel de la dll comme on le fait avec la ligne de commande et command() pour les exe.
Merci d'avance
Rrominet Messages postés 133 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 24 novembre 2014 1
22 juin 2003 à 13:55
Je vais tester ça un de ces jours...
JE travaille sur du VB au boulot et ce sera mieux que de travailler sur un EXE de 28 Mo...

Par contre, une question : ça ralentit/accélère le code d'utiliser des DLL ?
Point de vue espace disque ça prends +/- de place ?
Coolpit Messages postés 2 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 20 juin 2003
20 juin 2003 à 03:28
erf... ca marche desolé mais il me dit ke activeX ne peu creer cette element ... sinon torai pas la méthode pour acceder au fonction comme des API genre:
Declare Function aff Lib "Teste1DLL.dll" () As Long
ca serai bcp mieu.
salut!
Coolpit, toujour en quete du savoir!
cs_Hobby Messages postés 116 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 17 septembre 2008
29 avril 2003 à 02:53
Merci, voilà une chose que cherchais depuis longtemp.
Cela va me permetre de me faire ma propre "toolbox", plutot que de metre une chi... de routine identique dans me projet VB.

Mille fois merci.
Olivier
dedson Messages postés 6 Date d'inscription vendredi 10 mai 2002 Statut Membre Dernière intervention 6 septembre 2002
22 juil. 2002 à 12:39
En fait mon bojectif c'est justement d'apprendre à creer des dll.mais y a pas d'explications dans ton prog sur la procédure à suivre.Mais l'idée de démonter la creation de dll est vachement utile pour un débutant.
dedson Messages postés 6 Date d'inscription vendredi 10 mai 2002 Statut Membre Dernière intervention 6 septembre 2002
22 juil. 2002 à 12:37
Je débute en vb.Quelles sont les étapes à suivre pour faire marcher ton prog.En fait j'ai essayé le regsrv32.exe sur "DLL_test" mais ça marche po:fichier introuvable.
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
15 juil. 2002 à 22:19
Enfin,jveux dire que ASM est meilleur mais pas plus facile a aprendre que C
cs_steven007 Messages postés 150 Date d'inscription jeudi 24 janvier 2002 Statut Membre Dernière intervention 27 avril 2007
14 juil. 2002 à 15:27
tu crois?
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
13 juil. 2002 à 00:24
Pas sur que l'ASM c'est mieux que le C
cs_Alain Proviste Messages postés 908 Date d'inscription jeudi 26 juillet 2001 Statut Modérateur Dernière intervention 1 février 2015 2
12 juil. 2002 à 21:22
...dans mon coeur, que je préfère un milliard de fois le vb ou l'asm que ce truc à la sintax moche qu'est le C...
cs_Alain Proviste Messages postés 908 Date d'inscription jeudi 26 juillet 2001 Statut Modérateur Dernière intervention 1 février 2015 2
12 juil. 2002 à 20:44
C'est clair c'est bien pour comprendre mais cette histoire de regsvr32 ça fait chi...aque fois la même chose... Je pense que pour les Dlls, mieux veaux ( vaut ? ) utiliser C++ ( ou même l'asm, qui presque moins dur que le C après tout ), mais si j'ai pas le C...
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
12 juil. 2002 à 18:03
Désoler j'ai oublier de le préciser, faut enregitrer le DLL avec regsvr32.exe
etilegr Messages postés 70 Date d'inscription vendredi 22 février 2002 Statut Membre Dernière intervention 13 novembre 2003
12 juil. 2002 à 12:17
ce code ne marche pas chez moi, il faut une version professionnele ou entreprise?
cs_processus Messages postés 360 Date d'inscription vendredi 24 août 2001 Statut Membre Dernière intervention 9 juillet 2008 3
12 juil. 2002 à 11:48
Réponse à PierreF:
It's not possible, VB génère pas des vrai DLL, en fait, ce sont des DLL ActiveX instanciable.
cs_PierreF Messages postés 33 Date d'inscription mercredi 15 mai 2002 Statut Membre Dernière intervention 24 octobre 2003
12 juil. 2002 à 10:49
C'est cool ton prog moi je savait pas comment faire un DLL en vb. Maintenent je sais.

Et est-ce que tu sais faire une DLL VB qui n'utilise pas de classe? un peu comme celle de tu peut faire en C++, qui n'export pas une classe mais une où plusieur fonction ??

Merci
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
12 juil. 2002 à 00:11
C'est tout con je sais, mais au moin sa évite de fouiller dans une tonne de code.

A+
Rejoignez-nous