DLL Hell

Keywords: DLL Hell, .NET de Microsoft, DLL, Windows, MSI, MFC

El término DLL Hell (El infierno de las DLLs) se refiere a los problemas ocasionados por las DLLs (Bibliotecas de enlace dinámico).

Estas bibliotecas consisten en un conjunto de código común que puede estar compartido entre varias aplicaciones. En Windows estas bibliotecas están muy extendidas y son compartidas por múltiples aplicaciones (por ejemplo, la MFC está compartida por prácticamente todas las aplicaciones gráficas). De esta compartición de código surgen dos problemas que consituyen el "infierno":

En ambos casos los programas que compartan la DLL dejarán de funcionar con los consiguientes trastornos que supone.

Soluciones

Existen un conjunto de soluciones manuales para evitar estos problemas:

Las versiones más modernas de Windows proponen soluciones automáticas para el problema (mayor control del versionado, petición al usuario de qué DLL quiere mantener...) pero las antiguas instalaciones siguen corrompiendo las DLLs. Por ello se han planteado dos soluciones:

Keywords: DLL Hell, .NET de Microsoft, DLL, Windows, MSI, MFC