Compartilhar via


Vantagens de usar DLLs

Vinculação dinâmica tem as seguintes vantagens:

  • Economiza memória e reduz a troca.Muitos processos podem usar uma única DLL simultaneamente, compartilhando uma única cópia da DLL na memória.Em contraste, o Windows deve carregar uma cópia do código biblioteca na memória para cada aplicativo que é criado com uma biblioteca de vínculo estático.

  • Poupa espaço em disco.Muitos aplicativos podem compartilhar uma única cópia da DLL no disco.Em contraste, cada aplicativo criado com uma biblioteca de vínculo estático tem o código da biblioteca vinculado em sua imagem executável como uma cópia separada.

  • Upgrades para a DLL são mais fáceis.Quando alterar as funções em uma DLL, os aplicativos que usá-los não precisa ser recompilado ou vincular novamente como argumentos de função e valores de retorno não alteram.Em contraste, o código de objeto vinculado estaticamente requer o aplicativo ser vinculados novamente quando alterar as funções.

  • Fornece suporte de After-Market.Por exemplo, um driver de vídeo DLL pode ser modificado para oferecer suporte a uma exibição que não estava disponível quando o aplicativo foi enviado.

  • Oferece suporte a programas multilíngües.Programas escritos em diferentes linguagens de programação podem chamar a mesma função DLL, como os programas seguem a convenção de chamada da função.Os programas e a função de DLL devem ser compatíveis das seguintes maneiras: a ordem em que a função espera os argumentos para ser colocada na pilha, se a função ou o aplicativo é responsável pela limpeza da pilha e se os argumentos são passados nos registradores.

  • Fornece um mecanismo para estender as classes da biblioteca MFC.Você pode derivar classes classes MFC existentes e colocá-los em uma DLL de extensão MFC para uso por aplicativos MFC.

  • Facilita a criação de versões internacionais.Colocando recursos em uma DLL, é muito mais fácil criar versões internacionais de um aplicativo.Você pode colocar as seqüências de caracteres para cada versão de idioma do seu aplicativo em uma DLL de recurso separado e ter as versões de idioma diferente carregar os recursos apropriados.

Uma desvantagem em potencial do uso de DLLs é que o aplicativo não é autônomo; depende da existência de um módulo DLL separado.

O que você deseja fazer?

O que você deseja saber mais sobre?

Consulte também

Conceitos

DLLs no Visual C++