begin process at 2012 02 09 04:01:43
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

VB.NET

 > ALLOCATION DYNAMIQUE DE DLL EN VB.NET PAR LES MÉTHODES DE SYSTEM.REFLECTION

ALLOCATION DYNAMIQUE DE DLL EN VB.NET PAR LES MÉTHODES DE SYSTEM.REFLECTION


 Information sur la source

Note :
8,5 / 10 - par 2 personnes
8,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :VB.NET Source .NET ( DotNet ) Classé sous :dll, allocation, dynamique, reflection Niveau :Expert Date de création :10/01/2006 Vu / téléchargé :9 887 / 645

Auteur : fduchamp

Ecrire un message privé
Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

 Description

le code suivant permet d'allouer une dll dynamiquement, c'est à dire dans le code vb.
Dans certain cas, il peut être nécessaire de faire cette allocation en dynamique et non plus dans les références du projet et ensuite de faire appel aux procédures de la dll.

Source

  • 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
    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


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources de la même categorie

Source .NET (Dotnet) MODIFICATION DATE DE WINDOWS EN VB.NET ET VBA par us_30
Source avec Zip Source avec une capture Source .NET (Dotnet) ENVOI DE MAIL AVEC PIÈCE JOINTE par EhJoe
Source .NET (Dotnet) AMUSONS NOUS AVEC UN LABEL ^^ par Adn56
Source avec Zip Source avec une capture Source .NET (Dotnet) UN NAVIGATEUR INTERNET EN VB.NET par azrti
Source avec Zip Source .NET (Dotnet) CONVERSION DE DEVISE MONAITAIRE VIA UN SERVICE WEB par bigmonkey7

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture BOULE DE CRISTAL par BLUEBIBUBBLE
Source avec Zip Source avec une capture DÉPLACEMENT AVEC FLÈCHES DANS UN PAVÉ DE TEXTBOX 9X9 DYNAMIQ... par EhJoe
Source avec Zip Source .NET (Dotnet) DESSINER DYNAMIQUEMENT SUR UNE PICTUREBOX LIKE PAINTE par xave4552
Source avec Zip Source avec une capture Source .NET (Dotnet) GÉNÉRATEUR DE GRAPHIQUE par pascamau
Source avec Zip Source avec une capture Source .NET (Dotnet) IMPORTER UNE ASSEMBLY (DLL OU EXE) .NET ET NAVIGUER SES MEMB... par werdDomain

Commentaires et avis

Commentaire de LTourist le 20/06/2006 16:03:04

Une bonne source sur laquelle j'ai pu me baser pour faire un grand bon en avant, en mixant celle-ci et une autre source disponible ici:
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

Commentaire de EvilGost le 07/12/2011 10:51:51

Ce code fonctionne très bien, par contre, une fois la fonction utilisé, la dll reste instancé.
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)

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Appel de dll dynamique [ par webboy ] yo,J'ai X dll,test.dll , test2.dll, testX.dll....;a partir de mon programme je voudrais appele une d'entre elle dynamiquement par l'intermediaire d'u Reflection [ par MorpionMx ] Bonsoir a tous Voila, j'ai une dll qui implémente plusieurs méthodes static qui effectuent un traitement sur une image passée en param Allocation array dynamique impossible [ par Throna ] Bonjour tout le monde.Voila je dois faire un programme qui bidouille un fichier excel et qui doit generer un fichier python. Bref en fait je suis coin Stockage de nombre dans tableau avec allocation dynamique de la mémoire [ par Adoc5 ] Bonjour tout le monde,J'ai des valeurs dans un tableau Excel, je veux mettre ces valeurs dans un tableau stocké en mémoire avec allocation dynamique. un tableau stocké en mémoire avec allocation dynamique. [ par Adoc5 ] Bonjour tout le monde,J'ai des valeurs dans un tableau Excel, je veux mettre ces valeurs dans un tableau stocké en mémoire avec allocation dynamique. chargement/déchargement dynamique de DLL sous VB6 [ par jm2 ] Dans une appli VB6, j'utilise 2 DLL différentes suivant une condition que je ne connais qu'après démarrage de l'appli. Comment charger ou décharger dy DLL et allocation mémoire [ par Bebert37 ] Bonjour à tous,J'ai un petit problème de désallocation mémoire avec une DLL.Une Dll alloue de la mémoire pour une programme tièrce, lorsque ce progra DLL et allocation mémoire [ par Bebert37 ] Bonjour à tous,J'ai un petit problème de désallocation mémoire avec une DLL.Une Dll alloue de la mémoire pour une programme tièrce, lorsque ce progra DLL et allocation mémoire [ par Bebert37 ] Bonjour à tous,J'ai un petit problème de désallocation mémoire avec une DLL.Une Dll alloue de la mémoire pour une programme tièrce, lorsque ce progra Allocation dynamique de controle [ par anduril22 ] Salut !J'ai un petit problème quand je fait de l'allocation dynamique de controle (picturebox). L'affichage des contrôle se fait au fur et a mesure su


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,214 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales