Récupération événements objets COM (déjà codé)

Résolu
cs_MELISA Messages postés 72 Date d'inscription mardi 16 avril 2002 Statut Membre Dernière intervention 12 février 2008 - 26 juil. 2007 à 09:55
cs_MELISA Messages postés 72 Date d'inscription mardi 16 avril 2002 Statut Membre Dernière intervention 12 février 2008 - 26 juil. 2007 à 11:36
Bonjour,

Je débute en C# sur VS2003 sous WXP Pro.
Je développe une application Windows dans laquelle j'inclus un objet COM déjà codé ayant des événements.

Ma question est donc la suivante: comment faire pour récupérer les événements de l'objet COM ajouté?

Merci d'avance pour vos retours.

6 réponses

Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
26 juil. 2007 à 10:59
Surtout pas dans InitializeComponent  , dans le constructeur de ta forme par exemple. Si ce n'est pas un évènement statique tu dois allouer l'objet avec 'new' avant, sinon tu as une référence 'null', d'ou le message d'erreur je pense.
3
Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
26 juil. 2007 à 10:20
Salut, c'est la même chose qu'avec un objet .NET. Dans l'explorateur de projet de Visual Studio double clique sur ton objet COM ça va ouvrir l'explorateur d'objets et tu verras le nom des événements qu'il possède.
0
cs_MELISA Messages postés 72 Date d'inscription mardi 16 avril 2002 Statut Membre Dernière intervention 12 février 2008
26 juil. 2007 à 10:32
Merci pour l'info.

Peux-tu me dire comment je peux lever un de ses événements?

J'ai fait une inscription à l'événement au gestionnaire d'événements mais j'ai l'erreur suivante: "La référence d'objet n'est pas définie à une instance d'un objet"
0
Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
26 juil. 2007 à 10:45
Tu ne peux pas lever l'un de ses évènements.. seul l'objet qui contient l'évènement peut le lever. Mais tu peux t'inscrire à cet évènement :

MyObject myObject = new MyObject( );
myObject.DoSomething += new EventHandler( MyObject_DoSomething );




private void MyObject_DoSomething( object sender, EventArgs e )
{
 // ..
}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_MELISA Messages postés 72 Date d'inscription mardi 16 avril 2002 Statut Membre Dernière intervention 12 février 2008
26 juil. 2007 à 10:51
OK!

Dernière question: où dois-je inclure ce code? J'ai essayé dans la région InitializeComponent du form.cs mais là j'ai toujours l'erreur suivante:
"La référence d'objet n'est pas définie à une instance d'un objet"
0
cs_MELISA Messages postés 72 Date d'inscription mardi 16 avril 2002 Statut Membre Dernière intervention 12 février 2008
26 juil. 2007 à 11:36
Ouah! C'est impeccable.

Merci pour tout
0
Rejoignez-nous