Skip to content

MS_DotNetAssembly

nishi_74322014 edited this page Aug 21, 2026 · 1 revision

.NETアセンブリ

概要

.NET アセンブリ関連

補足(アセンブリとは): .NET における配置とバージョン管理の単位
実体は *.dll / *.exe だが、
中身は CIL(中間言語)+ メタデータであり、
ネイティブの DLL/EXE とは別物である。

アセンブリ(*.dll / *.exe)
  ├ アセンブリ マニフェスト … 名前、バージョン、参照する他アセンブリ
  ├ 型のメタデータ           … クラス、メソッドの定義(自己記述的)
  ├ CIL コード
  └ リソース(画像、文字列 …)

自己記述的(メタデータを内包する)である点が重要で、
これにより次が成立する。

  • リフレクション.NET の Reflection)で
    実行時に型情報を取得できる
  • 型情報ファイル(ヘッダ)が要らない(C/C++ の .h に相当するものが不要)
  • 逆コンパイルが容易逆コンパイル・難読化が問題になる理由)

なお、.NET Core 以降は
GAC(グローバル アセンブリ キャッシュ)が廃止され、
アセンブリはアプリのフォルダに配置されるようになった
.NET Coreのデプロイdeps.json の話に繋がる)。

詳細


Tags: 移行, .NET開発

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally