Partilhar via


Definir configurações padrão de instalação usando um arquivo de resposta

Neste artigo, você aprenderá a criar um arquivo de resposta que ajuda a automatizar a instalação do Visual Studio. Seu uso mais comum é quando você instala o Visual Studio a partir de um layout.

O arquivo de resposta do Visual Studio é um arquivo de JSON cujo conteúdo contém personalizações usadas durante a instalação inicial do Visual Studio no cliente. O conteúdo espelha os argumentos de linha de comando e os parâmetros. Use o arquivo de resposta para as seguintes opções de configuração:

Criando o arquivo de resposta

O arquivo response.json normalmente é criado quando um administrador cria um de layout e pode ser encontrado na pasta raiz do layout. No entanto, você pode criar seu próprio arquivo de resposta usando um dos exemplos a seguir.

Especificando o arquivo de resposta

Se um administrador implantar o Visual Studio invocando o bootstrapper de um layout, o arquivo de resposta encontrado no diretório raiz do layout será usado automaticamente. Os administradores também podem optar por especificar explicitamente um arquivo de resposta diferente usando o parâmetro --in, como no exemplo a seguir:

\\server\share\layoutdirectory\vs_enterprise.exe --in custom_response_file.json

Conteúdo do arquivo de resposta

O arquivo de resposta encapsula parâmetros de linha de comando usados pelo instalador do Visual Studio e segue estas regras gerais:

  • Se um parâmetro de linha de comando não usa argumentos (por exemplo, --quiet, --passive, includeRecommended, removeOos, useLatestInstaller, allowUnsignedExtensions, etc.), o valor no arquivo de resposta deve ser true/false.
  • Se o parâmetro usa um argumento (por exemplo, --installPath <dir>, --config <*.vsconfig file>), o valor no arquivo de resposta deve ser uma cadeia de caracteres.
  • Se o parâmetro usa um argumento e pode aparecer na linha de comando mais de uma vez (por exemplo, --add <id>), o valor no arquivo de resposta deve ser uma matriz de cadeias de caracteres.

Os parâmetros especificados na linha de comando substituem as configurações incluídas no arquivo de resposta, exceto quando os parâmetros recebem várias entradas (por exemplo, --add). Quando você tem várias entradas, as entradas fornecidas na linha de comando são mescladas com as configurações do arquivo de resposta.

Configurar o arquivo de resposta usado ao instalar a partir de um layout

Se você criar um layout usando o comando --layout, um arquivo de response.json padrão será criado na raiz da pasta de layout. Espera-se que os administradores modifiquem e personalizem o arquivo de resposta adequadamente antes de instalar em uma máquina cliente. Dessa forma, eles podem controlar as definições de configuração inicial do cliente.

As definições de configuração no arquivo response.json são referenciadas apenas ao executar um gestor de arranque (por exemplo, vs_enterprise.exe). Os bootstrappers são normalmente usados para executar a instalação inicial no cliente, mas às vezes eles também são usados para atualizar um cliente. O response.json nunca é usado quando você inicia o instalador localmente no cliente.

Se o administrador criou um layout parcial, o arquivo de response.json padrão no layout especifica apenas as cargas de trabalho e os idiomas que foram incluídos no layout parcial.

Se o layout for criado passando um arquivo --config *.vsconfig, o arquivo *.vsconfig será copiado para o diretório de layout conforme layout.vsconfig e esse arquivo de configuração será referenciado no arquivo response.json. Dessa forma, você pode usar arquivos de configuração para inicializar instalações de cliente que vêm de um layout.

Certifique-se de prestar atenção especial à configuração de channelUri, que configura onde o cliente procura atualizações. A configuração padrão é para que o cliente procure atualizações nos servidores hospedados pela Microsoft na Internet. Você precisa alterar o valor de channelUri e apontá-lo para o seu layout, caso deseje que os clientes obtenham as atualizações a partir do seu layout. Exemplos de como fazer isso estão detalhados abaixo. Você sempre pode alterar onde um cliente irá procurar atualizações no futuro, executando o instalador no cliente e invocando o comando modifySettings.

