Configurare le impostazioni predefinite di installazione usando un file di risposta

Questo articolo illustra come creare un file di risposta che consente di automatizzare l'installazione di Visual Studio. Viene usato più comunemente quando si installa Visual Studio da un layout.

Il file di risposta di Visual Studio è un file JSON il cui contenuto contiene personalizzazioni usate durante l'installazione iniziale di Visual Studio nel client. Il relativo contenuto rispecchia gli argomenti e i parametri della riga di comando. Usare il file di risposta per le opzioni di configurazione seguenti:

Creazione del file di risposta

Il response.json file viene in genere creato quando un amministratore crea un layout e si trova nella cartella radice del layout. Tuttavia, è possibile creare un file di risposta personalizzato usando uno degli esempi seguenti.

Specifica del file di risposta

Se un amministratore distribuisce Visual Studio richiamando il programma di avvio automatico da un layout, verrà usato automaticamente il file di risposta trovato nella directory radice del layout. Amministrazione istrator può anche scegliere di specificare in modo esplicito un file di risposta diverso usando il --in parametro , come nell'esempio seguente:

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

Contenuto del file di risposta

Il file di risposta incapsula i parametri della riga di comando usati dal Programma di installazione di Visual Studio e segue queste regole generali:

  • Se un parametro della riga di comando non accetta argomenti , ad esempio , --quietallowUnsignedExtensions--passiveincludeRecommendedremoveOosuseLatestInstallere così via, il valore nel file di risposta deve essere true/false.
  • Se il parametro accetta un argomento ( ad esempio --installPath <dir>, ), --config <*.vsconfig file>il valore nel file di risposta deve essere una stringa.
  • Se il parametro accetta un argomento e può essere visualizzato più volte nella riga di comando (ad esempio, --add <id>), il valore nel file di risposta deve essere una matrice di stringhe.

I parametri specificati nella riga di comando sostituiscono le impostazioni incluse nel file di risposta, tranne quando i parametri accettano più input , ad esempio --add. Quando si dispone di più input, gli input nella riga di comando specificati vengono uniti con le impostazioni dal file di risposta.

Configurare il file di risposta usato durante l'installazione da un layout

Se è stato creato un layout usando il --layout comando , verrà creato un file predefinito response.json nella radice della cartella di layout. Amministrazione istrator devono modificare e personalizzare il file di risposta in modo appropriato prima di eseguire l'installazione in un computer client. In questo modo, possono controllare le impostazioni di configurazione iniziali del client.

Le impostazioni di configurazione nel response.json file vengono a cui viene fatto riferimento solo quando si esegue un programma di avvio automatico ,ad esempio vs_enterprise.exe. I programmatori di avvio automatico vengono in genere usati per eseguire l'installazione iniziale nel client, ma a volte vengono usati anche per aggiornare un client. Non response.json viene mai usato quando si avvia il programma di installazione in locale nel client.

Se l'amministratore ha creato un layout parziale, il file predefinito response.json nel layout specifica solo i carichi di lavoro e le lingue inclusi nel layout parziale.

Se il layout viene creato passando un --config *.vsconfig file, il *.vsconfig file verrà copiato nella directory di layout come layout.vsconfig e questo file di configurazione verrà fatto riferimento nel response.json file. In questo modo, è possibile usare i file di configurazione per inizializzare le installazioni client provenienti da un layout.

Assicurarsi di prestare particolare attenzione all'impostazione channelUri, che consente di configurare la posizione in cui il client cercherà gli aggiornamenti. La configurazione predefinita è che il client esamini i server ospitati da Microsoft su Internet per gli aggiornamenti. È necessario modificare il valore di channelUri e puntare al layout se si desidera che i client ottengano gli aggiornamenti dal layout. Di seguito sono riportati alcuni esempi di come eseguire questa operazione. È sempre possibile modificare la posizione in cui un client cerca gli aggiornamenti in futuro eseguendo il programma di installazione nel client e richiamando il modifySettings comando.

Se l'installazione client non viene eseguita usando --quiet o --passive modalità, gli utenti possono eseguire l'override delle impostazioni predefinite specificate in response.json e selezionare o deselezionare ulteriormente carichi di lavoro e componenti aggiuntivi da installare.

Avviso

Prestare molta attenzione quando si modificano le proprietà nell'oggetto response.json definito al momento della creazione del layout, perché alcuni elementi sono necessari per l'installazione.

Il file di base response.json in un layout dovrebbe essere simile all'esempio seguente, ad eccezione del fatto che productID rifletterà l'edizione nel 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 si crea o aggiorna un layout, viene creato anche un file response.template.json. Questo file contiene tutto il carico di lavoro, un componente e degli ID che può essere utilizzato. Questo file viene fornito come un modello per il quale è possibile includere tutto in un'installazione personalizzata. Gli amministratori possono utilizzare questo file come punto di partenza per un file di risposta personalizzata. Basta rimuovere gli ID per le operazioni che non si desidera installare e salvarlo nel file o nel response.json file di risposta. Non personalizzare il file response.template.json o le modifiche andranno perse ogni volta che viene aggiornato il layout.

Esempio di contenuto del file di risposta del layout personalizzato

L'esempio di file seguente response.json inizializza un'installazione client di Visual Studio 2019 Enterprise per selezionare diversi carichi di lavoro e componenti comuni, per selezionare le lingue dell'interfaccia utente inglese e francese e per configurare il percorso di aggiornamento per cercare le origini in un layout ospitato in rete. Si noti che per Visual Studio 2019, il percorso di aggiornamento (channelUri) può essere configurato solo durante l'installazione iniziale e non può essere modificato dopo il fatto , a meno che non si usi la funzionalità nel programma di installazione più recente. Per informazioni su come configurare il layout, vedere Configurare i criteri per le distribuzioni aziendali di Visual Studio e Configurare il layout per includere sempre e fornire il programma di installazione più recente.

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

Nell'esempio seguente il response.json file inizializza un client di Visual Studio 2022 Enterprise che:

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

}

Avviso

Se si usano layout webhosting Intranet, non è possibile impostare "noWeb": true nel response.json e aspettarsi che funzioni. Ciò disabiliterà il protocollo HTTP e impedirà al client di accedere al sito Web.

Risoluzione dei problemi

Se si verifica un problema con il programma di avvio automatico di Visual Studio che genera un errore quando si associa a un response.json file, vedere Risolvere gli errori correlati alla rete durante l'installazione o l'uso della pagina di Visual Studio per altre informazioni.

Supporto o risoluzione dei problemi

Non sempre tutto funziona correttamente. Se l'installazione di Visual Studio non riesce, vedere Risolvere i problemi di installazione e aggiornamento di Visual Studio per istruzioni dettagliate.

Ecco alcune altre opzioni di supporto: