Partage via


Configurer les paramètres d’installation par défaut à l’aide d’un fichier réponse

Dans cet article, vous allez apprendre à créer un fichier de réponse qui vous aide à automatiser votre installation de Visual Studio. Son utilisation la plus courante est lors de l'installation de Visual Studio à partir d'une disposition .

Le fichier de réponse Visual Studio est un fichier JSON dont le contenu contient des personnalisations utilisées lors de l’installation initiale de Visual Studio sur le client. Son contenu reflète les arguments et paramètres de ligne de commande . Utilisez le fichier réponse pour les options de configuration suivantes :

Création du fichier réponse

Le fichier response.json est généralement créé lorsqu’un administrateur crée un layout et peut être trouvé dans le dossier racine du layout. Toutefois, vous pouvez créer votre propre fichier de réponse à l’aide de l’un des exemples suivants.

Spécification du fichier de réponse

Si un administrateur déploie Visual Studio en appelant le programme d’amorçage depuis une disposition, le fichier de réponse trouvé dans le répertoire racine de la disposition est automatiquement utilisé. Les administrateurs peuvent également choisir de spécifier explicitement un autre fichier de réponse à l’aide du paramètre --in, comme dans l’exemple suivant :

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

Contenu du fichier de réponse

Le fichier réponse encapsule les paramètres de ligne de commande utilisés par Visual Studio Installer et suit les règles générales suivantes :

  • Si un paramètre de ligne de commande ne prend aucun argument (par exemple, --quiet, --passive, includeRecommended, removeOos, useLatestInstaller, allowUnsignedExtensions, etc.), la valeur du fichier réponse doit être true/false.
  • Si le paramètre prend un argument (par exemple, --installPath <dir>, --config <*.vsconfig file>), la valeur du fichier réponse doit être une chaîne.
  • Si le paramètre prend un argument et peut apparaître sur la ligne de commande plusieurs fois (par exemple, --add <id>), la valeur dans le fichier réponse doit être un tableau de chaînes.

Les paramètres spécifiés sur la ligne de commande remplacent les paramètres inclus dans le fichier réponse, sauf lorsque les paramètres prennent plusieurs entrées (par exemple, --add). Lorsque vous avez plusieurs entrées, les entrées fournies sur la ligne de commande sont fusionnées avec les paramètres du fichier de réponse.

Configurer le fichier réponse utilisé lors de l’installation à partir d’une disposition

Si vous créez une disposition à l’aide de la commande --layout, un fichier response.json par défaut est créé à la racine du dossier de disposition. Les administrateurs sont censés modifier et personnaliser le fichier réponse de manière appropriée avant l’installation sur un ordinateur client. Ainsi, ils peuvent contrôler les paramètres de configuration initiaux du client.

Les paramètres de configuration du fichier response.json ne sont utilisés que lors de l'exécution d'un programme d'amorçage (par exemple, vs_enterprise.exe). Les programmes d’amorçage sont généralement utilisés pour effectuer l’installation initiale sur un client, mais parfois ils sont également utilisés pour mettre à jour un client. La response.json n’est jamais utilisée lorsque vous lancez le programme d’installation localement sur le client.

Si l’administrateur a créé une disposition partielle, le fichier par défaut response.json dans la disposition spécifie uniquement les charges de travail et les langues incluses dans la disposition partielle.

Si la disposition est créée en transmettant un fichier --config *.vsconfig, le fichier *.vsconfig est copié dans le répertoire de disposition en tant que layout.vsconfig et ce fichier config est référencé dans le fichier response.json. De cette façon, vous pouvez utiliser des fichiers de configuration pour initialiser les installations clientes issues d’un schéma.

Veillez à prêter une attention particulière au paramètre channelUri, qui configure où le client recherche des mises à jour. La configuration par défaut est destinée au client à examiner les serveurs hébergés par Microsoft sur Internet pour les mises à jour. Vous devez modifier la valeur de channelUri et la pointer vers votre mise en page si vous souhaitez que les clients obtiennent leurs mises à jour à partir de votre mise en page. Les exemples de la façon de procéder sont décrits ci-dessous. Vous pouvez toujours modifier l’emplacement où un client recherche les mises à jour à l’avenir en exécutant le programme d’installation sur le client et en appelant la commande modifySettings.

