Updated: July 10, 2020 (March 17, 2003)
SidebarShared Side-by-Side .NET and Win32 Components
The major remaining source of DLL Hell-version conflicts caused by updating components such as dynamic link libraries (DLLs)-has been eliminated for applications built on the .NET Framework and for Win32 applications built specifically to use the new support for versioned Win32 components introduced in Windows XP. Both provide mechanisms that allow storing and running different versions of the same component simultaneously and directing function calls to the correct versions of the components. Although the architectural details behind the two technologies differ substantially, they solve the problem in similar ways.
Key to both is the concept of “assemblies,” which provide critical information needed for applications to access the correct version of the shared components. However, .NET assemblies are not the same as Win32 assemblies, which can lead to confusion.
How .NET and Win32 Assemblies Differ
Conceptually, an “assembly” is a collection of component program code, plus a document called a “manifest” that contains XML-formatted data describing the components, such as the names, versions, digital signatures, and classes (that is, functions) they expose, as well as their dependencies on other components and information on where to look for them.
Atlas Members have full access
Get access to this and thousands of other unbiased analyses, roadmaps, decision kits, infographics, reference guides, and more, all included with membership. Comprehensive access to the most in-depth and unbiased expertise for Microsoft enterprise decision-making is waiting.
Membership OptionsAlready have an account? Login Now