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

Answer Posted / pradeepn gupta

"DLL Hell" refers to the set of problems caused when
multiple applications attempt to share a common component
like a dynamic link library (DLL) or a Component Object
Model (COM) class. In the most typical case, one application
will install a new version of the shared component that is
not backward compatible with the version already on the
machine. Although the application that has just been
installed works well, existing applications that depended on
a previous version of the shared component might no longer
work. In some cases, the cause of the problem is even more
subtle. In many cases there is a significant delay before a
user discovers that an application has stopped working. As a
result, it is often difficult to remember when a change was
made to the machine that could have affected the
application. A user may remember installing something a week
ago, but there is no obvious correlation between that
installation and the behavior they are now seeing. The
reason for these issues is that version information about
the different components of an application aren't recorded
or enforced by the system. Also, changes made to the system
on behalf of one application will typically affect all
applications on the machine.

One reason why it was hard to build an isolated application
was the run-time environment typically allowed the
installation of only a single version of a component or an
application. This restriction means that component authors
must write their code in a way that remains backward
compatible, otherwise they risk breaking existing
applications when they install a new component. In practice,
writing code that is forever backward compatible is
extremely difficult, if not impossible. Also components were
shared because disk space and memory was expensive. In the
past few years, hard disk and memory prices have dropped
dramatically, and disk space is no longer a premium. But as
applications have increased in size and in modularity not so
long ago many applications were entirely self-contained in a
single .exe file - the DLL sharing issue has not been
addressed, and the problem has grown over time.

Is This Answer Correct ?    0 Yes 1 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

Which type of state management is provided by Query String in ASP.NET?

559


What are cookies in asp.net?

578


What is meant by asp.net?

544


What is the full form of asp.net?

535


What are the Types of authentications in IIS

601






Apart from IDE what are the enhancements in asp.net 2.0?

1629


What is the maximum timeout we can set for Cookies?

553


Define repository pattern in mvc.net? : asp.net mvc

517


How to make paging concepts in datagrid in ASP.NET?

553


IN an ASP.NET Web application if there is any error, how can you debug?

587


What is considered a service provider?

521


What is advantage of asp.net?

549


Explain the benefits of viewstate?

590


Which object wraps the state or data of a user?

552


What is simple data binding?

521