Compartilhar via


Redistribuir arquivos do Visual C++

Observação

Você está aqui porque procura um download de um dos arquivos do Runtime do Visual C++? Vá para a página de downloads redistribuíveis do Visual C++ com suporte mais recente .

Arquivos redistribuíveis e licenciamento

A distribuição do pacote redistribuível, módulos de mesclagem e binários individuais do Runtime do Visual C++ é limitada a usuários licenciados Visual Studio e está sujeita a Termos de Licença para Software Microsoft.

Ao implantar um aplicativo, você também deve implantar os arquivos que são necessários para o suporte. Se Microsoft fornecer qualquer um desses arquivos, verifique se você tem permissão para redistribuí-los. Você pode encontrar um link para os termos de licença Visual Studio no IDE. Na caixa de diálogo About Microsoft Visual Studio , selecione o link License Terms. Você também pode baixar os Termos de Licença para Software Microsoft e as licenças relevantes do Visual Studio License Directory.

Para exibir a "lista REDIST" referenciada na seção "Código Distribuível" dos Termos de Licença de Software da Microsoft Visual Studio 2022, consulte Arquivos de código distribuíveis para Microsoft Visual Studio 2022.

Para exibir a "lista REDIST" referenciada na seção "Código Distribuível" dos Termos de Licença de Software da Microsoft para o Visual Studio 2019, consulte Arquivos de Código Distribuível para Microsoft Visual Studio 2019.

Para exibir a "lista REDIST" referenciada na seção "Código Distribuível" dos Termos de Licença de Software da Microsoft para o Visual Studio 2017, consulte Arquivos de código distribuível para o Microsoft Visual Studio 2017.

Para exibir a "lista REDIST" referenciada na seção "Código Distribuível" dos Termos da Licença de Software da Microsoft do Visual Studio 2015, consulte Arquivos de Código Redistribuível para Microsoft Visual Studio 2015.

Para obter mais informações sobre arquivos redistribuíveis, consulte Determine quais DLLs (bibliotecas de vínculo dinâmico) redistribuir e exemplos de implantação.

Localizar os arquivos redistribuíveis

Para implantar arquivos redistribuíveis, você pode usar os pacotes redistribuíveis instalados por Visual Studio. Em versões do Visual Studio desde 2017, esses arquivos são nomeados vc_redist.arm64.exe, vc_redist.x64.exe e vc_redist.x86.exe. Nos Visual Studio 2015, 2017 e 2019, eles também estão disponíveis nos nomes vcredist_x86.exe, vcredist_x64.exe e (somente 2015) vcredist_arm.exe.

A maneira mais fácil de localizar os arquivos redistribuíveis é usando as variáveis de ambiente definidas em um prompt de comando do desenvolvedor. No Visual Studio 2022, os arquivos redistribuíveis estão na pasta %VCINSTALLDIR%Redist\MSVC\v143. Na versão mais recente do Visual Studio 2019, você pode encontrar os arquivos redistribuíveis na pasta %VCINSTALLDIR%Redist\MSVC\v142. Nos Visual Studio 2017 e Visual Studio 2019, os arquivos também são encontrados em %VCToolsRedistDir%. No Visual Studio 2015, você pode encontrar esses arquivos em %VCINSTALLDIR%redist\<locale>, em que <locale> é a localidade dos pacotes redistribuíveis.

No Visual Studio 2022 e 2019, os arquivos de módulo de mesclagem fazem parte de um componente instalável opcional chamado Módulos de mesclagem do Redistribuível do Visual C++ <versão> no Instalador do Visual Studio. Os módulos de mesclagem são instalados por padrão como parte de uma instalação do C++ no Visual Studio 2017 e Visual Studio 2015. Quando eles estiverem instalados no Visual Studio 2022, você poderá encontrar os módulos de mesclagem redistribuíveis em %VCINSTALLDIR%Redist\MSVC\v143\MergeModules.

Na versão mais recente do Visual Studio 2019, os módulos de mesclagem redistribuíveis são encontrados em %VCINSTALLDIR%Redist\MSVC\v142\MergeModules. Em Visual Studio 2019 e Visual Studio 2017, eles também são encontrados em %VCToolsRedistDir%MergeModules. Em Visual Studio 2015, eles são encontrados em Program Files [(x86)]\Common Files\Merge Modules.

Instalar os pacotes redistribuíveis

Os pacotes redistribuíveis do Visual C++ instalam e registram todas as bibliotecas do Visual C++. Caso você utilize, execute-os como pré-requisito no sistema de destino antes de instalar o aplicativo. Recomendamos que você use esses pacotes para suas implantações, pois permitem a atualização automática das bibliotecas do Visual C++. Para obter um exemplo que mostra como usar esses pacotes, consulte Passo a passo: implantar um aplicativo Visual C++ usando o pacote Redistribuível do Visual C++.

