Interface to P5Device
Microsoft® Windows(TM) PSched Performance Monitor
Object Packager2
Package State Roaming
packet.dll (Vista) Dynamic Link Library
Microsoft IME 2012
Microsoft IME 2012
Microsoft IME 2012
Microsoft IME 2012
Interface DLL between PRTG and ChartDirector
pafcv2
Paige32
Painter Core Dynamic Link Library
Palm OS Handheld Devices USB Class Installer
PANOSE(tm) Font Mapper
PaqSP Module
PASMUtility x64
Patcher
PatchExp Library
Adobe PatchMatch
RTPatch Executable
PathEngine
Electronic Arts, Inc.
Auto Enrollment DLL
Pawn Compiler library
Paquet Builder SFX Core
Sybase Inc. Product File
Microsoft Connection Manager Migration Lib
Sybase Inc. Product File
Sybase Inc. Product File
Sybase Inc. Product File
Sybase Inc. Product File
Sybase Inc. Product File
Sybase Inc. Product File
Sybase Inc. Product File
Sybase Inc. Product File
Sybase Inc. Product File
Program Compatibility Assistant Client Module
Program Compatibility Assistant Diagnostic Module
Program Compatibility Assistant Event Resources
ProxyCap Winsock Service Providers
Program Compatibility Assistant Service
Program Compatibility Assistant User Interface Module
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