0/5 (2 avis)
Vue 12 661 fois - Téléchargée 826 fois
Private Sub BtdAlouerDll_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtdAlouerDll.Click Dim a As [Assembly] = [Assembly].LoadFrom(TxtCheminDLL.Text) Dim mytypes As Type() = a.GetTypes() Dim flags As BindingFlags = BindingFlags.NonPublic Or BindingFlags.Public Or BindingFlags.Static Or _ BindingFlags.Instance Or BindingFlags.DeclaredOnly Dim t As Type Dim Params() As Object For Each t In mytypes Dim mi As MethodInfo() = t.GetMethods(flags) Dim obj As [Object] = Activator.CreateInstance(t) Dim m As MethodInfo ReDim Params(0) Params(0) = "Message texte" For Each m In mi m.Invoke(obj, Params) Next m Next t End Sub
7 déc. 2011 à 10:51
J'ai crée une dll avec un "sub new", ainsi que les fonctions que j'appelle.
Lorsque j'appelle ma fonction, la dll est instancée, le sub new est appelé puis la fonction. Mais une fois la fonction utilisé, la dll reste instancié et je ne sais pas comment la "libérer" (si vous essayer d'appeler votre fonction, une fois terminée, vous ne pouvez pas supprimer la dll tant que le programme principal qui l'a appelé est encore ouvert).
Savez-vous comment faire? (j'ai posté ce commentaire sur ce code aussi (http://www.vbfrance.com/codes/APPELLER-DLL-DYNAMIQUEMENT-DANS-CODE_35700.aspx) car c'est le même problème)
20 juin 2006 à 16:03
http://www.vbfrance.com/codes/ALLOCATION-DYNAMIQUE-DLL-VB-NET-METHODES-SYSTEM-REFLECTION_35496.aspx
Les deux sources se completent, et vont me permettre d'enfin avancer dans mon systeme de plugin :)
Merci encore :D
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.