[Reflection] Récupérer les paramètres d'un Delegate

Récupérer les paramètres d'un Delegate [Reflection] - C#/.NET managed - Programmation

Marsh Posté le 09-06-2006 à 16:09:50    

Ola,
 
J'ai un MemberInfo, en l'occurrence un Type.
Je sais qu'il s'agit d'un delegate (il hérite de MulticastDelegate pour être précis).
Je veux récupérer le type de retour et les paramètres, exactement comme pour une méthode.
Je ne VEUX PAS instancier d'objet.
 
Je sais qu'il existe une propriété 'Method' à la classe MulticastDelegate, mais pour ça il faut instancier.
Y-a-t-il un autre moyen ?  

Reply

Marsh Posté le 09-06-2006 à 16:09:50   

Reply

Marsh Posté le 13-06-2006 à 20:46:12    

Allez.... y'a bien un spécialiste de la Reflection sur ce forum ?

Reply

Marsh Posté le 14-06-2006 à 14:26:02    

_Mose_ a écrit :

Allez.... y'a bien un spécialiste de la Reflection sur ce forum ?

 



   


Code :
  1. [size=0]Assembly myAssembly = Assembly.LoadFrom(implClass+\\".dll\\" );
  2. foreach(Type type in myAssembly.GetTypes())
  3. {
  4. if(\\"Imprimante\\" == type.Name)
  5. {
  6. type.GetMethod(\\"nomMethod\\" )..[/size]

  

Un essai.... Je charge des dll par reflexion (1ere ligne).
Ensuite, je regarde la liste des classes, avec le GetTypes en deuxième ligne
Quand j'ai trouvé ma classe (ici Imprimante), j'ai des fonctions du style GetMethod(avec le nom)...

 

J'espere que ca peut te mettre sur la voie...

 

ps: je suis pas expert, donc si c'est pas ca, patapé  :D  

 

edit1 : saleté de balise code...  
edit2 : saleté bis... faut virer size, \" .. mais bon, on comprend ;)

Message cité 1 fois
Message édité par alien_nan le 14-06-2006 à 14:28:24
Reply

Marsh Posté le 14-06-2006 à 15:01:09    

alien_nan a écrit :

J'espere que ca peut te mettre sur la voie...

Hmmm.... je crois qu'on s'est pas compris :)
Sans la boucle, donne à type la valeur typeof(MouseEventHandler), et essaye d'en déduire que le delegate MouseEventHandler à besoin :
- d'un type de retour void
- d'un paramètre de type object nommé sender
- d'un second parametre de type MouseEventArgs nommé e
C'est ça que je cherche... :bounce:

alien_nan a écrit :

ps: je suis pas expert, donc si c'est pas ca, patapé  :D

Alllléééééééé juste un pti peu  :whistle:

Reply

Marsh Posté le 14-06-2006 à 18:10:53    

_Mose_ a écrit :

Hmmm.... je crois qu'on s'est pas compris  :)
Sans la boucle, donne à type la valeur typeof(MouseEventHandler), et essaye d'en déduire que le delegate MouseEventHandler à besoin :
- d'un type de retour
void
- d'un paramètre de type
object nommé sender
- d'un second parametre de type
MouseEventArgs nommé e
C'est ça que je cherche...  :bounce:  Alllléééééééé juste un pti peu  :whistle:

 


ok... moi je faisais de la reflexion sur une dll que je ne connais pas (sauf le nom d'une classe) et dont j'essayais de decouvrir les methodes...ce qui somme toute n'a rien a voir  :whistle:  
 
 

Reply

Marsh Posté le 12-07-2006 à 13:59:16    

up

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed