Partilhar via


Noções básicas sobre as dependências de um aplicativo do Visual C++

Para determinar de quais bibliotecas do Visual C++ um aplicativo depende, exiba as propriedades do projeto. (Em Gerenciador de Soluções, clique com o botão direito do mouse no projeto e escolha Propriedades para abrir a caixa de diálogo Páginas de Propriedades). Em Windows 8 e anteriores, você também pode usar o Navegador de Dependências (depends.exe), que fornece uma imagem mais abrangente das dependências. Para versões mais recentes do Windows, a ferramenta lucasg/Dependencies fornece funcionalidade semelhante (essa é uma ferramenta de terceiros não garantida pela Microsoft).

Na caixa de diálogo Páginas de Propriedades, examine várias páginas em Propriedades de Configuração para entender as dependências. Por exemplo, se o projeto usar as bibliotecas MFC e você escolher Uso da MFC, Usar MFC em uma DLL compartilhada na página Propriedades de Configuração, Geral, o aplicativo dependerá de DLLs do MFC, como mfc<versão>.dll, em tempo de execução. Se o aplicativo não usar o MFC, ele poderá depender da biblioteca CRT, caso você escolha um valor da Biblioteca em Runtime de DLL de Depuração Multi-threaded (/MDd) ou DLL Multi-threaded (/MD) na página Propriedades de Configuração, C/C++, Geração de Código.

Usando depends.exe, você pode examinar uma lista de DLLs vinculadas ao aplicativo no tempo de carregamento e uma lista de suas DLLs carregadas com atraso. Caso deseje obter uma lista completa de DLLs carregadas dinamicamente em tempo de execução, use o recurso de criação de perfil em depends.exe para testar o aplicativo até ter certeza de que todos os caminhos de código foram usados. Quando você encerra a sessão de criação de perfil, depends.exe mostra quais DLLs foram carregadas dinamicamente durante o tempo de execução.

Quando você usar o depends.exe, lembre-se de que uma DLL pode depender de outra DLL ou de uma versão específica de uma DLL. Você pode usar o depends.exe no computador de desenvolvimento ou em um computador de destino. No computador de desenvolvimento, o depends.exe relata as DLLs que são necessárias para oferecer suporte a um aplicativo. Se você tiver dificuldade para executar um aplicativo em um computador de destino, copie o depends.exe para ele e abra o aplicativo na ferramenta para que você possa determinar se alguma DLL necessária está ausente ou incorreta.

Quando você souber de quais DLLs seu aplicativo depende, poderá determinar quais precisam ser redistribuídas com seu aplicativo ao implantá-lo em outro computador. Na maioria dos casos, não é necessário redistribuir DLLs do sistema, mas talvez seja necessário redistribuir DLLs para bibliotecas do Visual C++. Para obter mais informações, confira Determinando quais DLLs devem ser redistribuídas.

Confira também

Implantando aplicativos da área de trabalho