Se a instalação do cliente não for feita usando o modo --quiet ou --passive, os usuários poderão substituir os padrões especificados no response.json e ainda selecionar ou desmarcar cargas de trabalho e componentes adicionais a serem instalados.

Advertência

Tenha muito cuidado ao editar propriedades no response.json definido quando o layout foi criado, pois alguns dos itens são necessários para a instalação.

O ficheiro base response.json num layout deve ser semelhante ao seguinte exemplo, exceto que o productID deverá refletir a edição no seu layout.

{
  "installChannelUri": ".\\ChannelManifest.json",
  "channelUri": "https://aka.ms/vs/17/release/channel",
  "installCatalogUri": ".\\Catalog.json",
  "channelId": "VisualStudio.17.Release",
  "productId": "Microsoft.VisualStudio.Product.Enterprise"
}
{
  "installChannelUri": ".\\ChannelManifest.json",
  "channelUri": "https://aka.ms/vs/17/release.ltsc.17.0/channel",
  "installCatalogUri": ".\\Catalog.json",
  "channelId": "VisualStudio.17.Release.LTSC.17.0",
  "productId": "Microsoft.VisualStudio.Product.Enterprise"
}
{
  "installChannelUri": ".\\ChannelManifest.json",
  "channelUri": "https://aka.ms/vs/stable/channel",
  "installCatalogUri": ".\\Catalog.json",
  "channelId": "VisualStudio.18.Stable",
  "productId": "Microsoft.VisualStudio.Product.Enterprise"
}

Quando você cria ou atualiza um layout, um arquivo response.template.json também é criado. Esse arquivo contém todas as IDs de carga de trabalho, componente e idioma que podem ser usadas. Este arquivo é fornecido como um modelo para o que tudo poderia ser incluído em uma instalação personalizada. Os administradores podem usar esse arquivo como ponto de partida para um arquivo de resposta personalizado. Basta remover os IDs das coisas que você não deseja instalar e salvá-los no arquivo response.json ou em seu próprio arquivo de resposta. Não personalize o arquivo response.template.json ou suas alterações serão perdidas sempre que o layout for atualizado.

Exemplo de conteúdo de arquivo de resposta de layout personalizado

O exemplo de arquivo de response.json a seguir inicializa uma instalação de cliente do Visual Studio Enterprise para selecionar várias cargas de trabalho e componentes comuns, para selecionar os idiomas da interface do usuário em inglês e francês e para ter o local de atualização configurado para procurar fontes em um layout hospedado na rede. Consulte as Configurar políticas para implantações corporativas do Visual Studio e o Configurar o seu layout para sempre incluir e fornecer o instalador mais recente para obter informações sobre como configurar estas opções.

{
  "installChannelUri": ".\\ChannelManifest.json",
  "channelUri": "\\\\server\\share\\layoutdirectory\\ChannelManifest.json",
  "installCatalogUri": ".\\Catalog.json",
  "channelId": "VisualStudio.17.Release",
  "productId": "Microsoft.VisualStudio.Product.Enterprise",

  "installPath": "C:\\VS2022",
  "quiet": false,
  "passive": false,
  "includeRecommended": true,
  "norestart": false,
  "useLatestInstaller": true,
  "removeOos": true,

  "addProductLang": [
    "en-US",
    "fr-FR"
    ],

    "add": [
        "Microsoft.VisualStudio.Workload.ManagedDesktop",
        "Microsoft.VisualStudio.Workload.Data",
        "Microsoft.VisualStudio.Workload.NativeDesktop",
        "Microsoft.VisualStudio.Workload.NetWeb",
        "Microsoft.VisualStudio.Workload.Office",
        "Microsoft.VisualStudio.Workload.Universal",
        "Component.GitHub.VisualStudio"
    ]
}

No exemplo a seguir, o arquivo response.json inicializa uma instalação de cliente do Visual Studio Enterprise que:

