what is DLL Hell and how it is solved in .NET?

Answers were Sorted based on User's Feedback



what is DLL Hell and how it is solved in .NET?..

Answer / arjun jaiswal

Dll Hell refers to a set of problems caused when multiple
applications attempt to share a common component like a
dynamic link library (DLL). The reason for this issue was
that the version information about the different components
of an application was not recorded by the system.

.Net Framework provides operating systems with a Global
Assembly Cache. This Cache is a repository for all the .Net
components that are shared globally on a particular
machine. When a .Net component is installed onto the
machine, the Global Assembly Cache looks at its version,
its public key, and its language information and creates a
strong name for the component. The component is then
registered in the repository and indexed by its strong
name, so there is no confusion between different versions
of the same component, or DLL.

Is This Answer Correct ?    360 Yes 16 No

what is DLL Hell and how it is solved in .NET?..

Answer / imtiyaz chanderki

Windows Registry can not support the multiple versions of
same com component this is called the dll hell problem.

Dll hell problem is solved by dotnet it allows the
application to specify not only the library it needs to
run but also the version of the assembly

Is This Answer Correct ?    177 Yes 27 No

what is DLL Hell and how it is solved in .NET?..

Answer / dhana

.net solved using dll with different versions

Is This Answer Correct ?    105 Yes 51 No

what is DLL Hell and how it is solved in .NET?..

Answer / vimal victor

DLL Hell :- This is a problem in loading a specific dll
(class id, version number, path etc). For example, if I
build test.dll v1.0.0.0 and deploying it in c:\MyProg. My
application App1 and App2 are using the methods in that
dll. And there is a requirement to change something in App1
and I supposed to change test.dll also for the same
requirement. Once I finished with all my changes, I will be
deploying them in the appropriate locations. Now, the older
dll will be overwritten. And my App2 will look for test.dll
of older version and since it is not there it will not
work. This is a scenario for dll hell issue.

.NET and dll hell:- .NET has a provision to specify whether
a 'Specific Version' to be loaded or not. If you check with
any dll's propery window, that has a property called
Specific Version. By default it will be false for the dll's
created by users. It means whether the specific version
alone has to be loaded for that project. If that is false,
then te runtime will load any available higher version of
dll for that project. Thus this issue has been sorted out.

Is This Answer Correct ?    67 Yes 13 No

what is DLL Hell and how it is solved in .NET?..

Answer / robert

DLL Hell :- This is a problem in loading a specific dll
(class id, version number, path etc). For example, if I
build test.dll v1.0.0.0 and deploying it in c:\MyProg. My
application App1 and App2 are using the methods in that
dll. And there is a requirement to change something in App1
and I supposed to change test.dll also for the same
requirement. Once I finished with all my changes, I will be
deploying them in the appropriate locations. Now, the older
dll will be overwritten. And my App2 will look for test.dll
of older version and since it is not there it will not
work. This is a scenario for dll hell issue.
.Net Framework provides operating systems with a Global
Assembly Cache. This Cache is a repository for all the .Net
components that are shared globally on a particular
machine. When a .Net component is installed onto the
machine, the Global Assembly Cache looks at its version,
its public key, and its language information and creates a
strong name for the component. The component is then
registered in the repository and indexed by its strong
name, so there is no confusion between different versions
of the same component, or DLL.

Is This Answer Correct ?    51 Yes 15 No

what is DLL Hell and how it is solved in .NET?..

Answer / kobra thakur

Registry of operating system is unable to support the
multiple versions of
same com component this is called the dll hell problem.

Dll hell problem is solved by dotnet it allows the
application to specify not only the library it needs to
run but also the version of the assembly

Is This Answer Correct ?    24 Yes 12 No

what is DLL Hell and how it is solved in .NET?..

Answer / moinuddin

Over the history of Windows, the method of tracking of DLL
usage was changed by Microsoft several times, as well as
the problem of rogue
installations that didn't play by the rules--the result was
called "DLL HELL", and the
user was the victim.
Solving DLL hell is one thing that the .NET Framework and
the CLR targeted. Under
the .NET Framework, you can now have multiple versions of a
DLL running
concurrently. This allows developers to ship a version that
works with their program
and not worry about stepping on another program. The
way .NET does this is to
discontinue using the registry to tie DLLs to appliction
and by the concept of assembly

Is This Answer Correct ?    18 Yes 11 No

what is DLL Hell and how it is solved in .NET?..

Answer / parthasarathi

Global assembly Cache (GAC) is a repository for all the .Net components or dll that are shared globally on a particular machine. When a .Net component or dll is installed onto the machine, the Global Assembly Cache looks at its version, its public key, and its language information and creates a strong name for the component or dll. The component or dll is then registered in the GAC and indexed by its strong name, so that even with same name of assembly could be install to GAC that will be having two different versions. Once versioning done with any assembly there will be no chance to conflict, which was earlier happening (DLL HELL).

Is This Answer Correct ?    1 Yes 0 No

what is DLL Hell and how it is solved in .NET?..

Answer / tarun kumar prusty

Traditionally in com component is face this problem.Means
when we developed a application using com component at first
we have to registered under the window operating system by
using a command line tool regsvr32 (dll name) it is the
first problem and another is when we register particular
versions of same com component like V1.0.0.0 it is default
version of every dll we can easily registered.If again we
change the version like v1.0.0.1 and registered again window
operating system it will be face problem i,e window registry
can't be maintained multiple versions of same com
component.To overcome this problem Microsoft has introduce a
new concept known as ASSEMBLY here is not required to
register under operating system and window can maintain
multiple versions same assembly.

Is This Answer Correct ?    2 Yes 2 No

what is DLL Hell and how it is solved in .NET?..

Answer / sabari

DLL Hell is nothing but overwriting the dll in the registery. If two application are installed on a single server, one installed First and the Second Installed Later and There is a dll with same name with different functionality used in both the applications, So in this case Application one works fine all the days until application two Installed on the machine. Once the Application two is installed containing the DLL with the same name as Application one Contains then In this case the application one Fails as the DLL from Application two overwites the DLL of Application one in the Registery. So Application two works fine where as Application one Fails as the DLL is missing.

Is This Answer Correct ?    0 Yes 0 No

Post New Answer

More ASP.NET Interview Questions

What definition correctly defines a label server control with the name set to lblHoop? a) <asp:Label name=?lblHoop? runat=?server? /> b) <Label id=?lblHoop? runat=?server? /> c) <asp:Label id=?lblHoop? runat=?server? /> d) <server label name=?lblHoop? runat=?asp? />

3 Answers   Syntax Softtech,


How to create discussion forum in asp.net mvc? : Asp.Net MVC

0 Answers  


What are the various ways to send content from one page to another?

0 Answers  


To display data in a Repeater control which templete is provided ?

4 Answers   Siebel,


What are the two properties that are common on every validation control?

0 Answers   Siebel,






What is side-by-side execution? Can two applications, one using a private assembly and other using a shared assembly, be stated as side-by-side executables?

0 Answers  


How many types of page.

5 Answers   TCS, Verinon Technology Solutions,


In SP has contains 10 query,By Using Dataset Object I need to fetch 8th query of records? How?

5 Answers  


What is the part of url?

0 Answers  


what is the dllhell? why we use the dllhell?

4 Answers  


What is round trip in asp.net?

0 Answers  


What is a server farm in iis?

0 Answers  


Categories