参照によって追加された dll を持つ C# アプリケーションがあります。(コンパイル後に) Windows から exe ファイルを実行しようとして、dll の名前が変更されたときに、アプリケーションにエラー メッセージを表示させたいと考えています。
どうすればコードでそれを行うことができますか?
参照によって追加された dll を持つ C# アプリケーションがあります。(コンパイル後に) Windows から exe ファイルを実行しようとして、dll の名前が変更されたときに、アプリケーションにエラー メッセージを表示させたいと考えています。
どうすればコードでそれを行うことができますか?
exe が必要な dll を見つけられない場合は、既にエラーが表示されているはずです。次のようなもの:
コンピュータに example.dll が見つからないため、プログラムを開始できません。この問題を解決するには、プログラムを再インストールしてみてください。
これを取得していないという事実は、いくつかのことのいずれかを意味します。
a) dll は実際にはプログラムによって参照されていません。
b) dll を exe にリンクしました。
c) DLL は CLR によって別の場所で発見されました (Pondidum に感謝します)。
また、exeが必要なアセンブリを別の場所で見つける可能性もあります。必要なアセンブリを検索する場所を確認するには、MSDNのこの記事を確認してください。
もう1つの可能性は、AssemblyLoadイベントまたはAssemblyResolveイベントを使用して、ロードされている(ロードされていない)アセンブリに関する詳細情報を取得することです。
.NET アプリでは、不足している DLL 内のクラスを初めて使用しようとするまで、エラーは発生しません。
いくつかの可能性: