Поделиться через


Создание и обслуживание сетевой установки Visual Studio

📣 Мы хотели бы услышать ваши отзывы!Выполните этот опрос и сообщите нам, как мы можем улучшить интерфейс макета. Спасибо за вашу поддержку!

Иногда администратор предприятия хочет создать частный кэш установки (также называемый макетом), содержащий файлы Visual Studio, которые можно развернуть на клиентских компьютерах в организации.

Создание макета полезно в следующих сценариях:

  • Пользователь с ограниченными разрешениями системы
  • Клиентские компьютеры с ограниченным доступом к Интернету
  • Организация хочет стандартизировать определенную версию набора инструментов разработчика

Мы разработали Visual Studio, чтобы администратор может создавать и поддерживать макет и хранить его во внутренней сетевой папке и при необходимости сделать его доступным в интрасети организации. Макет служит исходным расположением для всех файлов Visual Studio, необходимых как для первоначальной установки клиента, так и для последующих обновлений.

Информация на этой странице сгруппирована в три основных раздела:

  • Создайте макет: описывает, как создать макет с правильным содержимым продукта, настроить параметры по умолчанию, сохранить макет в сетевой общей папке и сделать его доступным в интрасети.
  • Сохраните макет: сведения о том, как оптимально обновить версию продукта в макете или изменить содержимое продукта в макете, параметры канала, версию установщика и размер папки.
  • Справка и поддержка: где обратиться за помощью

Создание макета

Подготовка расположения хранилища общей папки сети

Сначала необходимо определить, где будут храниться скачанные пакеты Visual Studio. Если в вашей организации используется несколько выпусков Visual Studio (например, Visual Studio 2022 Профессиональный и Visual Studio 2022 Корпоративная), необходимо создать отдельный макет для каждого выпуска. Создание отдельного макета для каждого выпуска может потреблять много места на диске, особенно если учитывать, что обновления макета также используют место на диске.

Путь макета должен быть меньше 80 символов; некоторые организации успешно используют символьные ссылки для обхода ограничения на 80 символов.

Скачайте загрузчик Visual Studio для создания макета

Скачайте подходящий инсталлятор для требуемой версии Visual Studio и скопируйте его в папку, которую вы хотите использовать в качестве репозитория макета. После создания макета его можно использовать для установки Visual Studio на любом клиентском компьютере. Загрузчик — это исполняемый файл, используемый для создания, обновления и выполнения других операций макета. Для выполнения этого шага необходимо иметь подключение к Интернету и администраторские права.

Следующие установщики всегда устанавливают последнюю самую безопасную версию Visual Studio 2019, независимо от того, когда вы их запускаете. Если вы хотите создать или обновить макет до определенной версии Visual Studio 2019, перейдите на страницу выпусков Visual Studio 2019 . Он содержит ссылки на загрузчики фиксированных версий для каждого выпуска обновлений. Скачайте нужный файл и скопируйте его в каталог, который вы хотите использовать в качестве исходного расположения макета.

Издание Загрузчик
Visual Studio 2019 Корпоративная версия 16.11 vs_enterprise.exe
Visual Studio 2019 Professional версии 16.11 vs_professional.exe
Средства сборки Visual Studio 2019 версии 16.11 vs_buildtools.exe

Другие поддерживаемые загрузчики включают vs_teamexplorer.exe, vs_testagent.exeи vs_testcontroller.exe.

Следующие программы установки всегда устанавливают последнюю, самую безопасную версию Visual Studio 2022 на текущем канале, независимо от времени их запуска. Если вы хотите создать или обновить макет до определенной версии или определенного канала Visual Studio 2022, скачайте соответствующий загрузчик. На странице журнала выпусков Visual Studio 2022 доступны как обновляемые, так и фиксированные версии загрузчиков для каждого выпуска обслуживания и канала. Скачайте нужный файл и скопируйте его в каталог, который вы хотите использовать в качестве исходного расположения макета.

Издание Загрузчик
Visual Studio 2022 Корпоративная vs_enterprise.exe
Visual Studio 2022 Профессиональный vs_professional.exe
Сообщество Visual Studio 2022 vs_community.exe
Средства сборки Visual Studio 2022 vs_buildtools.exe

Подсказка

Если вы ранее скачали файл загрузчика и хотите проверить, какая версия он, вот как это сделать. В Windows откройте Проводник, щёлкните правой кнопкой мыши файл начальной загрузки, выберите Свойства, перейдите на вкладку Сведения и просмотрите номер версии продукта. Чтобы сопоставить это число с выпуском Visual Studio, перейдите к таблице в нижней части страницы выпусков Visual Studio 2019.

Подсказка

Если вы ранее скачали файл загрузчика и хотите проверить версию, которую он устанавливает, вот как это сделать. В Windows откройте проводник, щелкните правой кнопкой мыши файл начальной загрузки, выберите "Свойства" и перейдите на вкладку "Сведения". Поле версии продукта описывает канал и версию, которую устанавливает загрузчик. Номер версии всегда должен читаться как "последняя версия обслуживания указанного", и канал считается текущим, если это не указано явно. Таким образом, загрузчик с версией продукта LTSC 17.0 устанавливает последний выпуск обслуживания 17.0.x, доступный на канале LTSC 17.0. Загрузчик с версией продукта, с указанием Visual Studio 2022, устанавливает последнюю обновленную версию Visual Studio 2022 на канале Current.

Скачивание пакетов Visual Studio

Для выполнения этого шага необходимо иметь подключение к Интернету.

Откройте командную строку с повышенными привилегиями, перейдите в каталог, в котором вы скачали загрузчик, и используйте его параметры, как указано на странице параметры командной строки для установки Visual Studio, чтобы создать и поддерживать сетевой макет. В следующих примерах показаны распространенные способы создания начальных макетов. Дополнительные примеры можно найти в примерах параметров командной строки на странице установки Visual Studio .

Для полной установки языковой локали требуется около 40 ГБ дискового пространства для Visual Studio Community и около 50 ГБ для Visual Studio Enterprise. Для дополнительных языковых локалей требуется около половины ГБ.

Рекомендуется создать начальный макет Visual Studio со всеми рабочими нагрузками и соответствующими языками и сохранить пакеты в каталог макета на сетевом сервере. Таким образом, любая установка клиента имеет доступ ко всему предложению продукта Visual Studio и возможности установки любого подмножества. Чтобы создать полный макет Visual Studio, выполните следующую команду из каталога, в котором планируется разместить макет сети:

vs_enterprise.exe --layout c:\VSLayout

Убедитесь, что макет основан на правильном канале

Важно убедиться, что макет сети основан на правильном канале. Это связано с тем, что канал является одним из критериев, используемых администратором при развертывании в организации, чтобы определить, какие экземпляры клиента следует обновить. Например, если макет основан на канале VisualStudio.17.Release.LTSC.17.0 и если клиенты настроены на получение обновлений с серверов, размещенных корпорацией Майкрософт, все обновления безопасности, выпущенные на канале LTSC 17.0, будут доступны клиентам, установленным или обновленным из этого макета.

Загрузчики, перечисленные ранее, основаны на канале Current. Чтобы создать макет на основе одного из каналов LTSC, получите правильный загрузчик канала со страницы журнала выпусков Visual Studio 2022, скопируйте его в папку макета и используйте для создания или обновления макета.

Настройка содержимого макета

Существует несколько вариантов, которые можно использовать для настройки содержимого макета сети. Можно создать частичный макет, содержащий только определенный набор языковых стандартов, рабочих нагрузок, компонентов и их рекомендуемых или необязательных зависимостей. Частичный макет полезен, если вы знаете, что собираетесь развернуть только часть рабочих нагрузок на клиентские рабочие станции. Типичные параметры командной строки для настройки макета:

  • --add для указания идентификаторов рабочих нагрузок или компонентов.
    Если используется --add, загружаются только указанные нагрузки и компоненты --add. Если --add не используется, скачиваются все рабочие нагрузки и компоненты.
  • --includeRecommended для включения всех рекомендуемых компонентов для указанных идентификаторов рабочих нагрузок.
  • --includeOptional для включения всех необязательных компонентов для определённых идентификаторов рабочих нагрузок.
  • --config чтобы использовать *.vsconfig файл для указания нагрузок, компонентов или расширений, которые должны быть включены в макет или на которые должно быть указано в макете. Убедитесь, что указан полный путь к файлу конфигурации.
  • --lang , чтобы указать языковые локали.

Ниже приведены несколько примеров создания пользовательского макета сети.

  • Чтобы создать макет с необходимыми компонентами для всех рабочих нагрузок только на одном языке, выполните следующую команду:

    vs_enterprise.exe --layout C:\VSLayout --lang en-US
    
  • Чтобы создать макет с необходимыми компонентами для всех рабочих нагрузок на нескольких языках, выполните следующую команду:

    vs_enterprise.exe --layout C:\VSLayout --lang en-US de-DE ja-JP
    
  • Чтобы создать макет с одной рабочей нагрузкой и всеми необходимыми и рекомендуемыми компонентами для этой рабочей нагрузки на всех языках, выполните следующую команду:

    vs_enterprise.exe --layout C:\VSLayout --add Microsoft.VisualStudio.Workload.Azure --includeRecommended
    
  • Чтобы создать макет с двумя рабочими нагрузками и одним дополнительным компонентом на трех языках, выполните следующую команду:

    vs_enterprise.exe --layout C:\VSLayout --add Microsoft.VisualStudio.Workload.Azure --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Component.Git --lang en-US de-DE ja-JP
    

Использование файла конфигурации для инициализации содержимого макета

Параметр --config можно использовать для передачи файла *.vsconfig. Убедитесь, что указан полный путь к файлу конфигурации. *.vsconfig Использование файла во время создания макета настраивает и ограничивает содержимое макета сети указанным в файле конфигурации. Файл конфигурации копируется в каталог макета и переименован в layout.vsconfig.

Все расширения, указанные в *.vsconfig файле , не копируются непосредственно в макет. Вместо этого файл компоновки response.json содержит ссылку на недавно созданный layout.vsconfig файл, задавая местоположение установки для расширений клиента. Если вы устанавливаете расширения, которые не подписаны response.json, обязательно отредактируйте response.json, чтобы добавить . Смотрите примеры содержимого response.json.

vs_enterprise.exe --layout "C:\VSLayout" --config "C:\myconfig.vsconfig" 

Копирование макета в сетевой общий ресурс

Необходимо разместить макет в общей сетевой папке, чтобы к нему можно было получить доступ с клиентских компьютеров. Если вы создали макет на локальном компьютере, необходимо скопировать его в расположение сетевого файла. В следующем примере используется xcopy. Вы также можете использовать robocopy, если вы хотите. Пример:

xcopy /e c:\VSLayout \\server\share\layoutdirectory

Настройка начальных установок клиента по умолчанию для этого макета

Вызывается файл response.json в корневой папке макета. Этот настраиваемый файл предоставляет начальные параметры по умолчанию для настройки на клиенте при первоначальной установке клиента из макета. Распространенные параметры конфигурации включают возможность настройки:

  • Какие рабочие нагрузки, компоненты или языки должны быть установлены по умолчанию на клиенте.
  • Если рекомендуемые компоненты также должны быть установлены
  • Если клиент должен уважать файл установки *.vsconfig
  • Где клиент должен получать обновления от
  • Если во время обновления необходимо удалить компоненты без поддержки.
  • Если позволена загрузка неподписанных расширений в тихом и программном режиме

Дополнительные сведения можно найти на странице Автоматизация установки Visual Studio с помощью файла ответа.

Предоставление доступа к макету через сайт интрасети

Начиная с июня 2023 года вы можете сделать макеты доступными на внутреннем сайте интрасети, что позволяет воспользоваться преимуществами кэширования файлов веб-сервера и возможностей производительности георепликации. Чтобы использовать эту новую функцию, необходимо использовать последние загрузчики Visual Studio и последнюю версию Установщика Visual Studio. ИТ-администраторы должны выполнить следующие действия, чтобы воспользоваться этой возможностью размещения веб-сайтов интрасети:

  1. Сначала создайте и поддерживайте схему сети и убедитесь, что данные доступны и регулярно обновляются на сетевом ресурсе. Кроме того, не забудьте настроить значение channelUri в response.jsonмакета , если вы хотите, чтобы клиенты получили обновления из расположения макета интрасети.

  2. Затем администратор должен подготовить внутренний веб-сайт и привязать источник веб-сайта к расположению сетевого файла макета. Кроме того, необходимо убедиться, что веб-сервер учитывает следующие типы MIME:

    Расширение файла Тип MIME
    .cab application/vnd.ms-cab-compressed
    .exe application/octet-stream
    .json application/json
    .msi application/octet-stream
    .msu application/octet-stream
    .nupkg application/octet-stream
    .opc application/octet-stream
    .ps1 application/postscript
    VSIX application/octet-stream
    .xml text/xml
    .zip application/x-zip-compressed
  3. Наконец, чтобы развернуть этот макет на клиенте, запустите сценарий PowerShell на клиенте, чтобы выполнить начальную установку. После успешной установки Visual Studio на клиент из размещенного веб-макета обновления клиентов для макетов веб-размещения можно обновить с помощью стандартных методов.

Убедитесь, что макет использует последний установщик

Замечание

По состоянию на июнь 2023 года последний установщик поставляется по умолчанию с каждым обновлением для всех поддерживаемых версий Visual Studio 2017, Visual Studio 2019 и Visual Studio 2022. Поэтому если вы используете одну из этих версий продукта, вам не нужно делать ничего явно, чтобы получить последнюю версию установщика с последними функциями и исправлениями ошибок.

Если вы используете версию Visual Studio, отправленную до июня 2023 года, мы рекомендуем всегда использовать последнюю версию Visual Studio Installer в макете и распространять ее клиентам. Например, если вы распространяете установщик Visual Studio 2022 в макете Visual Studio 2019, клиенты Visual Studio 2019 на основе этого макета могут изменять исходное расположение обновлений или легко удалять компоненты вне поддержки. Дополнительные сведения описаны в следующем разделе.

Возможность программно обеспечить использование последнего установщика доступна только для загрузчиков Visual Studio 2019, созданных после релиза Visual Studio 2022. Таким образом, vs_enterprise.exe в следующем примере должен быть версией, отправленной после 10 ноября 2021 года.

Чтобы создать макет всего продукта, использующего самый новый и продвинутый доступный установщик, выполните команду.

vs_enterprise.exe --layout C:\VSLayout --useLatestInstaller

Поддержание макета

Рекомендуется периодически обновлять макет Visual Studio до последней безопасной версии продукта. Это гарантирует возможность использования макета как в качестве точки установки, так и в качестве источника обновления для установок клиента. В следующем разделе описаны наиболее распространенные или полезные операции обслуживания макета.

При размещении макета в сетевом файловом ресурсе скачайте обновленный макет в частную локальную общую папку (например, c:\VSLayoutUpdate). После скачивания обновленного содержимого скопируйте его в сетевую папку макета (например, \server\products\VS). Если вы этого не сделаете, пользователи, которые запускают установку во время обновления макета, могут столкнуться с несоответствием в содержании макета, поскольку оно ещё не обновлено.

Обновление макета до последней версии продукта

Корпорация Майкрософт часто выпускает обновленные версии продукта для устранения проблем с функциональностью или безопасностью. Настоятельно рекомендуется обновлять макет с последней версией продукта, чтобы клиенты всегда имели доступ к последней безопасной версии продукта. Это особенно важно, если у клиентов нет доступа к Интернету и вы можете получать обновления продуктов только из макета. Visual Studio обычно выпускает обновления безопасности во второй вторник месяца, известный как "день патча", поэтому хорошей стратегией будет обновлять все ваши проекты во вторник после обеда.

При создании начального макета указанные параметры, такие как рабочие нагрузки и языки для включения в макет, сохраняются в файле layout.jsonконфигурации макета. Позже при обновлении этого макета до более новой версии продукта вам не нужно повторно указывать компоненты продукта, который требуется в макете. Обновление макета просто обновляет существующие компоненты в макете до последней версии.

Предположим, что вы уже создали этот частичный макет с помощью одного из актуальных загрузчиков в предыдущей таблице.

vs_enterprise.exe --layout c:\VSLayout --add Microsoft.VisualStudio.Workload.ManagedDesktop --lang en-US

Обновление этого макета до последней версии продукта, предлагаемого корпорацией Майкрософт, и размещенного на серверах Майкрософт, легко. Вам просто нужно использовать существующий всегда актуальный загрузчик в расположении и выполнить команду --layout в повышенной командной строке, чтобы скачать последние пакеты в ваше расположение.

vs_enterprise.exe --layout c:\VSLayout

Вы также можете обновить макет до обновленной версии в автоматическом режиме. Операция размещения запускает процесс установки в новом окне консоли. Окно остается открытым, чтобы администраторы могли видеть окончательный результат обновления макета и сводку о любых ошибках, возникающих. Если вы хотите выполнить операцию обновления макета автоматически (например, у вас есть скрипт, который регулярно выполняется для обновления макета до последней версии), а затем используйте --passive параметр и процесс автоматически закрывает окно.

vs_enterprise.exe --layout c:\VSLayout --passive

Обновление макета до определенной версии продукта

Иногда может потребоваться обновить макет до определенной версии продукта. Например, вам может понадобиться сделать так, чтобы ваш макет соответствовал последней безопасной версии базовой конфигурации обслуживания, которую ваша организация стандартизировала. Вот как это сделать:

Вы можете перейти на страницу выпусков Visual Studio 2019 и скачать определенный загрузчик фиксированной версии, скопировать его в макет и использовать его для обновления макета до той точной версии, указанной в загрузчике. Вы будете использовать тот же синтаксис, что и ранее.

Вы можете использовать администраторское обновление для перевода макета на определенную версию продукта. Чтобы получить обновление администратора, перейдите в каталог Центра обновления Майкрософт и найдите версию обновления, на которую нужно обновить макет. Загрузите update.exe на компьютер, который размещает макет, откройте командную строку с повышенными привилегиями и выполните команду наподобие этой:

visualstudioupdate-16.0.0to16.11.23.exe layout --layoutPath c:\VSLayout

Обновление администратора не инициирует создание нового макета, а только обновляет существующий. Для создания начального макета необходимо использовать bootstrap.

Вы можете перейти на страницу истории выпусков Visual Studio 2022 и скачать конкретный загрузчик стабильной версии, скопировать его в макет и использовать для обновления макета до той точной версии, указанной в загрузчике. Вы будете использовать тот же синтаксис, что и выше.

Вы можете использовать администраторское обновление для перевода макета на определенную версию продукта. Чтобы получить обновление администратора, перейдите в каталог Центра обновления Майкрософт и найдите обновление, на которое нужно обновить макет. Скачайте файл update.exe, на компьютер, на котором размещен макет, откройте этот компьютер и вызовите командную строку с повышенными привилегиями, затем выполните следующую команду:

visualstudioupdate-17.0.0to17.4.4.exe layout --layoutPath c:\VSLayout

Обновление администратора не инициирует создание нового макета, а только обновляет существующий. Для создания начального макета необходимо использовать bootstrap.

Построение структуры сети на основе поддерживаемой версии.

Иногда, когда каналы перестают поддерживаться, необходимо убедиться, что структура сети по-прежнему базируется на канале, который поддерживается, чтобы клиенты продолжали получать уведомления о безопасности. Если макет основан на канале VisualStudio.17.Release.LTSC.17.0, то после выхода канала LTSC версии 17.0 в июле 2023 г. мы не выпустим больше обновлений системы безопасности, а ваши макет и клиенты будут небезопасными. Даты поддержки для различных каналов Visual Studio 2022 см. здесь.

