IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

System . Reflection . Assembly


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Novembre 2006
    Messages : 150
    Par défaut System . Reflection . Assembly
    Bonsoir,

    J'aimerais utiliser les réflections pour pouvoir me servir de MessageBox et de StrCmp, mais je ne sais pas vraiment comment procéder

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    		Dim asm As System.Reflection.Assembly 
    		asm = System.Reflection.Assembly.LoadFrom("C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Windows.Forms.dll")
     
     
    		'Type t = asm.GetType(system.windows.forms.dll)
     
    		MessageBox.Show "test"
    Merci pour votre aide

  2. #2
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Par curiosité, ça va te servir à quoi de faire ça ?

    Voici un article qui détaille comment charger un assembly et comment appeler des méthodes statiques : http://www.codeproject.com/Articles/...n-and-invoking
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  3. #3
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Novembre 2006
    Messages : 150
    Par défaut
    Citation Envoyé par Matt07 Voir le message
    Par curiosité, ça va te servir à quoi de faire ça ?

    Voici un article qui détaille comment charger un assembly et comment appeler des méthodes statiques : http://www.codeproject.com/Articles/...n-and-invoking
    Merci pour le lien , j'avais déja vu ce site et j'ai trop de mal à voir ce qu'il faut faire...
    ça me permet d'utiliser des fonctions connus qui ne sont pas chargées automatiquement dans mon framework

  4. #4
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    En gros si tu regardes le code fourni dans l'article, il charge l'assembly, puis stocke les différents types dans le tableau TypesInAssembly.

    Ensuite il récupère le type dont il a besoin (dans son cas c'est le type qui a l'indice 0 dans le tableau TypesInAssembly), puis il appelle la méthode InvokeMember() dans laquelle il indique le nom de la méthode à appeler entre autre.

    Donc pour toi ça donnerait un truc du genre :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    TypesInAssembly[0].InvokeMember("Show", 
               System.Reflection.BindingFlags.InvokeMethod, System.Type.DefaultBinder, 
               "", new object[] { "Message" });

    Cet exemple suppose que le type MessageBox ait également l'indice 0 dans TypesInAssembly...
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

Discussions similaires

  1. Réponses: 1
    Dernier message: 23/07/2014, 14h33
  2. [MVVM] Que sont les System.Reflection.TargetInvocationException ?
    Par rafoufoun dans le forum Windows Phone
    Réponses: 2
    Dernier message: 25/06/2012, 09h26
  3. Réponses: 3
    Dernier message: 22/10/2010, 00h18
  4. Réponses: 1
    Dernier message: 24/12/2009, 11h53
  5. Réponses: 5
    Dernier message: 27/01/2006, 18h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo