Definição – O que significa o DLL Hell?
Inferno DLL é um termo comum para vários problemas associados ao uso de bibliotecas de vínculo dinâmico (DLLs) ou arquivos DLL. Um arquivo DLL é um recurso dentro do sistema operacional Windows que contém código e dados relacionados à funcionalidade de um ou mais aplicativos. Esses arquivos, que podem ter a extensão de arquivo .dll ou outras extensões de arquivo, têm sido os principais blocos de construção do sistema operacional Windows e dos programas do Windows desde as primeiras versões do MS-DOS da tecnologia de computador da Microsoft. Versões sucessivas do Windows ilustraram certos problemas com o uso de arquivos DLL para muitos programas diferentes.
Definirtec explica DLL Hell
Muitos dos problemas que levam os desenvolvedores a usar o termo “inferno DLL” envolvem instâncias em que uma alteração em um arquivo DLL por um programa afeta negativamente a função de outros programas que precisam usar o mesmo arquivo DLL. Problemas com registros, incompatibilidade e atualização incorreta de arquivos DLL fazem parte do desafio geral de ordenar o uso de arquivos DLL em muitos aplicativos diferentes.
Em versões mais atuais do Windows, alguns dos problemas que contribuem para o inferno das DLLs foram tratados e resolvidos até certo ponto. As alterações incluem uma estrutura .NET, que usa metadados para descrever os componentes do programa. Este sistema ajuda com o controle de versão e implantação para aliviar alguns dos problemas que surgem devido ao uso de DLL entre linguagens ou situações em que os aplicativos precisam compartilhar um arquivo DLL. Um sistema de proteção de arquivos do Windows, introduzido no Windows 2000, impede que alguns programas alterem os arquivos DLL do sistema. Outras soluções envolvem colocar o arquivo DLL de um aplicativo em uma pasta separada, em vez de armazená-lo em um local compartilhado para que cada aplicativo possa ter sua própria versão exclusiva do arquivo DLL.