{
  "installChannelUri": ".\\ChannelManifest.json",
  "channelUri": "http://MyCompanyIntranetSite/VS2022Enterprise/ChannelManifest.json",
  "installCatalogUri": ".\\Catalog.json",
  "channelId": "VisualStudio.17.Release",
  "productId": "Microsoft.VisualStudio.Product.Enterprise",
  "arch": "x64",
  "config": ".\\Layout.vsconfig"
  "installPath": "C:\\VS2022",
  "quiet": false,
  "passive": false,
  "includeRecommended": true,
  "norestart": false,
  "useLatestInstaller": true,
  "removeOos": true,
  "allowUnsignedExtensions": true,

  "addProductLang": [
    "en-US",
    "fr-FR"
    ]

}

O exemplo de arquivo de response.json a seguir inicializa uma instalação de cliente do Visual Studio Enterprise para selecionar várias cargas de trabalho e componentes comuns, para selecionar os idiomas da interface do usuário em inglês e francês e para ter o local de atualização configurado para procurar fontes em um layout hospedado na rede. Consulte as Configurar políticas para implantações corporativas do Visual Studio e o Configurar o seu layout para sempre incluir e fornecer o instalador mais recente para obter informações sobre como configurar estas opções.

{
  "installChannelUri": ".\\ChannelManifest.json",
  "channelUri": "\\\\server\\share\\layoutdirectory\\ChannelManifest.json",
  "installCatalogUri": ".\\Catalog.json",
  "channelId": "VisualStudio.18.Stable",
  "productId": "Microsoft.VisualStudio.Product.Enterprise",

  "installPath": "C:\\/2026/",
  "quiet": false,
  "passive": false,
  "includeRecommended": true,
  "norestart": false,
  "useLatestInstaller": true,
  "removeOos": true,

  "addProductLang": [
    "en-US",
    "fr-FR"
    ],

    "add": [
        "Microsoft.VisualStudio.Workload.ManagedDesktop",
        "Microsoft.VisualStudio.Workload.Data",
        "Microsoft.VisualStudio.Workload.NativeDesktop",
        "Microsoft.VisualStudio.Workload.NetWeb",
        "Microsoft.VisualStudio.Workload.Office",
        "Microsoft.VisualStudio.Workload.Universal",
        "Component.GitHub.VisualStudio"
    ]
}

No exemplo a seguir, o arquivo response.json inicializa uma instalação de cliente do Visual Studio Enterprise que:

{
  "installChannelUri": ".\\ChannelManifest.json",
  "channelUri": "http://MyCompanyIntranetSite/VS2026Enterprise/ChannelManifest.json",
  "installCatalogUri": ".\\Catalog.json",
  "channelId": "VisualStudio.18.Stable",
  "productId": "Microsoft.VisualStudio.Product.Enterprise",
  "arch": "x64",
  "config": ".\\Layout.vsconfig"
  "installPath": "C:\\/2026/",
  "quiet": false,
  "passive": false,
  "includeRecommended": true,
  "norestart": false,
  "useLatestInstaller": true,
  "removeOos": true,
  "allowUnsignedExtensions": true,

  "addProductLang": [
    "en-US",
    "fr-FR"
    ]

}

Advertência

Se você estiver usando layouts hospedados na Web da intranet, não poderá definir "noWeb": true no response.json e esperar que funcione. Isso desativará o protocolo http e impedirá que o cliente acesse o site.

Solução de problemas

Caso encontre um problema com o bootstrapper do Visual Studio que lance um erro ao emparelhá-lo com um arquivo response.json, consulte a página Solucionar problemas de erros relacionados à rede ao instalar ou usar o Visual Studio para mais informações.

Suporte ou solução de problemas

Por vezes, as coisas podem correr mal. Se a instalação do Visual Studio falhar, consulte Solucionar problemas de instalação e atualização do Visual Studio para obter orientação passo a passo.

Aqui estão mais algumas opções de suporte:

  • Use a opção de suporte do chat de instalação (somente em inglês) para problemas relacionados à instalação.
  • Comunique-nos problemas de produto usando a ferramenta Report a Problem que aparece no Visual Studio Installer e no IDE do Visual Studio. Se você for um administrador de TI e não tiver o Visual Studio instalado, poderá enviar comentários do administrador de TI.
  • Sugira um recurso, acompanhe problemas do produto e encontre respostas no da Comunidade de Desenvolvedores do Visual Studio .