-----------------------------------------------------------

New Message on BDOTNET

-----------------------------------------------------------
From: mail2dolly
Message 4 in Discussion

 This is how I understand it.   An assembly contains a Manifest. manifest contains the 
metadata + some additional tables. Metadata is data about itself whereas manifest 
includes references to outside classes, dependencies on other assemblies and 
information (tables) about that along with the metadata.Also remember Metadata is 
contained in assembly and modules, manifest is present in assemblies.   You may want 
to look at Roshan's trashbin, its output explains these things very clearly.   And 
like Saurabh nandu says in his article   "Assembly Manifest - An Assembly Manifest is 
nothing but some extra tables in the Metadata section of the PE file which contains 
the assembly's identity, culture, files, and publicly exported types, and all of the 
files (modules etc) that comprise the assembly. It also references other referenced 
assemblies on which the assembly is dependent. 
This is the main difference between a assembly and a module. A assembly contains a 
assembly manifest while a module does not contain a assembly manifest. One point to be 
noted here is that both assemblies and modules contain Metadata which describes them. 
It is the self-describing assembly manifest which gives applications on the .NET 
Platform independence from the registry.
In layman's terms say if you have a application comprising of a assembly named 
Assem.exe and a module named Mod.dll. Then in the assembly manifest which will be 
stored within the PE Assem.exe will not only contain metadata about the classes, 
methods etc contained within the Assem.exe file but also it will contain references to 
the classes, methods etc exported in the Mod.dll file. While the module Mod.dll will 
only contain metadata describing itself.   

You can store the assembly manifest within the executables or libraries created with 
the /t:exe, /t:winexe and /t:library switches in the C# compiler. Or you can create a 
separate PE file which will just contain the assembly manifest. Although there is no 
separate compiler option to create a assembly. The /t:exe, /t:winexe and /t:library 
switches always compile a single PE which contains the assembly manifest."   HTH, Dolly

-----------------------------------------------------------

To stop getting this e-mail, or change how often it arrives, go to your E-mail 
Settings.
http://groups.msn.com/bdotnet/_emailsettings.msnw

Need help? If you've forgotten your password, please go to Passport Member Services.
http://groups.msn.com/_passportredir.msnw?ppmprop=help

For other questions or feedback, go to our Contact Us page.
http://groups.msn.com/contact

If you do not want to receive future e-mail from this MSN group, or if you received 
this message by mistake, please click the "Remove" link below. On the pre-addressed 
e-mail message that opens, simply click "Send". Your e-mail address will be deleted 
from this group's mailing list.
mailto:[EMAIL PROTECTED]

Reply via email to