1. ホーム
  2. c#

[解決済み] ロードされたすべてのアセンブリを一覧表示するにはどうすればよいですか?

2022-10-13 16:45:06

質問

.Net では、すべての AppDomain でロードされたすべてのアセンブリを列挙したいと思います。私のプログラムのAppDomainのためにそれを行うことは、十分に簡単です。 AppDomain.CurrentDomain.GetAssemblies() . 私は何らかの方法ですべてのAppDomainにアクセスする必要がありますか?それとも、これを行うツールがすでにありますか?

どのように解決するのですか?

Visual Studioを使用する

  1. プロセスにデバッガをアタッチする (例: デバッグで起動、または Debug > プロセスにアタッチ)
  2. デバッグ中に、モジュールウィンドウを表示する (Debug > Windows > Modules)

これは、各アセンブリ、アプリ ドメインについての詳細を示し、シンボル (すなわち、デバッグ情報を含む pdb ファイル) を読み込むためのいくつかのオプションがあります。

プロセスエクスプローラの使用

外部ツールを使いたい場合は プロセス エクスプローラー (フリーウェア、マイクロソフト社製)

プロセスをクリックすると、使用されているすべてのアセンブリを含むリストが表示されます。このツールは、ファイル ハンドルなどの他の情報も表示するため、かなり優れています。

プログラムによる

チェック このSO の質問で、その方法を説明しています。