Every .NET application consists of at least one assembly, which is in turn built from a number of three basic elements: a manifest, modules, and resources. The manifest contains a set of metadata that describes everything the runtime needs to know about the assembly. This information includes:
Modules are Portable Executable (PE) files that contain types described using metadata and implemented using MSIL. Additionally, modules have module manifests that define the external assemblies they are dependent on. Resources contain nonexecutable data that is logically included with the assembly. Examples of this include bitmaps, localizable text, persisted objects, and so on. |