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. O uso mais comum é quando você instala o Visual Studio a partir de um layout de .

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 seu conteúdo espelha os argumentos e parâmetros de linha de comando . 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 apenas referenciadas na execução de um bootstrapper (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 do channelUri, que define onde o cliente busca por atualizações. A configuração padrão é para que o cliente procure atualizações nos servidores hospedados pela Microsoft na Internet. Para que os clientes obtenham suas atualizações do seu layout, você precisa alterar o valor de channelUri e apontá-lo para o seu layout. Exemplos de como fazer isso estão detalhados abaixo. Você sempre pode alterar onde um cliente procura atualizações no futuro, executando o instalador no cliente e invocando o comando modifySettings.

Se a instalação do cliente não for realizada nos modos --quiet ou --passive, os usuários poderão alterar os padrões especificados em response.json e, além disso, selecionar ou desmarcar tarefas de trabalho e componentes adicionais para instalação.

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 de base response.json num layout deve ser semelhante ao exemplo a seguir, exceto que o ProductID refletiria a edição no seu layout.

{
  "installChannelUri": ".\\ChannelManifest.json",
  "channelUri": "https://aka.ms/vs/16/release/channel",
  "installCatalogUri": ".\\Catalog.json",
  "channelId": "VisualStudio.16.Release",
  "productId": "Microsoft.VisualStudio.Product.Enterprise"
}
{
  "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"
}

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. Para o Visual Studio 2019, o local de atualização (channelUri) só pode ser configurado antes de instalar e não pode ser alterado depois disso a menos que o utilizador use a funcionalidade no instalador mais recente. Consulte o Configurar políticas para implantações empresariais do Visual Studio e o Configurar o seu layout para sempre incluir e fornecer o instalador mais recente para obter informações sobre como fazer esta configuração.

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

  "installPath": "C:\\VS2019",
  "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"
    ]
}

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 o Configurar políticas para implantações empresariais do Visual Studio e o Configure a sua configuração para sempre incluir e fornecer o instalador mais recente para obter informações sobre como configurar isto.

{
  "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"
    ]

}

Advertência

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

Solução de problemas

Se tiver um problema com o bootstrapper do Visual Studio ao emparelhá-lo com um ficheiro response.json, consulte a página Solucionar problemas relacionados com a rede ao instalar ou utilizar o Visual Studio para obter 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 .