Чтобы изменить канал, на основе которого создан макет, получите загрузчик нужного канала на странице История выпусков Visual Studio 2022, скопируйте его в папку макета и выполните обычное обновление. Затем клиенты должны быть соответствующим образом уведомлены об обновлении, чтобы они могли оставаться безопасными.

Изменение содержимого макета

Можно изменить частичный макет и добавить другие рабочие нагрузки, компоненты или языки. Надежно удалить компоненты из макета невозможно .

В следующем примере мы добавим рабочую нагрузку Azure и локализованный язык в макет, который ранее был создан только с рабочей нагрузкой Managed Desktop и английским языком. После внесения изменений управляемый рабочий стол и рабочие нагрузки Azure, а также английский и немецкий ресурсы включены в этот макет. Помимо добавления компонентов, --layout команда также приводит к обновлению макета до версии, указанной загрузчиком. Таким образом, если вы используете evergreen-установщик, то результирующий макет имеет новый компонент, новый язык и все содержимое макета обновляется до последней версии на канале установщика.

vs_enterprise.exe --layout c:\VSLayout --add Microsoft.VisualStudio.Workload.Azure --lang de-DE

Если вы хотите изменить существующий частичный макет, чтобы он стал полным, используйте параметр -all, как показано в следующем примере. Опять же, эта команда приводит к обновлению содержимого макета до версии, указанной загрузчиком.

vs_enterprise.exe --layout c:\VSLayout --all

Вы можете добавить компоненты в макет, передав *.vsconfig файл, содержащий другие компоненты, которые вы хотите добавить в макет. При этом новое *.vsconfig содержимое перезаписывает существующее layout.vsconfig содержимое. Дополнительные сведения см. в предыдущем разделе с помощью файла конфигурации для инициализации содержимого макета.

vs_enterprise.exe --layout C:\VSLayout --config "C:\myupdatedconfig.vsconfig"

Наконец, вы можете напрямую изменить layout.json файл конфигурации в папке макета и обновить раздел "добавить" этого файла, чтобы включить дополнительные компоненты, которые вы хотите включить в макет. Затем необходимо обновить макет с использованием --layout, как было описано ранее, чтобы загрузить последние компоненты.

Замечание

Самый простой способ установить недавно добавленные компоненты макета на клиентский компьютер — запустить загрузчик в макете с клиентского компьютера. Раздел настройки response.json файла в макете определяет, какие компоненты будут выбраны по умолчанию в интерфейсе установщика клиента. Если вы изменили макет с помощью одного из предыдущих методов, может потребоваться вручную выполнить двойную проверку и, возможно, настроить раздел "add" в response.json файле таким образом, чтобы оно соответствующим образом соответствовало содержимому в разделе "Добавить" нового измененного layout.json файла.

Настройте расположение, чтобы удалить компоненты, для которых прекращена поддержка, с клиентского компьютера.

Некоторые предприятия хотят воспользоваться функцией, представленной в Visual Studio 2022 версии 17.4, которая удаляет компоненты, которые перешли в состояние вне поддержки. Это относительно легко настроить, если вы управляете макетом и если ваши клиенты получают администраторские обновления. Во-первых, вам потребуется настроить макет, чтобы иметь последнюю версию установщика, как описано ниже. Во-вторых, необходимо добавить строку "removeOos": true в response.json файл. Если в макете задано правильное задание двух сведений, последующие обновления администратора будут учитывать этот параметр и будут удалять компоненты без поддержки с клиентских компьютеров.

Проверка макета

Используйте --verify для проверки сетевой конфигурации, которая определяет, отсутствуют ли файлы пакетов либо являются недопустимыми. В конце проверки выводится список отсутствующих и недопустимых файлов.

Проверка работает только для последней версии определенной дополнительной версии Visual Studio. Как только будет выпущена новая версия, проверка не будет работать для макетов, содержащих предыдущие выпуски.

vs_enterprise.exe --layout <layoutDir> --verify

Замечание

