Question

Nous allons avoir des différences de version de mystère sur notre dll de référence chargé lors de l'exécution.

Erreurs comme:

  

Impossible de charger le fichier ou l'assemblage X ou une de ses dépendances. La définition se trouve manifeste de l'Assemblée ne correspond pas à la référence d'assemblage. (Exception de HRESULT: 0x80131040)

Est-il possible de déboguer la liaison assemblage.

En d'autres termes, comment puis-je connaître les détails suivants au sujet des ensembles chargés:

  • Version
  • Emplacement
  • Qui / Ce qui a causé le chargement (mon code, un autre .dll, ...)
  • Eh bien, à peu près tout le reste, il est de savoir ...
Était-ce utile?

La solution

Le Assemblée Binding Log Viewer (alias Fusion Log Viewer, fuslogvw.exe) présente des données utiles pour ce genre de questions telles que:

  • Quel processus tente de charger un ensemble
  • Le nom complet de l'assemblage (version, culture, jeton de clé publique)
  • L'assemblée qui est à l'origine de la charge
  • Quels chemins ont été sondées pour l'assemblage

Vous pouvez vous connecter tous les échecs se coince ou simplement se lient.

fuslogvw.exe doit être accessible directement à partir de toute commande VS invite.

Autres conseils

Totalement d'accord avec Chris, Assemblée Binding Log Viewer devrait vous donner toutes les informations dont vous avez besoin. En outre, vous pouvez également utiliser WinDbg + SOS.dll. La plupart du temps il est utilisé pour le débogage, mais peut être très utile dans certains autres cas où vous devez savoir que beaucoup d'informations que possible. Le seul problème qui pourrait vous arrêter est qu'il n'a pas agréable interface utilisateur comme VS débogueur:)

Bonne chance!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top