Cada Pacote Redistribuível do Visual C++ verifica a existência de uma versão mais recente no computador. Se uma versão mais recente for encontrada, o pacote não será instalado. No Visual Studio 2015 ou posterior, os pacotes redistribuíveis exibem uma mensagem de erro informando que a instalação falhou. Se um pacote usar o /quiet sinalizador para ser executado, nenhuma mensagem de erro será exibida. Em ambos os casos, o instalador de Microsoft registra o erro e um resultado de erro é retornado ao chamador.

No Visual Studio 2015 e posteriores, você pode evitar esse erro verificando o registro para descobrir se uma versão mais recente está instalada. O número de versão atual instalado é armazenado na chave HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\14.0\VC\Runtimes\{x86|x64|arm64}.

O número de versão é 14.0 para Visual Studio 2015, 2017, 2019 e 2022 porque o redistribuível mais recente é compatível binário com versões anteriores até 2015. A chave é arm64, x86ou x64 dependendo das versões instaladas vcredist para a plataforma. (Você precisará verificar a subchave Wow6432Node somente se usar o Regedit para visualizar a versão do pacote x86 instalado em uma plataforma x64.)

O número da versão é armazenado no valor REG_SZ da Version cadeia de caracteres e também no conjunto de Major, Minore BldRbldREG_DWORD valores. Para evitar um erro no momento da instalação, ignore a instalação do pacote redistribuível se a versão instalada atualmente for mais recente.

Opções de linha de comando para os pacotes redistribuíveis

O Pacote Redistribuível do Visual C++ dá suporte a várias opções de linha de comando. As opções /?, /h ou /help exibem uma caixa de diálogo que lista as opções disponíveis. Você pode especificar /install para instalar, /repair para reparar ou /uninstall para desinstalar o Redistribuível. A opção /layout copia o conteúdo completo do Redistribuível no diretório atual.

Por padrão, o Redistribuível instala seu conteúdo e solicita ao usuário informações e pergunta se deve reiniciar após a instalação. Você pode modificar esse comportamento com as seguintes opções:

  • /passive: mostra uma barra de progresso à medida que o Redistribuível é instalado, mas de outra forma não requer interação do usuário.
  • /quiet: não exibe uma interface do usuário ou requer qualquer interação do usuário. Use /quiet para instalações totalmente autônomas.
  • /norestart: suprime todas as tentativas de reinicialização. Por padrão, um arquivo de log é criado em %TEMP%.
  • /log filename.txt para fazer logon em um arquivo específico.

Se você não estiver executando de um prompt de comando com privilégios elevados, precisará responder a uma solicitação de Controle de Conta de Usuário para permitir que o instalador seja executado com privilégios administrativos.

Esse comando de exemplo instala o x64 Redistributable. Ele mostra o progresso da instalação, mas não requer interação do usuário além de uma reinicialização:

vc_redist.x64.exe /install /passive /norestart

Instalar os módulos de mesclagem redistribuíveis

Importante

Os módulos de mesclagem (arquivos .msm) para arquivos do Pacote Redistribuível do Visual C++ foram preteridos. Não recomendamos que você os use para implantação de aplicativos. Em vez disso, recomendamos a implantação central do Pacote Redistribuível do Visual C++. A implantação central por meio de um pacote redistribuível possibilita que a Microsoft forneça manutenção aos arquivos de biblioteca de tempo de execução de forma independente. Uma desinstalação do aplicativo não pode afetar outros aplicativos que também usam a implantação central.

Quando você usa um pacote redistribuível para implantação central, não é responsável por acompanhar e manter as bibliotecas de runtime. Caso contrário, uma atualização dos arquivos da biblioteca de runtime exigirá a atualização e reimplantação do instalador .msi. O aplicativo poderá ficar vulnerável a bugs ou a problemas de segurança até você fazer isso.

Os módulos de mesclagem redistribuíveis devem ser incluídos no pacote Windows Installer (ou pacote de instalação semelhante) que você usa para implantar seu aplicativo. Para obter mais informações, consulte Redistribuir usando módulos de mesclagem. Para obter um exemplo, consulte Passo a passo: implantar um aplicativo Visual C++ usando um projeto de instalação.

Instalar arquivos redistribuíveis individuais

Também é possível instalar diretamente as DLLs redistribuíveis na pasta local do aplicativo. A pasta local do aplicativo é a pasta que contém o arquivo executável do aplicativo. Por motivos de manutenção, não recomendamos que você use esse local de instalação.

Possíveis erros de runtime

Se Windows não conseguir encontrar uma das DLLs redistribuíveis exigidas pelo aplicativo, ela poderá exibir uma mensagem semelhante a esta: "Este aplicativo falhou ao iniciar porque library.dll não foi encontrado. A reinstalação do aplicativo pode corrigir esse problema."

Para resolver esse tipo de erro, verifique se o instalador de aplicativos é compilado corretamente. Verifique se as bibliotecas redistribuíveis são implantadas corretamente no sistema de destino. Para obter mais informações, consulte Noções básicas sobre as dependências de um aplicativo Visual C++.