Некоторые важные файлы метаданных, необходимые --verify параметру, должны находиться в папке макета. Если эти файлы метаданных отсутствуют, "-verify" не удается запустить, и программа установки выдает ошибку. При возникновении этой ошибки попробуйте обновить макет еще раз или повторно создать новый макет сети в другой папке.

Помните, что корпорация Майкрософт периодически выпускает обновления для Visual Studio, поэтому, если вы используете постоянно обновляемый загрузчик, то более позднее расположение может не содержать ту же версию, что и начальное расположение. Однако если вы используете загрузчики фиксированной ссылки, то вы (почти) всегда получите детерминированный набор файлов.

Исправление макета

Используется --fix для выполнения той же проверки, что --verify и попытка устранить выявленные проблемы. Для --fix процесса требуется подключение к Интернету, поэтому убедитесь, что компьютер подключен к Интернету перед вызовом программы --fix.

vs_enterprise.exe --layout <layoutDir> --fix

Удаление старых версий из макета

После выполнения обновлений компоновки в сетевом кэше папка компоновки может содержать некоторые устаревшие пакеты, которые больше не требуются для последней установки Visual Studio. Вы можете использовать параметр --clean для удаления устаревших пакетов из папки сетевого макета.

Чтобы сделать это, вам потребуется путь или пути к манифестам каталога, содержащим устаревшие пакеты. Манифесты каталога можно найти в папке "Архив" в кэше макета сети. Они сохраняются там при обновлении макета. В папке "Архив" есть одна или несколько именованных папок GUID, каждая из которых содержит устаревший манифест каталога. Количество папок GUID должно совпадать с количеством обновлений, внесенных в макеты.

Несколько файлов сохраняются в каждой папке GUID. Два файла, наиболее интересные, — это файлcatalog.jsonи файлversion.txt. Файл "catalog.json" является устаревшим манифестом каталога, который необходимо передать в --clean параметр. Другой файл version.txt содержит версию этого устаревшего манифеста каталога. На основе номера версии можно решить, нужно ли удалять устаревшие пакеты из этого манифеста каталога. Вы можете сделать то же самое, проходя по другим папкам "GUID". После принятия решения о каталогах, которые вы хотите очистить, выполните --clean команду, указав пути к файлам для этих каталогов.

Ниже приведен пример использования параметра --clean:

c:\VSLayout\vs_enterprise.exe --layout c:\VSLayout --clean c:\VSLayout\Archive\1cd70189-fc55-4583-8ad8-a2711e928325\Catalog.json --clean c:\VSLayout\Archive\d420889f-6aad-4ba4-99e4-ed7833795a10\Catalog.json

При выполнении этой команды программа установки анализирует папку макета сети, чтобы найти список файлов, которые будут удалены. После этого вы сможете просмотреть файлы, которые будут удалены, и подтвердить их удаление.

Настройте макет для его постоянного включения и предоставления последней версии установщика.

Замечание

По состоянию на июнь 2023 г. новейший установщик по умолчанию поставляется вместе с каждым обновлением для поддерживаемых версий Visual Studio 2017, Visual Studio 2019 и Visual Studio 2022. Поэтому вам не придется самостоятельно делать ничего специально, чтобы получить последнюю версию программного установщика с последними функциями и исправлениями ошибок для вашего макета и ваших клиентов.

Однако если вы используете макет, созданный до июня 2023 года, вы также можете явно настроить макет для всегдаго включения и предоставления последнего установщика клиентам, даже если установщик считается частью более последней версии Visual Studio. Таким образом, когда клиент обновляет этот макет, клиент получит последний установщик, включенный и предоставленный этим макетом. Преимущество в том, что, как только на системе клиента будет установлена последняя версия нашего установщика, установки на клиенте смогут воспользоваться исправлениями ошибок и новыми функциями, которые мы продолжаем добавлять в установщик.

Подсказка

