473,287 Members | 1,643 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,287 software developers and data experts.

METADATA and MANIFEST

What is the difference between METADATA and MANIFEST
and where do they get stored?

Thank you
Jul 21 '05 #1
1 8646
I have replied the same at http://www.mail-
archive.com/bd*****@groups.msn.com/msg04438.html
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. 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

Jul 21 '05 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: hawat.thufir | last post by:
an ant build.xml file: <project name="XHTML" default="package2"> <import file="properties.xml" /> <target name="clean"> <delete dir="${outputDir}" /> </target>
2
by: Andy Turner | last post by:
I've read a few articles on this and I still can't seem to get it set in my brain! What's the correlation between these two? Some articles seem to use the terms interchangeably! Cheers for any...
1
by: Fedor Buyakov | last post by:
hello all i have a specific question according hiding unmanaged (native) types in metadata for assemblies generated by c++ with managed extensions. i understand what these types are nedeed in...
3
by: Jonathan Payne | last post by:
Hi, I am interested in adding a manifest file to the resources for a MFC application. When I create an AppWizard MFC app with a manifest file it adds the following lines to the .rc file: ...
1
by: Santhu | last post by:
What is the difference between METADATA and MANIFEST and where do they get stored? Thank you
3
by: Richard Lewis Haggard | last post by:
We are having a lot of trouble with problems relating to failures relating to 'The located assembly's manifest definition with name 'xxx' does not match the assembly reference" but none of us here...
14
by: _iycrd | last post by:
After several frustrating attempts to wrap a native DLL w a C++/CLI DLL, I finally got an assembly to compile, only to find a *runtime* error. The app comes up fine. Test dialog displays. ...
0
by: Deshi | last post by:
As per my knowledge i come to know that when we compile source code assembly get created created at <Drive>:\WINDOWS\Microsoft.NET \Framework\v2.0.50727\Temporary ASP.NET Files (VS2005)...
0
xarzu
by: xarzu | last post by:
Getting a C# program with a manifest file to run in the debugger ---------------------------------------------------------------- How do I declare a manifest file in the Visual Studio IDE for C#...
2
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 7 Feb 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:30 (7.30PM). In this month's session, the creator of the excellent VBE...
0
by: MeoLessi9 | last post by:
I have VirtualBox installed on Windows 11 and now I would like to install Kali on a virtual machine. However, on the official website, I see two options: "Installer images" and "Virtual machines"....
0
by: DolphinDB | last post by:
The formulas of 101 quantitative trading alphas used by WorldQuant were presented in the paper 101 Formulaic Alphas. However, some formulas are complex, leading to challenges in calculation. Take...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.