top of page

Assembly Bindungsprobleme eingrenzen / Narrow down assembly binding problems

(alle Versionen/all versions)

Samstag, 9. März 2024

Deutsch

Möglichkeit 1: Fuslogvw.exe

Möglichkeit 2: Fusion Logging für Windows aktivieren

Möglichkeit 3: Fusion++


Deutsch

In der .net-Praxis kann es häufiger vorkommen, dass Assemblies nicht geladen werden können, weil z.B. abhängige Assemblies nicht vorhanden sind oder wiederum auch nicht geladen werden können.


Möglichkeit 1: Fuslogvw.exe

Eine Möglichkeit, solchen Problemen auf die Spur zu kommen, ist das Tool "Fuslogvw.exe" von Microsoft, welches im Rahmen des MS Windows Developer SDK oder von Visual Studio zur Verfügung steht.


Details zu dem Tool sind hier erklärt (Englisch):


Möglichkeit 2: Fusion Logging für Windows aktivieren

Eine weitere Möglichkeit ist das Aktivieren des Fusion Logging unter Windows, was mit einem Windows Registry Key-Eintrag aktiviert werden kann (Windows Neustart notwendig).

Dies erzeugt lesbare Protokolldateien für alle relevanten Aktionen.

Nachfolgend ein Beispiel für eine *.reg-Datei zum Aktivieren des Loggings.


⚠️Der angegebene Ziel-Ordner muss vorhanden sein und am Ende einen Backslash enthalten.

Das Logging sollte man unbedingt wieder deaktvieren, da das Protokoll ansonsten sehr schnell sehr groß werden kann.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion]
"EnableLog"=dword:00000001
"ForceLog"=dword:00000001
"LogFailures"=dword:00000001
"LogResourceBinds"=dword:00000001
"LogPath"="C:\FusionLogs\"

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Fusion]
"EnableLog"=dword:00000001
"ForceLog"=dword:00000001
"LogFailures"=dword:00000001
"LogResourceBinds"=dword:00000001
"LogPath"="C:\FusionLogs\"

Möglichkeit 3: Fusion++

Das Open Source-Tool "Fusion++" kann als Alternative zum vorgenannten "Fuslogvw.exe" verstanden werden.

Es verwendet dieselbe grundlegende Logging-Technik, bereitet aber die Ergebnisse deutlich besser auf.

Es ist eine XCOPY-Version auf der folgenden GitHub-Seite downloadbar.


bottom of page