使用命令行参数安装、更新和管理 Visual Studio
以编程方式或从命令提示符安装 Visual Studio 时,可以使用各种命令行参数来控制或自定义安装并执行以下操作:
- 使用预先选择的特定选项和行为来启动客户端上的安装。
- 自动执行安装或更新过程。
- 创建或维护产品文件的网络布局,以便安装或更新客户端计算机。
以下可执行文件或程序可以使用以下命令行谓词和参数:
- 安装引导程序,该程序是启动下载过程和初始安装的小型 (~1 MB) 文件(例如 vs_enterprise.exe)。
- 可能已安装在计算机上且位于文件夹
C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe
中的 Visual Studio 安装程序。 须从与安装程序所在目录不同的目录以编程方式启动安装程序。 安装程序通常用于更新或修改命令。 - 使用 winget 的 --override 开关时使用 winget 命令。
- 使用管理员更新包(可从 Microsoft 更新目录下载),以编程方式更新网络布局。 有关详细信息,请参阅更新或修改布局一文。
并非所有命令或参数都适用于上述每种情况,将记录任何限制情况或异常情况。 此外,在某些情况下,可能无法访问前面介绍的这些全部可执行文件。 例如,如果通过布局安装 Visual Studio,则客户端计算机可能只有可用于执行编程的安装程序。
可以从下表中获取 Visual Studio 2019 引导程序。 或者,如果需要特定版本的 Visual Studio 2019,请参阅 Visual Studio 2019 版本页。 此页面具有指向所选 Visual Studio 版本和版次的固定版本引导程序的链接。
版本 | 引导程序 |
---|---|
Visual Studio 2019 Enterprise 版本 16.11 | vs_enterprise.exe |
Visual Studio 2019 Professional 版本 16.11 | vs_professional.exe |
Visual Studio 2019 生成工具版本 16.11 | vs_buildtools.exe |
若要获取始终安装最新当前频道版本的 Visual Studio 2022 的最新引导程序,请下载以下文件之一。 或者,若要安装 Visual Studio 2022 的特定版本或特定通道,请参阅 Visual Studio 2022 版本历史记录页。 此页面具有指向每个维护版本的固定版本引导程序的链接。
版本 | 引导程序 |
---|---|
Visual Studio 2022 Enterprise | vs_enterprise.exe |
Visual Studio 2022 Professional | vs_professional.exe |
Visual Studio 2022 Community | vs_community.exe |
Visual Studio 2022 生成工具 | vs_buildtools.exe |
提示
如果以前下载过引导程序文件,并且想要验证其版本,则操作方法如下。 在 Windows 中,打开文件资源管理器,右键单击引导程序文件,依次选择“属性”、“详细信息”选项卡,然后查看“产品版本”号 。 若要将该编号与 Visual Studio 的版本匹配,请参阅 Visual Studio 2019 版本页面底部的表。
提示
如果你之前下载了一个引导程序文件,并且想要验证它将安装的版本,操作方法如下。 在 Windows 中,打开“文件资源管理器”,右键单击该引导程序文件,选择“属性”,然后选择“详细信息”选项卡。“产品版本”字段将描述该引导程序将安装的频道和版本 。 版本号应始终读取为“指定内容的最新服务版本”,除非显式指定,否则频道为“当前”。 因此,产品版本为 LTSC 17.0 的引导程序将安装 17.0 LTSC 频道上提供的最新 17.0.x 服务版本。 产品版本仅显示“Visual Studio 2022”的引导程序将在当前频道上安装最新版本的 Visual Studio 2022。
安装、更新、修改、修复、卸载和导出命令和命令行参数
以编程方式调用 Visual Studio 引导程序或安装程序,以安装产品或维护布局时:
- 第一个参数是描述要执行的操作的命令(谓词)。
- 随后的可选命令行参数都以两个短划线 (--) 为前缀,进一步定义了该操作应该如何进行。
所有 Visual Studio 命令行参数均不区分大小写,可以在命令行参数示例页上查看更多示例。
语法示例:vs_enterprise.exe [command] <optional parameters>...
命令 | 说明 |
---|---|
(空白) | 默认的命令不仅安装该产品,还用于所有布局维护操作。 |
modify |
修改已安装的产品。 |
update |
更新已安装的产品。 |
updateall |
按顺序更新所有已安装的产品。 使用 --quiet 和 --passive 参数。 |
repair |
修复已安装的产品。 |
uninstall |
卸载已安装的产品。 |
export |
将安装配置导出到 *.vsconfig 文件中。 |
重要
当指定多种不同的工作负载、组件或语言时,必须对每项重复运行 --add
或 --remove
命令行开关。
参数 | 说明 |
---|---|
--installPath <dir> |
对于默认的安装命令,此参数为可选,并描述实例在客户端计算机上的安装位置。 对于其他命令,如 update 或 modify,此参数是必需的,用于指示实例在执行操作时使用的安装目录。 |
--productId <id> |
可选:被修改并与 --channelId 一起使用的产品实例的 ID。 productID 类似于“Microsoft.VisualStudio.Product.Enterprise”。 |
--channelUri |
可选:在执行更新命令期间,可以传入新的 --channelUri 以更改更新设置位置。 建议与 --installPath 参数配对,以便明确你正在配置的 Visual Studio 实例。 请参阅 --channelUri 的语法示例 |
--channelId <id> |
通道 ID,例如:VisualStudio.17.Release 。 请参阅 --channelId 的语法示例。 修改操作需要 channelId ,以及 --productID 或 --installPath 。 |
--add <one or more workload or component IDs> |
可选:在 install 或 modify 命令期间,这个可重复参数会指定要添加的一个或多个工作负载或组件 ID。 将安装项目的所需组件,而不是建议组件或可选组件。 可以使用 --includeRecommended 和/或 --includeOptional 参数全局控制其他组件。 若要包括多个工作负荷或组件,请重复 --add 命令(例如,--add Workload1 --add Workload2 )。 若要更精确地进行控制,可以将 ;includeRecommended 或 ;includeOptional 追加到 ID 中(例如,--add Workload1;includeRecommended 或 --add Workload2;includeRecommended;includeOptional )。 有关详细信息,请参阅工作负载和组件 ID 页。 |
--all |
可选:在 install 或 modify 命令期间,这个参数会促使安装产品的所有工作负载和组件。 |
--allWorkloads |
可选:在 install 或 modify 命令期间,这个参数将安装除建议的组件或可选组件外的所有工作负载和组件。 |
--includeRecommended |
可选:在安装或修改命令期间,此参数包括已安装的任何工作负载的推荐组件。 不包括可选组件。 可使用 --allWorkloads 或 --add 指定工作负载。 请注意,使用 --includeRecommended 参数时,你将启用“更新设置”对话框,以“在更新时为已安装的工作负载添加建议的组件”。 要更改此设置,请参阅自定义更新设置。 |
--includeOptional |
可选:在安装或修改命令期间,此参数包括已安装的任何工作负载的可选组件。 不包括推荐的组件。 可使用 --allWorkloads 或 --add 指定工作负载。 |
--addProductLang <language-locale> |
可选:在 install 或 modify 命令期间,这个可重复参数会指定要随产品一起安装的用户界面语言包。 如果不存在,安装过程将使用对应于计算机区域设置的语言包。 有关详细信息,请参阅 [语言区域设置列表] |
--remove <one or more workload or component IDs> |
可选:在 modify 命令期间,这个可重复参数会指定要删除的一个或多个工作负载或组件 ID。 该参数是 --add 参数的补充或与其行为相似。 |
此页上的(#语言区域设置列表)部分。 | |
--removeProductLang <language-locale> |
可选:在 install 或 modify 命令期间,这个可重复参数会确定要从产品中删除的用户界面语言包。 该参数是 --addProductLang 参数的补充或与其行为相似。 |
--in <path> |
可选:响应文件的 URI 或路径,文件可包含配置设置。 |
--quiet |
可选:这个参数可与任何命令一起使用,可在命令执行时阻止显示任何用户界面。 无论 AllowStandardUserControl 策略是如何设置的,标准用户都无法以编程方式使用。 |
--passive, -p |
可选:这个参数会导致用户界面以非交互式方式显示。 此参数与 --quiet 参数是互斥的,事实上还会替代后者。 另外,无论 AllowStandardUserControl 策略是如何设置的,标准用户都无法以编程方式使用。 |
--norestart |
可选:这个参数必须与 --passive 或 --quiet 参数配对使用。 在 install、update 或 modify 命令期间,如果添加 --norestart 参数,会延迟所有必要的重启行为。 |
--force |
可选:这个参数会强行关闭 Visual Studio,即使有正在使用的 Visual studio 进程也是如此。 强制 Visual Studio 关闭可能会导致工作丢失,因此请谨慎使用。 |
--installWhileDownloading |
可选:在 install、update 或 modify 命令期间,这个参数使 Visual Studio 能够同时下载和安装产品。 这是默认体验。 |
--downloadThenInstall |
可选:在 install、update 或 modify 命令期间,这个参数会强制性地让 Visual Studio 在安装所有文件之前先下载这些文件。 它与 --installWhileDownloading 参数互斥。 |
--nickname <name> |
可选:在 install 命令期间,这个参数会定义要分配给已安装的产品的昵称。 别名长度不能超过 10 个字符。 |
--productKey |
可选:在 install 命令期间,这个参数会定义要用于已安装的产品的产品密钥。 产品密钥由 25 个字母数字字符组成,格式为 xxxxxxxxxxxxxxxxxxxxxxxxx 。 |
--removeOos true |
可选:在安装、更新或修改命令期间,此参数后面跟有 true 或 false ,告诉 Visual Studio 安装程序是否删除所有转换为不支持状态的已安装组件。 此行为适用于单个事件。 如果要使此行为持久化,请将此参数应用于稍后介绍的 modifySettings 命令,或者配置 removeOOS 全局策略。 有助于确保计算机安全。 |
--config <path to *.vsconfig file> |
可选:在安装或修改操作期间,可以使用 --config 参数传入配置文件,以指定要基于先前保存的安装配置文件添加的工作负载、组件或扩展。 此操作是累加操作;不会删除文件中未指定的任何内容。 此外,配置文件中指定的不适用于产品的项目也不会添加。 强烈建议指定配置文件的完全限定路径。 在导出操作期间,此参数确定保存安装配置文件的位置。 |
--allowUnsignedExtensions |
可选:在 --passive 或 --quiet 上下文中使用 --config 文件运行安装或修改操作期间,如果在配置文件中指定了扩展名,则为了加载不带数字签名的扩展名,此参数为必需。 |
--installerOnly |
可选:在安装或更新操作期间,此参数指示 Visual Studio 安装程序仅安装自身(安装程序),而不安装 Visual Studio 产品。 其功能等效于 --update 参数,但更直观。 预期在准备和预配置客户端计算机时使用。 |
--help, --?, -h, -? |
显示此页的脱机版本。 |
布局命令和命令行参数
所有布局管理操作(如创建或更新布局)都使用 bootstrapper exe 运行,并假定命令是默认的 Install(空白)。 所有布局管理操作都应从必需 --layout
初始参数开始。 下表介绍了使用命令行创建或更新布局时可使用的其他参数。
布局参数 | 说明 |
---|---|
--layout <dir> |
指定用于创建或更新脱机安装缓存的目录。 有关详细信息,请参阅创建 Visual Studio 的网络安装。 |
--lang <one or more language-locales> |
可选:与 --layout 结合使用,用于使用具有指定一种或多种指定语言的资源包准备脱机安装缓存。 有关详细信息,请参阅本页的语言区域设置列表部分。 |
--add <one or more workload or component IDs> |
可选:要添加的一个或多个工作负荷或组件 ID。 将安装项目的所需组件,而不是建议组件或可选组件。 可以使用 --includeRecommended 和/或 --includeOptional 全局控制更多组件。 若要更精确地进行控制,可以将 ;includeRecommended 或 ;includeOptional 追加到 ID 中(例如,--add Workload1;includeRecommended 或 --add Workload2;includeOptional )。 有关详细信息,请参阅工作负载和组件 ID 页。 注意:如果使用了 --add ,只会下载指定的工作负载和组件及其依赖项。 如果未指定 --add ,所有工作负载和组件都会下载到布局中。 |
--includeRecommended |
可选:包含所有已安装工作负载的推荐组件,但不包含可选组件。 可使用 --allWorkloads 或 --add 指定工作负载。 |
--includeOptional |
可选:添加布局中包含的任何工作负载的推荐和可选组件。 可使用 --add 指定工作负载。 |
--wait |
可选:该进程先等待安装完成,然后再返回退出代码。 在需要等待安装完成以处理该安装的返回代码的自动安装时,wait 非常有用。 --wait 参数只能传递到引导程序中;安装程序 (setup.exe) 不支持它。 它在更新布局时很有用。 可在此处查看其他示例。 |
--useLatestInstaller |
可选:仅适用于早于 2023 年 4 月的 Visual Studio 引导程序的传统功能。 默认情况下,2023 年 4 月之后发货的任何内容都使用最新的安装程序。 如果此参数存在,则布局中会包含最新版本的 Visual Studio 安装程序,即使它属于较新主版本的产品。 如果你希望利用最新版本中提供的新功能或错误修补程序,那么最新的安装程序可能会很有用。 有关详细信息,请参阅配置布局以始终使用最新安装程序文档。 |
--config <path to *.vsconfig file> |
可选:如果存在,Visual Studio 会使用配置文件的内容配置布局。 请确保指定配置文件的完全限定路径。 |
--noWeb |
可选:如果存在,Visual Studio 安装程序将使用布局目录中的文件安装 Visual Studio,并且不会从 Web 下载任何包。 如果用户尝试安装不在布局中的组件,安装程序将失败。 如果尝试部署托管在内部 Intranet 网站上的布局,请不要使用此参数。 有关详细信息,请参阅在无法访问 Internet 的客户端上安装。 重要说明:如果客户端配置为查看 Microsoft 托管服务器以获取更新,则 --noWeb 参数不会阻止连接 Internet 的客户端计算机上的 Visual Studio 安装程序检查更新。 在这种情况下,--noWeb 只会阻止客户端下载产品包。 |
--verify |
可选:验证布局内容。 将列出所有损坏或缺失的文件。 |
--fix |
可选:验证布局内容。 如果任何文件损坏或缺失,将重新进行下载。 必须连接 Internet,才能修复布局。 |
--clean <one or more paths to catalogs> |
可选:从更新到新版本的布局中删除旧版本的组件。 |
高级布局参数 | 说明 |
---|---|
--channelId <id> |
可选:要安装的实例的通道 ID,例如,表示为 。 安装命令需要 channelId;如果指定了 --installPath ,则会忽略其他命令。 请参阅 --channelId 语法示例。 |
--channelUri <uri> |
可选:通道清单的 URI。 此值可控制更新的源位置,初始值在布局的 response.json 文件中配置。 有关可能的值,请参阅 --channelUri 语法示例。 如果不需要更新,--channelUri 可指向不存在的文件(例如 --channelUri C:\doesntExist.chman)。 此参数可用于安装命令;其他命令会忽略它。 |
--installChannelUri <uri> |
可选:要用于安装的通道清单的 URI。 指定的 URI(指定 时必须指定)用于检测更新。 此参数可用于安装命令;其他命令会忽略它。 |
--installCatalogUri <uri> |
可选:要用于安装的目录清单的 URI。 如果指定此选项,通道管理器会先尝试通过此 URI 下载目录清单,然后再在安装通道清单中使用 URI。 此参数用于支持脱机安装;在脱机安装中,使用已下载的产品目录创建布局缓存。 此参数可用于安装命令;其他命令会忽略它。 |
--productId <id> |
可选:已安装实例的产品 ID。 此参数在正常安装条件下预先填充。 productID 类似于“Microsoft.VisualStudio.Product.Enterprise”。 |
--arch all |
可选:默认情况下,仅使用 x64 产品二进制文件创建布局。 若要在布局中包括适用于工作负载的 ARM 二进制文件和 x64 二进制文件,请使用 --arch all 或 --arch * 参数。 若要仅创建 ARM 二进制文件布局,请使用 --arch arm64 |
--keepLayoutVersion |
可选:将更改应用到布局中,而不更新布局中包含的产品版本。 |
--locale <language-locale> |
可选:更改安装程序本身的用户界面的显示语言。 将保留设置。 有关详细信息,请参阅本页的语言区域设置列表部分。 |
--cache |
可选:如果指定,将在安装后保存包,以便后续修复时使用。 这会替代用于后续安装、修复或修改的全局策略设置。 默认策略是缓存包。 对于卸载命令,忽略此选项。 有关详细信息,请了解如何禁用或移动包缓存。 |
--nocache |
可选:如果指定,将在安装或修复完成后删除包。 只有在需要时才会重新下载,并且会在使用后再次删除。 这会替代用于后续安装、修复或修改的全局策略设置。 默认策略是缓存包。 对于卸载命令,忽略此选项。 有关详细信息,请了解如何禁用或移动包缓存。 |
--noUpdateInstaller |
可选:如果存在,指定无提示安装时阻止安装程序进行自我更新。 如果在需要更新安装程序时通过无提示安装指定 noUpdateInstaller,则安装程序将忽略该命令并返回非零退出代码。 |
--path <name>=<path> |
可选:用于指定安装的自定义安装路径。 支持的路径名称有 shared、cache 和 install。 |
--path cache=<path> |
可选:使用指定的位置下载安装文件。 只可以在首次安装 Visual Studio 时设置此位置。 示例: --path cache="C:\VS\cache" |
--path shared=<path> |
可选:包含用于并行 Visual Studio 安装的共享文件。 某些工具和 SDK 会安装到此驱动器上的某个位置,而其他一些工具可能会替代此设置并安装到另一个驱动器。 示例: --path shared="C:\VS\shared" 重要说明:只能在首次安装 Visual Studio 时对此设置一次。 |
--path install=<path> |
可选:等效于 –-installPath 。 具体而言,--installPath "C:\VS" 与 --path install="C:\VS" 等效。 一次只能使用其中一个命令。 |
ModifySettings 命令和命令行参数
你可以修改更新设置,以编程方式配置给定 Visual Studio 实例的更新源位置,方法是使用客户端计算机上的安装程序或引导程序,并传入 modifySettings 命令和所需的更新通道。
命令 | 说明 |
---|---|
modifySettings |
用于修改 Visual Studio 特定实例的更新设置的谓词。 |
modifySettings 参数 | 说明 |
---|---|
--installPath <dir> |
建议用于指定要对其执行操作的 Visual Studio 实例。 |
--newChannelUri |
必需:通道清单的 URI。 此值指定下一个更新源位置。 有关可能的值,请参阅 --channelUri 语法示例。 如果不需要更新,--channelUri 可指向不存在的文件(例如 --channelUri C:\doesntExist.chman)。 |
--channelUri |
通道清单的 URI。 如果 --installPath 未知,则可以使用该参数。 必须与 productID 结合使用,以标识要执行操作的正确实例。 |
--productId <id> |
如果指定了 --channelUri,则必须使用该参数,并用于标识要执行操作的正确实例。 productID 类似于“Microsoft.VisualStudio.Product.Enterprise”。 |
--includeRecommended |
可选:在 modifySettings 命令执行过程中,此参数(其后必须紧接 true 或 false)将告知 Visual Studio 安装程序在“更新设置”对话框中禁用“在更新时为已安装的工作负载添加建议的组件”功能。 |
--quiet |
可选:这个参数可在执行命令时阻止显示任何用户界面。 标准用户无法以编程方式使用。 |
--removeOos true |
可选:在执行 modifySettings 命令期间,此参数(后面必须紧跟 true 或 false)指示 Visual Studio 安装程序永久删除(或不删除)所有已转换为不支持状态的已安装组件。 有助于确保计算机安全。 |
语法示例:
C:\>"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe" modifySettings --installPath "C:\Program Files\Microsoft\Visual Studio\2022\Enterprise" --newChannelUri https://aka.ms/vs/17/release.LTSC.17.0/channel --removeOos true
C:\>"C:\Program Files\Microsoft\Visual Studio\2022\Enterprise\vs_enterprise.exe" modifySettings --channelUri https://aka.ms/vs/17/release.LTSC.17.0/channel --productID Microsoft.VisualStudio.Product.Enterprise --newChannelUri \\layoutserver\share\path\channelmanifest.json --removeOos true --quiet
回滚命令和命令行参数
从 Visual Studio 2022 开始,可以使用客户机上的安装程序,并将回滚命令与安装路径实例一起传入,从而以编程方式回滚更新。
命令 | 说明 |
---|---|
rollback |
用于将 Visual Studio 的特定实例回滚到以前安装的更新的命令。 如果已启用 DisableRollback ,此命令将不起作用。 |
回滚参数 | 说明 |
---|---|
--installPath <dir> |
建议用于指定要对其执行操作的 Visual Studio 实例。 |
语法示例:
"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe" rollback -–installPath "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"
管理员更新命令和命令行参数
可以从 Microsoft 更新目录下载管理员更新,并使用它来更新客户端安装或布局。
更新布局
如果要将布局更新到特定版本的 Visual Studio,只需将管理员更新下载到托管该布局的计算机,在该计算机上打开命令提示符并运行如下命令:
visualstudioupdate-17.0.0to17.1.5.exe layout --layoutPath c:\VSLayout
更新客户端
在客户端上,如果将管理员更新下载到客户端计算机上的安装目录,只需双击该文件即可应用更新。 还可以打开命令窗口并传递下面的某些参数来更改默认行为。
在 SCCM 中配置管理员更新
如果要通过 Microsoft Endpoint Manager (SCCM) 部署管理员更新,可以使用以下参数来修改包以调整行为。 还可以通过客户端计算机上的配置文件来控制参数。 有关详细信息,请参阅配置管理员更新的方法
请注意,除非指定了布局谓词,否则所有管理员更新参数都默认在“更新”上下文中运行。
管理员更新参数 | 说明 |
---|---|
--installerUpdateArgs [optional parameters] |
此参数充当与管理员更新方案相关的特定参数的“直通数组”。 为此目的启用的可选参数包括:--quiet :这是管理员更新的默认体验,此处出于完整性的目的列出了该体验。 --passive :此参数会替代 --quiet 参数。 这会导致用户界面以非交互式方式显示。 --norestart :此参数必须与 --quiet 或 --passive 一起使用,会导致任何必要的重启行为延迟。 --noWeb :此参数会阻止 Visual Studio 在 internet 上查找产品更新。 --force :此参数会强行关闭 Visual Studio,即使 Visual studio 正在使用中也是如此。 请谨慎使用此参数,因为有可能会导致工作丢失。 只有在用户上下文中执行管理员更新时,才能使用此参数;如果在系统上下文中执行管理员更新,则忽略它。 --installWhileDownloading :此参数使 Visual Studio 能够同时下载和安装产品。 这是管理员更新的默认体验,此处出于完整性的目的列出了该体验。 --keepWindowsUpdateOn :此参数可防止安装程序关闭客户端上的 Windows 更新代理。 如果要将管理员更新从目录导入 SCCM,则应使用此参数。 可能还需要将 SCCM 包超时设置为超过默认的 10 分钟。 如果将 SCCM 部署类型更改为“必需”,那么就不需要此参数。--downloadThenInstall :此参数强制 Visual Studio 在安装所有文件之前先下载文件。 它与 --installWhileDownloading 参数互斥。 |
--checkPendingReboot |
如果计算机上有挂起的重启,更新将中止,无论导致该更新的是哪个应用程序。 默认情况下,系统不检查是否有挂起的重启。 |
将参数传递到管理员更新的语法示例:
visualstudioupdate-16.9.0to16.9.4.exe --installerUpdateArgs=--force,--noWeb,--keepWindowsUpdateOn --checkPendingReboot
删除通道命令和命令行参数
可用于更新的通道缓存在客户端上,随着时间的推移,它们可能会使内容变得杂乱无章。 可以手动删除更新通道,方法是打开 Visual Studio 安装程序,切换到“可用”选项卡,然后单击产品卡右上角的 X。 可以使用 removeChannel
命令以编程方式删除通道(例如较旧的布局位置)。 可以在客户端计算机上以编程方式运行 vswhere,从而确定哪些通道缓存在客户端计算机上。
命令 | 说明 |
---|---|
removeChannel |
用于从客户端计算机中删除通道的命令。 |
removeChannel 参数 | 说明 |
---|---|
--channelUri |
必需:旧通道清单的 URI。 |
--quiet |
可选:这个参数可在执行命令时阻止显示任何用户界面。 |
--passive |
可选:此参数会替代 参数。 这会导致用户界面以非交互式方式显示。 |
语法示例:
"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe" removeChannel --channelUri "\\\\server\\share\\layoutdirectory\\ChannelManifest.json"
使用 winget 安装或修改 Visual Studio
可以使用 Windows 包管理器“winget”工具以编程方式在计算机上安装、修改或更新 Visual Studio,还可同时安装、修改或更新 winget 管理的其他包。
默认情况下,winget 只安装 Visual Studio 核心工作负载。
winget install --id Microsoft.VisualStudio.2022.Community
但是,如果要自定义安装并指定要在初始安装期间获取的其他工作负载和组件,可以将 winget 的 --override
开关与 winget 的 install
命令一起使用,并传入导出的 vsconfig 文件,其中包含要添加的工作负载和组件:
winget install --id Microsoft.VisualStudio.2022.Community --override "--passive --config c:\my.vsconfig"
当然,还可以在初始安装过程中直接包含组件,如下所示:
winget install --id Microsoft.VisualStudio.2022.Community --override "--quiet --add Microsoft.Visualstudio.Workload.Azure"
如果计算机上已安装 Visual Studio,则可以使用 winget 的 configure
命令以及 Visual Studio PowerShell DSC 提供程序、yaml 文件和 .vsconfig 文件将组件添加到现有 Visual Studio 安装。 winget 的 configure
命令实质上充当 Visual Studio 的“修改”操作。 请参阅如何创作 WinGet 配置文件,了解如何创建 winget 配置。
不能将 --override
开关或 Visual Studio DSC 提供程序与 winget 的 upgrade
命令一起使用,因为 upgrade
实质上只是充当 Visual Studio 的“更新”操作,并安装已选择的最新版本的组件。 无法通过更新/升级添加组件。 需要使用 winget 的 configure
来添加组件。
请记住,Visual Studio 安装程序操作当前需要管理员权限,因此 winget 将在必要时提示你提升权限以完成命令。 此外,目前无法使用 winget 在客户端计算机上同时安装多个版本(即不同的 SKU)或同一 SKU 的多个实例。 最后,如果要配置(修改)Visual Studio 以添加组件或将其升级到最新版本,则必须将其关闭。
工作负荷 ID 和组件 ID 列表
有关按 Visual Studio 产品排序的工作负载和组件 ID 的列表,请参阅 Visual Studio 工作负载和组件 ID 页。
语言区域设置列表
语言-区域设置 | 语言 |
---|---|
Cs-cz | 捷克语 |
De-de | 德语 |
En-us | 英语 |
Es-es | 西班牙语 |
Fr-fr | 法语 |
It-it | 意大利语 |
Ja-jp | 日语 |
Ko-kr | 韩语 |
Pl-pl | 波兰语 |
Pt-br | 葡萄牙语 - 巴西 |
Ru-ru | 俄语 |
Tr-tr | 土耳其语 |
Zh-cn | 简体中文 |
Zh-tw | 繁体中文 |
错误代码
%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) |
发生了故障,请查看日志,了解详细信息 |
每个操作都会在指明安装进度的 %TEMP%
目录中生成多个日志文件。 按日期对文件夹进行排序,再查找以“dd_bootstrapper
”、“dd_client
”和“dd_setup
”开头的文件,分别查找安装引导程序、安装程序应用和安装程序引擎。
支持或故障排除
有时,你难免遇到一些问题。 如果 Visual Studio 安装失败,请参阅 Visual Studio 安装和升级问题疑难解答获取分步指南。
下面是另外几个支持选项:
- 使用 安装聊天(仅限英语)支持选项来解决与安装相关的问题。
- 使用出现于 Visual Studio 安装程序和 Visual Studio IDE 中的 报告问题 工具向我们报告产品问题。 如果你是 IT 管理员且未安装 Visual Studio,则可以提交 IT 管理员反馈 。
- 在 Visual Studio 开发人员社区中,可提出功能建议、跟踪产品问题,并能找到答案。