Dela via


Konfigurera standardinställningar för installation med hjälp av en svarsfil

I den här artikeln får du lära dig hur du skapar en svarsfil som hjälper dig att automatisera Visual Studio-installationen. Det vanligaste är när du installerar Visual Studio från en layout.

Visual Studio-svarsfilen är en JSON- fil vars innehåll innehåller anpassningar som användes vid den första installationen av Visual Studio på klienten. Innehållet speglar kommandoradsargument och parametrar. Använd svarsfilen för följande konfigurationsalternativ:

Skapa svarsfilen

Den response.json filen skapas vanligtvis när en administratör skapar en layout och finns i rotmappen i layouten. Du kan dock skapa en egen svarsfil med något av följande exempel.

Specificera svarsfilen

Om en administratör distribuerar Visual Studio genom att anropa bootstrappern från en layoutanvänds svarsfilen som finns i layoutens rotkatalog automatiskt. Administratörer kan också välja att uttryckligen ange en annan svarsfil med hjälp av parametern --in, som i följande exempel:

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

Svarsfilinnehåll

Svarsfilen kapslar in kommandoradsparametrar som används av Visual Studio Installer och följer dessa allmänna regler:

  • Om en kommandoradsparameter inte tar några argument (till exempel --quiet, --passive, includeRecommended, removeOos, useLatestInstaller, allowUnsignedExtensionsosv.) ska värdet i svarsfilen vara sant/falskt.
  • Om parametern tar ett argument (till exempel --installPath <dir>, --config <*.vsconfig file>) ska värdet i svarsfilen vara en sträng.
  • Om parametern tar ett argument och kan visas på kommandoraden mer än en gång (till exempel --add <id>) ska värdet i svarsfilen vara en matris med strängar.

Parametrar som anges på kommandoraden åsidosätter de inställningar som ingår i svarsfilen, förutom när parametrar tar flera indata (till exempel --add). När du har flera indata sammanfogas de indata som anges på kommandoraden med inställningar från svarsfilen.

Konfigurera svarsfilen som används vid installation från en layout

Om du skapar en layout med hjälp av kommandot --layout skapas en standardfil response.json i roten i layoutmappen. Administratörer förväntas ändra och anpassa svarsfilen på rätt sätt innan installeras på en klientdator. På så sätt kan de styra klientens inledande konfigurationsinställningar.

Konfigurationsinställningarna i filen response.json refereras bara till när du kör en bootstrapper- (till exempel vs_enterprise.exe). Bootstrappers används vanligtvis för att utföra den första installationen på klienten, men ibland används de också för att uppdatera en klient. response.json används aldrig när du startar installationsprogrammet lokalt på klienten.

Om administratören har skapat en partiell layout anger standardfilen response.json i layouten endast de arbetsbelastningar och språk som ingick i den partiella layouten.

Om layouten skapas genom att skicka in en --config *.vsconfig fil kopieras den *.vsconfig filen till layoutkatalogen som layout.vsconfig och den här konfigurationsfilen refereras till i response.json-filen. På så sätt kan du använda konfigurationsfiler för att initiera klientinstallationer som kommer från en layout.

Se till att ägna särskild uppmärksamhet åt channelUri-inställningen, som konfigurerar där klienten söker efter uppdateringar. Standardkonfigurationen är att klienten ska titta på Microsofts värdbaserade servrar på Internet för uppdateringar. Du måste ändra värdet för channelUri och rikta det mot layouten om du vill att klienterna ska ta emot sina uppdateringar från din layout. Exempel på hur du gör detta beskrivs nedan. Du kan alltid ändra var en klient söker efter uppdateringar i framtiden genom att köra installationsprogrammet på klienten och anropa kommandot modifySettings.

Om klientinstallationen inte är gjord i --quiet- eller --passive-läge, kan användarna åsidosätta standardvärdena som anges i response.json och ytterligare välja eller avmarkera arbetsbelastningar och komponenter.

Varning

Var mycket försiktig när du redigerar egenskaper i response.json som definierades när layouten skapades, eftersom vissa av objekten krävs för installationen.

Basfilen response.json i en layout bör se ut ungefär som i följande exempel, förutom att productID skulle återspegla utgåvan i layouten.

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

När du skapar eller uppdaterar en layout skapas även en response.template.json fil. Den här filen innehåller alla arbetsbelastnings-, komponent- och språk-ID:t som kan användas. Den här filen tillhandahålls som en mall för vad alla kan ingå i en anpassad installation. Administratörer kan använda den här filen som utgångspunkt för en anpassad svarsfil. Ta bara bort ID:erna för de saker du inte vill installera och spara dem i filen response.json eller din egen svarsfil. Anpassa inte response.template.json-filen eller så går ändringarna förlorade när layouten uppdateras.

Exempel på anpassat layout-svarsfilinnehåll

Följande response.json filexempel initierar en Installation av Visual Studio Enterprise-klienten för att välja flera vanliga arbetsbelastningar och komponenter, för att välja både engelska och franska användargränssnittsspråk och för att ha uppdateringsplatsen konfigurerad för att söka efter källor i en nätverkshanterad layout. För Visual Studio 2019 kan uppdateringsplatsen (channelUri) endast konfigureras under den första installationen och kan inte ändras i efterhand såvida inte du använder funktionerna i det senaste installationsprogrammet. Se Konfigurera principer för företagsdistributioner av Visual Studio och Konfigurera layouten för att alltid inkludera och tillhandahålla den senaste installationsprogrammet för information om hur du konfigurerar detta.

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

Följande response.json filexempel initierar en Installation av Visual Studio Enterprise-klienten för att välja flera vanliga arbetsbelastningar och komponenter, för att välja både engelska och franska användargränssnittsspråk och för att ha uppdateringsplatsen konfigurerad för att söka efter källor i en nätverkshanterad layout. Se Konfigurera principer för företagsdistributioner av Visual Studio och Konfigurera layouten för att alltid inkludera och tillhandahålla den senaste installationsprogrammet för information om hur du konfigurerar detta.

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

I följande exempel initierar response.json-filen en Visual Studio Enterprise-klientinstallation som:

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

}

Varning

Om du använder webbhubbaserade layouter för intranät kan du inte ställa in "noWeb": true i response.json och förvänta att det fungerar. Detta inaktiverar http-protokollet och hindrar klienten från att komma åt webbplatsen.

Felsökning

Om du stöter på ett problem med att Visual Studio-bootstrappern genererar ett fel när du parkopplar den med en response.json fil kan du läsa Felsöka nätverksrelaterade fel när du installerar eller använder Visual Studio-sidan för mer information.

Support eller felsökning

Ibland kan saker gå fel. Om Visual Studio-installationen misslyckas kan du läsa Felsöka problem med installation och uppgradering av Visual Studio för stegvis vägledning.

Här är några fler supportalternativ: