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

Dotnet Discussion :

Problème avec le chargement de dll (AssemblyResolve)


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Veler
    Profil pro
    Lycéen
    Inscrit en
    Mars 2007
    Messages
    195
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mars 2007
    Messages : 195
    Par défaut Problème avec le chargement de dll (AssemblyResolve)
    Bonjour à tous !

    J'ai un problème à vous soumettre car je n'arrive pas à le corriger moi-même :
    Je développe actuellement une application WindowsForm qui réhost le designer WPF de Workflow 4.0 (donc le designer est dans un ElementHost).
    Dans ce WorkflowDesigner, on pourra ajouter des activités qui sont hébergé dans des plugins. Donc les plugins sont chargé dynamiquement dans le logiciel.
    Le problème est que toute activité inséré dans le designer et provenant d'un plugin ne s'affichent pas car
    Impossible de le fichier ou l'assembly 'MonPlugin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' ou une de ses dépendences, le fichier est introuvable.
    Du coup après une petite recherche je suis allé voir l'évènement AssemblyResolve. Mais je crois que c'est là que je bloque. Malgré ce que j'ai codé dedans et les lignes de codes trouvé sur internet ça n'arrange rien et des fois ça fait même crasher l'application au démarrage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim folderPath As String = IO.Path.GetDirectoryName(Reflection.Assembly.GetExecutingAssembly.Location)
            Dim assemblyPath As String = IO.Path.Combine(folderPath, args.Name)
            Dim assembly As Reflection.Assembly = Reflection.Assembly.LoadFrom(assemblyPath)
            Return assembly
    Note : quand le logiciel crash, c'est quand il essaye de résoudre "Microsoft.VisualBasic.resources, Version=1.0.0.0, Culture=fr-FR" à-t-on savoir pourquoi
    En mode debug, lors de ce crash, il me dit qu'il n'arrive pas à initialiser l'ouverture de la fenêtre principale .

    Bref, THE bordel, lol, je ne sais plus ou chercher, pouvez-vous m'aider? =)

    Merci d'avance à tous,

    @+

  2. #2
    Rédacteur
    Avatar de Greybird
    Inscrit en
    Juin 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 673
    Par défaut
    Bonjour,

    Active le log de Fusion, le binding d'assembly, pour voir ce qui se passe lors du load de l'assembly.

    Pour ce faire, depuis l'invite de commande VS, lance fuslogvw. Active ensuite le log des binding failures, provoque l'erreur dans ton appli, et tu auras des infos à ta disposition sur la raison de l'erreur. N'oublie pas de désactiver le log ensuite, cela a un impact non négligeable sur les perfs.

    N'hésite pas à poster le résultat si cela ne t'apportait pas une réponse immédiate.

    Arnaud

Discussions similaires

  1. Problème avec le chargement d'un fichier BMP
    Par Annibal dans le forum Débuter
    Réponses: 7
    Dernier message: 11/06/2008, 14h44
  2. Problème avec les chargements de fichiers exécutables
    Par Naish72 dans le forum Visual C++
    Réponses: 7
    Dernier message: 06/05/2008, 15h21
  3. [SSH2] Problème avec activation de php_ssh2.dll
    Par rochenico dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 19/09/2007, 15h42
  4. DELPHI. Problème avec Soap et une DLL.
    Par SER dans le forum Delphi
    Réponses: 1
    Dernier message: 01/03/2007, 10h58
  5. Réponses: 6
    Dernier message: 21/06/2005, 12h39

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