Если вы хотите изменить расположение, в котором установка Visual Studio 2019 клиента ищет обновления или удалить все компоненты вне поддержки, то на клиентском компьютере необходимо получить последнюю версию установщика Visual Studio 2022. Одним из способов этого является включение установщика Visual Studio 2022 в макеты Visual Studio 2019 с помощью параметров, описанных ниже. Возможность использования последнего установщика доступна только для загрузчиков Visual Studio 2019, созданных после первоначальной поставки Visual Studio 2022. Таким образом, vs_enterprise.exe в приведенном ниже примере должен быть версией, отправленной после 10 ноября 2021 года.

Есть несколько способов, чтобы ваш макет включал и предоставлял последний установщик:

  • Вы можете использовать версию Visual Studio, созданную в июне 2023 года или позже.

  • Параметр --useLatestInstaller можно передать загрузчику при создании или обновлении макета. Это приведет к тому, что параметр будет задан в файле, который можно найти в layout.json корневом каталоге макета. Ниже приведен пример обновления макета и его настройки для использования новейших и величайших доступных установщиков.

    vs_enterprise.exe --layout C:\VSLayout --useLatestInstaller
    
  • Вы можете изменить layout.json файл непосредственно, чтобы добавить этот параметр.

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

Невозможно программно удалить этот параметр в layout.json файле, поэтому, если вы хотите, чтобы ваше расположение перестало использовать последний установщик, который корпорация Майкрософт предоставляет, и вместо этого использовать версию установщика, соответствующую ботстрапперу (которая, скорее всего, старше последнего установщика), измените layout.json файл и удалите указанный параметр "UseLatestInstaller": true.

Этот "UseLatestInstaller": true параметр также можно найти в файле макета response.json, но он игнорируется там для обеспечения того, чтобы макет всегда содержал самый последний установщик. Файлresponse.json используется для задания параметров конфигурации по умолчанию на клиенте при установке или обновлении клиента из макета. Этот конкретный "useLatestInstaller": true параметр в layout.json файле используется для обеспечения того, чтобы содержимое макета содержало последний установщик, чтобы клиентские компьютеры могли затем получить последний установщик из макета.

Коды ошибок

Если вы использовали параметр --wait, то в зависимости от результата операции переменная среды %ERRORLEVEL% имеет одно из следующих значений:

Ценность Результат
0 Операция успешно завершена
740 Требуется повышение уровня
1001 Вступает в работу процесс установщика Visual Studio
1003 Visual Studio используется
1602 Операция отменена
1618 Запущена другая установка
1641 Операция успешно завершена, и была инициирована перезагрузка
3010 Операция успешно завершена, но установка требует перезагрузки, прежде чем ее можно будет использовать
5003 Не удалось скачать загрузочный установщик
5004 Операция отменена
5005 Ошибка синтаксического анализа командной строки загрузчика
5007 Операция была заблокирована. Компьютер не соответствует требованиям
8001 Сбой проверки компьютера Arm
8002 Сбой предварительной проверки фоновой загрузки
8003 Выбор сбоя, не поддерживаемого системой.
8004 Сбой целевого каталога
8005 Ошибка при проверке полезных данных источника
8006 Запущенные процессы Visual Studio
8010 Операционная система не поддерживается. См. требования к системе
-1073720687 Сбой подключения
-1073741510 Установщик Microsoft Visual Studio был завершен (пользователем или внешним процессом)
Другое
(например:
-1, 1, 1603
Произошел сбой. Проверьте журналы системы для получения дополнительных сведений.

Получите поддержку для вашего макета сети

Если у вас возникла проблема с макетом сети, мы хотим узнать об этом. Лучший способ оповестить нас — использовать средство Report a Problem, которое отображается как в установщике Visual Studio, так и в интегрированной среде разработки Visual Studio. Если вы ит-администратор и не установили Visual Studio, вы можете отправить отзыв ИТ-администратора здесь. При использовании этого средства было бы очень полезно, если бы вы могли отправить журналы с помощью средства сбора Visual Studio, чтобы помочь нам диагностировать и исправить проблему.

Кроме того, мы предлагаем вариант поддержки чата установки (только на английском языке) для проблем, связанных с установкой.

У нас также есть другие варианты поддержки. Ознакомьтесь с нашим сообществом разработчиков Visual Studio .