cs_carvals
Messages postés50Date d'inscriptionlundi 20 novembre 2000StatutMembreDernière intervention23 janvier 2008
-
21 janv. 2008 à 20:31
cs_carvals
Messages postés50Date d'inscriptionlundi 20 novembre 2000StatutMembreDernière intervention23 janvier 2008
-
22 janv. 2008 à 22:42
Bonjour,
Question surement debile mais bon....
J'ai un lecteur connecter a de l'usb.
Une dll en csharp pour discuter avec
Un prog Vb.NET
Dans ce prog J'ai une classe qui controle le lecteur via la dll et dans laquelle j'ai un background worker qui tourne en permance. Lorsque le lecteur detecte quelque chose il excute les functions de ma classe et me renvoi un evenement dans un winform(s)..
je voudrais instancier ma classe pour toute l'appli une seule fois au demarrage afin que elle et ses evenements soient accessibles partout.... help.
J'ai essaye de l'instancier par un module ce qui marche pas trop mal mais je ne recupere pas les evenements... et si je mes dans mes winforms public withevents blabla as new MaClasse() j'obtiens un pb d'instanciation...
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 21 janv. 2008 à 21:42
salut
en VB6 en tout cas on ne peut pas instancier une classe WITHEVENTS comme tu le fais :
public withevents blabla as <strike>new</strike> MaClasse<strike>()</strike>
et ensuite (dans le form_load très logiquement) tu instancies avec = new MaClasse
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
cs_carvals
Messages postés50Date d'inscriptionlundi 20 novembre 2000StatutMembreDernière intervention23 janvier 2008 22 janv. 2008 à 00:26
Salut,
Merci de ta reponse meme si elle ne m'a pas vraiment aidé.
Bon j'ai trouve la reponse.... en fait je fesais une instance de ma dll dans ma classe et donc avec le backgroundworker ma dll etait consomme et donc toute nouvelle instance de classe entrait en conflit. J'ai donc declare ma dll hors de ma classe dans un module initialiser au debut et c'est bon! J'ai juste a faire gaffe de ne pas lancer 2 fois le background worker!