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

Windows Forms Discussion :

Thread et dll externe


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 27
    Par défaut Thread et dll externe
    Bonjour, voilà mon problème.

    Je veux rajouter un système de plug-ins à mon programme, j'arrive à charger les dll, a lancer des methodes, mais je n'arrive pas à faire un nouveau Thread et lancer une méthode de la dll.


    Voila mon Erreur sur la ligne " obj.Main()":

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    La référence d'objet n'est pas définie à une instance d'un objet.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim ThreadF As Thread = New Thread(New ThreadStart(AddressOf test))
            ThreadF.Start()
        End Sub
     
     
        Private Shared Sub test()
            Dim obj As Object
            obj = AppDomain.CurrentDomain.CreateInstanceFromAndUnwrap(Application.StartupPath & "\Fights\Guerrier.dll", "Guerrier.Script.Fights")
            obj.Main()
        End Sub
    Merci de me dire comment je peux faire pour lancer en parallèle de mon programme principal les méthodes des dll, parque sa fait 4 heures que je reste bloqué dessus.

    Merci d'avance

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    ca sent les paramètres de compilation qui laissent tout faire (pas terrible dejà)
    et d'ailleurs ca se voit, tu écris des choses sans savoir si c'est possible !

    pourquoi y aurait une méthode main sur une dll ?
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 27
    Par défaut
    Parque je vais dire à ceux qui développes les plug-ins que la méthode qui sera chargée sera la méthode main, je c'est pas comment faire autrement.

    Après si quelqu'un a une autre solution pour intégrer des plug-ins dans sont programme je suis preneur, mais j'ai trouvé que sa pour l'instant donc je fais avec ce que j'ai.

    Et personne a une solution pour ma question?

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 27
    Par défaut
    Désolé de Up mais personne a une idée sur le problème?

    Je me suis basé sur ce cour: http://drq.developpez.com/dotnet/articles/plugin/vbnet/

  5. #5
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    si j'avais à inventé un système de plugin, je ferais une dll contenant une interface

    ceux voulant faire des plugins l'utiliseraient en référence et implémenteraient l'interface

    ensuite tu aurais juste à chercher dans la dll les classes implémentant l'interface grace à la reflection

    tu connaitrais donc les points d'entrées vu que c'est toi qui les définiraient dans l'interface
    ca permettrait de caster les objets pour avoir l'intellisense

    et ca permettrait aussi au passage de mettre plusieurs plugin dans une seule dll
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 27
    Par défaut
    Les développer auront accès à l'intellisense si il ajoute comme référence le .exe de mon application, après j'ai pas trop compris ce que tu veux dire par dll contenant une interface, parque chaque plug-in aura un onglet dans mon application qui lui sera réservée, je donnerais au développeur le nom de la méthode qui se chargera de faire l'interface graphique du plug-in.

    Le seul problème que j'ai, c'est que quant je charge une dll plug-ins ça me bloque mon application main tant que ça a pas fini de charger, donc je voudrais juste savoir comment faire pour que les dll que je charge est un Thread différent que celui de mon application principale, c'est juste la que je bloque.

Discussions similaires

  1. JNI/DLL - Extern C : Généralisation ?
    Par ni0urk dans le forum MFC
    Réponses: 1
    Dernier message: 19/01/2006, 08h27
  2. Appel aux fonctions d'une DLL externe ??
    Par Fbartolo dans le forum Access
    Réponses: 7
    Dernier message: 21/11/2005, 17h54
  3. dll ActiveX utilisant une DLL externe
    Par Metal3d dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 10/11/2005, 18h02
  4. [Jonas]Ajout de dll externes
    Par romainp22 dans le forum JOnAS
    Réponses: 8
    Dernier message: 14/01/2005, 11h41
  5. Dialogue DLL externe
    Par rgarnier dans le forum XMLRAD
    Réponses: 8
    Dernier message: 07/05/2003, 14h28

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