Si l’installation du client n’est pas effectuée en mode --quiet ou --passive, les utilisateurs peuvent remplacer les valeurs par défaut spécifiées dans le response.json, puis sélectionner ou désélectionner des charges de travail et des composants supplémentaires à installer.

Avertissement

Soyez très prudent lors de la modification des propriétés dans la response.json définie lors de la création de la disposition, car certains éléments sont requis pour l’installation.

Le fichier de base response.json d’une disposition devrait ressembler à l’exemple suivant, sauf que le productID devrait refléter l’édition dans votre disposition.

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

Lorsque vous créez ou mettez à jour une disposition, un fichier response.template.json est également créé. Ce fichier contient toutes les ID de charge de travail, de composant et de langage qui peuvent être utilisés. Ce fichier est fourni en tant que modèle pour ce qui peut être inclus dans une installation personnalisée. Les administrateurs peuvent utiliser ce fichier comme point de départ pour un fichier de réponse personnalisé. Supprimez simplement les ID des éléments que vous ne souhaitez pas installer et enregistrez-les dans le fichier response.json ou votre propre fichier de réponse. Ne personnalisez pas le fichier response.template.json ou vos modifications sont perdues chaque fois que la disposition est mise à jour.

Exemple de contenu de fichier réponse personnalisé dans la disposition

L’exemple de fichier response.json suivant initialise une installation d’un client Visual Studio Enterprise pour sélectionner plusieurs charges de travail et composants courants, pour sélectionner les langues d’interface utilisateur anglaise et française, et pour que l’emplacement de mise à jour soit configuré pour rechercher des sources dans une disposition hébergée par le réseau. Pour Visual Studio 2019, l’emplacement de mise à jour (channelUri) ne peut être configuré qu’au cours de l’installation initiale et ne peut pas être modifié après le fait , sauf si vous utilisez la fonctionnalité dans le dernier programme d’installation. Reportez-vous aux rubriques Configurer les stratégies des déploiements d’entreprise de Visual Studio et Configurer votre disposition pour toujours inclure et fournir le dernier programme d’installation pour plus d’informations sur la façon de configurer cela.

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

L’exemple de fichier response.json suivant initialise une installation d’un client Visual Studio Enterprise pour sélectionner plusieurs charges de travail et composants courants, pour sélectionner les langues d’interface utilisateur anglaise et française, et pour que l’emplacement de mise à jour soit configuré pour rechercher des sources dans une disposition hébergée par le réseau. Reportez-vous aux rubriques Configurer les stratégies des déploiements d’entreprise de Visual Studio et Configurer votre disposition pour toujours inclure et fournir le dernier programme d’installation pour plus d’informations sur la façon de configurer cela.

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

Dans l'exemple suivant, le fichier response.json initialise l'installation d'un client Visual Studio Enterprise qui :

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

}

Avertissement

Si vous utilisez des layouts intranet hébergés sur le web, vous ne pouvez pas définir “noWeb”: true dans le fichier response.json et vous attendre à ce qu’il fonctionne. Cela désactive le protocole HTTP et empêche le client d’accéder au site web.

Dépannage

Si vous rencontrez un problème avec le bootstrapper de Visual Studio qui génère une erreur lorsque vous l'associez à un fichier response.json, consultez la page , Résoudre les erreurs liées au réseau lorsque vous installez ou utilisez Visual Studio, pour plus d'informations.

Support ou résolution des problèmes

Parfois, les choses peuvent mal tourner. Si votre installation de Visual Studio échoue, consultez résoudre les problèmes d’installation et de mise à niveau de Visual Studio pour obtenir des instructions pas à pas.

Voici quelques options de support supplémentaires :

  • Pour les problèmes liés à l’installation, utilisez l’option de chat d’installation (en anglais uniquement) .
  • Signalez des problèmes de produit à nous à l’aide de l’outil Signaler un problème qui apparaît à la fois dans Visual Studio Installer et dans l’IDE Visual Studio. Si vous êtes administrateur informatique et que vous n'avez pas installé Visual Studio, vous pouvez soumettre des commentaires aux administrateurs informatiques.
  • Suggérer une fonctionnalité, suivre les problèmes de produit et trouver des réponses dans le Visual Studio Developer Community.