c# hklm\software\microsoft\fusion!enablelog アセンブリバインドとは - .NETでアセンブリのバインドの失敗のログ(Fusion)を有効にする方法




5 Answers

私は通常、Fusion Log Viewer(Visual StudioコマンドプロンプトのFuslogvw.exeまたはスタートメニューのFusion Log Viewer)を使用します。私の標準設定は次のとおりです。

  • 管理者としてFusion Log Viewerを開く
  • 設定をクリック
  • [ カスタムログパスを有効にする]チェックボックスをオンにします。
  • c:\FusionLogsように、ログに書き込む場所を入力します( 重要:このフォルダを実際にファイルシステムに作成したことを確認してください)。
  • 適切なレベルのロギングがオンになっていることを確認します(場合によっては、ディスクにすべてのバインドをログするだけで、正常に動作することを確認することもできます)
  • OKをクリックします。
  • ログの場所オプションをカスタムに設定する

完了したらログオフするのを忘れないでください!

(私はちょうど同様の質問でこれを掲示しました - 私はそれもここで関連していると思います。)

ビューア iis 記録

.NETでアセンブリバインド失敗のロギング(Fusion)を有効にするにはどうすればよいですか?




次のレジストリ値を設定します。

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Fusion!EnableLog](DWORD)を1に設定します

無効にするには、0に設定するか、値を削除します。

[編集]:次のテキストをWindowsレジストリエディタのFusionEnableLog.regなどのファイルに保存しますフォーマット:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion]
"EnableLog"=dword:00000001

その後、Windowsエクスプローラからファイルを実行し、警告が表示されないように無視してください。







他人を助けるかもしれないちょっとした情報。 クラス/インターフェースを継承/実装するクラスのために、いくつかのディレクトリ内のすべてのアセンブリを検索する行に沿って何かを行う場合は、独自のアセンブリに関するこのエラーが発生した場合は古いアセンブリを取り除いてください。

シナリオは次のようになります。

  1. アセンブリAは、あるフォルダ内のすべてのアセンブリをロードします
  2. このフォルダ内のアセンブリBは古いですが、アセンブリCを参照しています
  3. アセンブリBは存在しますが、アセンブリBが古くなった(名前空間がリファクタリングプロセスによって変更された)ため、名前空間、クラス名などの詳細が変更されている可能性があります。

要するに:A ---読み込み→B(古い)---参照---> C

このような場合は、エラーメッセージの名前空間とクラス名だけが表示されます。 それをよく調べる。 ソリューションのどこにも見つからない場合は、古くなったアセンブリを読み込もうとしている可能性があります。




あなたがFusionLog.exeの場所について疑問に思っている場合に備えて - あなたはそれを持っていると知っていますが、それを見つけることはできません。 私はここ数年、FUSLOVWを何度も何度も探していました。 .NETに移行した後、FUSION LOGのバージョン番号が爆発しました。 彼女はあなたがインストールしたソフトウェアに応じて、あなたのディスク上に見つかる場所です:

C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.0A \ bin \ NETFX 4.0ツール\ x64

C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.0A \ Bin \ x64

C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.1A \ bin \ NETFX 4.5.1ツール\ x64

C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.0A \ bin \ NETFX 4.0ツール

C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.1A \ bin \ NETFX 4.5.1ツール

C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.0A \ Bin




Related