私はC#3.0でCLRを読んできましたが、アセンブリ、モジュール、ヘッダーに反映されてきましたが、状況は複雑になりました。これは私が理解したが、何で誰かが少しより多くの事を明確にすることができた場合素晴らしいことだ場合:CLRのモジュール、アセンブリ、ヘッダー
モジュールは、ILコードとメタデータテーブルを含むcsc.exeの結果です。メタデータテーブルは3つの異なるテーブル含まれています "などTypeRef、ModuleRef、MemberRef、" などのような "ModuleDef、型定義、PropertyDef、MethodDef、EventDef、FieldDef"
- 参照表として
- 定義テーブルを
- マニフェストの表は、**
アセンブリは、などポータブル実行の略
- PEファイルは、ファイルができている画像、ドキュメント、PDF、できるだけ多くのモジュールと同様にリソースが含まれているコンテナであります.EXEまたは.DLL。これらのファイルには、PE32またはPE32 +ヘッダー、CLRヘッダー、メタデータ、ILコードがあります。
冊総会は、コンテナがモジュールで構成されていると、それはまた、マネージモジュールは
マネージモジュールであると言う言葉:
Aモジュールは、標準の32ビットのMicrosoft Windowsポータブルで管理 実行可能ファイル(PE32)または標準の64ビットWindows移植可能ファイル 実行可能ファイル(PE32 +)で、CLRを実行する必要があります。
Richter、Jeffrey(2010-02-05)。 CLR via C#(Kindle Locations 696-697)。オーケーメディア - A. Kindle Edition。
議会の定義:
アセンブリは、1つまたは複数のモジュールまたはリソース ファイルの論理グループです。
Richter、Jeffrey(2010-02-05)。 CLR via C#(Kindle Locations 766-767)。オーケーメディア - A. Kindle Edition。
だから、マネージモジュールが実際に同じ本から撮影した画像における議会の一部であるようです。
PE32ヘッダーがアセンブリに属している、しかし、著者はまた、など
分離はここで何、それは同様のモジュールを管理するために属していると言いますか?なぜ彼はモジュールとアセンブリを使い分けることができるのですか?
PEファイルには、PE32(+)ヘッダー、CLR ヘッダー、メタデータ、およびILの4つの主要部分があります。PE32(+)ヘッダは、Windowsが予期している標準 の情報です。 CLRヘッダーは、CLR(管理された モジュール)を必要とするモジュールに固有の 情報の小さなブロックです。
Richter、Jeffrey(2010-02-05)。 CLR via C#(Kindle Locations 1628-1629)。 OReilly Media - A. Kindle Edition。
また、画像には、PE32(+)、CLRヘッダーなどではないメタデータのみが含まれていることが明瞭に示されています。マニフェストとメタデータを同じ意味で使用できると思いますか?
また、モジュールのマニフェストテーブルも説明できますか?
ニースのリンク。ありがとう。 – Tarik