Microsoft D2D Library
FW DLL
Direct3D 10 Runtime
Direct3D 10.1 Runtime
Direct3D 10.1 Runtime
Direct3D 10 Runtime
Direct3D 10 to Direct3D9 Translation Runtime
Direct3D 10.1 Reference Device
Direct3D 10.1 SDK Layers
Direct3D Rasterizer
Direct3D 11 Runtime
Direct3D 11 Install Helper DLL
Direct3D 11On12 Runtime
d3d11renderer Dynamic Link Library
Direct3D 12 Runtime
Microsoft Direct3D
Microsoft Direct3D OS Thunk Layer
Direct3D 9 Runtime
d3d9renderer Dynamic Link Library
Microsoft Direct3D
Microsoft Direct3D
Microsoft Direct3D
Microsoft Direct3D
Microsoft Direct3D
Microsoft Direct3D
Microsoft Direct3D
Direct3D HLSL Compiler
Direct3D HLSL Compiler
Direct3D HLSL Compiler
Direct3D HLSL Compiler
Direct3D HLSL Compiler
Direct3D HLSL Compiler
Direct3D HLSL Compiler for Redistribution
Direct3D 10.1 Extensions
Direct3D 10.1 Extensions
Direct3D 11 Compute Shader Extensions
Microsoft Direct3D
Microsoft Direct3D
Direct3D Progressive Mesh DLL
Microsoft Direct3D
Microsoft Direct3D
Direct3D 9 Reference Device
Direct3D Retained Mode DLL
Microsoft (R) D3D Shader Caching Library
Microsoft Direct3D
Quando se obtém uma janela de erro do sistema dizendo que falta um ficheiro DLL, surgem as seguintes questões: qual é o seu objectivo
Os ficheiros DLL têm um propósito fundamental, reduzir o código e aumentar o desempenho do computador. Um ficheiro DLL é uma biblioteca dinâmica que é utilizada por todas as aplicações
Podem ocorrer erros num PC Windows que esteja associado a ficheiros DLL. Estes erros impedem o utilizador de executar os seus programas requeridos. As mensagens de erro começam a aparecer no ecrã, especificando exactamente que ficheiro .DLL está em falta. O problema pode ser resolvido encontrando o ficheiro específico e colocando-o no directório do sistema
Os ficheiros DLL são considerados na maioria das operações de utilização como sendo o principal factor de erros quando o Windows arranca e corre. Um ficheiro DLL não precisa de ser editado porque pode causar novos problemas que irão afectar muitos programas com outros ficheiros DLL
Os códigos numa DLL são considerados como partilhados pelos processos que necessitam da DLL (os ficheiros estão na memória física)
Versões mais antigas do Windows, onde cada processo em execução tinha uma extensa área de tarefas, exigia uma cópia do código DLL.
Por exemplo, programas específicos de uma DLL carregada não têm estes endereços numa base livre. Então é necessário fazer outra cópia do código da DLL com uma base de um conjunto único de coeficientes de entrada relocalizáveis. Se a memória física precisar de ser restaurada, o código da partição ocupada é reiniciado juntamente com o conteúdo, e é feita uma rápida recarga a partir do ficheiro DLL. Além disso, o GDI carrega todos os outros drivers de dispositivos, pelo que o Windows começa a carregar o resto dos pacotes do Windows, chamando a estes programas API de USER/GDI
Devido a isto, o ficheiro DLL transporta muitos utilitários de uma só vez. Com actualizações de DLL para uma versão moderna, a versão anterior é sobreescrita ou apagada do PC. Os controlos ActiveX, os registos do painel de controlo e os drivers de dispositivos são a base de dados para o Windows como bibliotecas de ligações dinâmicas
Existem várias formas comprovadas de lidar com problemas de DLL:
Os ficheiros executáveis relacionados podem ser carregados mais cedo se os executar em configurações semelhantes às que foram compiladas. Acrescentemos que cada alvo padrão do Windows tem ficheiros DLL associados
Uma grande alternativa para ligar a importação ao ambiente alvo é arrancar com uma instalação de utilitário. Mas um programa deste tipo altera o valor de verificação do executável. As versões posteriores do Windows já não têm o endereço de cada biblioteca carregada, o que leva a um executável muito mais pequeno
Muitas bibliotecas de ligação dinâmica têm um .DLL que termina nos seus ficheiros, mas outras bibliotecas utilizam .OCX, .CPL, .DRV. Os pacotes de definição, tais como UPX comprimem a DLL, o que leva a um problema: as secções de código de leitura e escrita não são separadas. Estas secções assemelham-se a partições não públicas porque são privadas dentro de cada processo
Como resultado, as DLLs com secções públicas devem necessariamente ser descomprimidas quando vários pacotes as utilizam simultaneamente. Cada instância do programa deve ter uma cópia privada das DLLs