如何配置VS 2017离线安装程序/布局,以便它根本不需要互联网连接?

时间:2017-03-24 19:24:33

标签: visual-studio-2017

能够使用如下命令行创建离线安装程序:

vs_enterprise__873301792.1489161815.exe --layout %CD%\vs2017offline --lang en-US

我从中得到了大约20 GB(1901个文件)。

但是,正如已经知道的那样,即使使用这样的离线布局,Visual Studio安装程序也需要至少初始化的Internet连接。 (但它不需要下载布局/图像中已存在的软件包,因此它可以节省真正的下载量。)

在VS的MS Web文档中,提到了更多参数: https://docs.microsoft.com/en-us/visualstudio/install/use-command-line-parameters-to-install-visual-studio

AFAIK,没有人想出如何使用它们来保证在没有互联网连接的情况下真正进行离线安装(我很可能认为必须重定向通道和/或目录以阻止VS安装程序上线)。
有人吗?

以下是参数,我的意思是:

- channelId 可选:将要安装的实例的通道ID。这是install命令所必需的,如果指定了--installPath,则忽略其他命令。

- channelUri 可选:频道清单的URI。这可以用于安装命令;其他命令会被忽略。

- installChannelUri 可选:用于安装的通道清单的URI。由--channelUri指定的URI(必须在指定--installChannelUri时指定)将用于检测更新。如果不需要更新,则必须在没有参数的情况下指定--channelUri。这可以用于安装命令;其他命令会被忽略。

- installCatalogUri 可选:用于安装的目录清单的URI。如果指定,则在使用安装通道清单中的URI之前,通道管理器将尝试从此URI下载目录清单。此参数用于支持脱机安装,其中将使用已下载的产品目录创建布局缓存。这可以用于安装命令;其他命令会被忽略。

在布局目录中,存在诸如catalog.json,channelmanifest.json,response.json,vs_installer_version.json等文件。有什么想法吗?

3 个答案:

答案 0 :(得分:2)

您无需为离线安装程序执行任何特殊操作,即可在没有任何Internet连接的情况下工作。即使channelURI中的<offline folder>\Response.json指向在线,但每次都不会尝试更新组件列表或其他内容,您需要明确请求更新。

您唯一需要确保的是选择已下载文件的语言&#34;语言包&#34;选择组件时的选项卡 - 否则,它将尝试下载丢失的位。

安装程序仍会尝试访问网络

  • 将遥测发布到https://dc.services.visualstudio.com/v2/track和来自https://vortex.data.microsoft.com/collect/v1的{​​{1}},这是安装人员的一部分
  • Microsoft.VisualStudio.Telemetry.Net35.dll
  • 检索相关签名证书的CRL

但两者都是可选的,安装程序不会失败,它无法做到 - 我只是成功安装了禁用网络连接的东西。

答案 1 :(得分:0)

要使离线安装程序正常工作,您需要“假冒”&#39;安装程序使其认为存在Internet连接,但连接不良。

要执行此操作,您需要向本地&#39;主机添加各种地址。文件。

请参阅Visual Studio 2017 Enterprise Offline Installation Fails以获取要添加到主机文件的名称列表。

答案 2 :(得分:0)

我尝试安装证书,为缓存文件夹安装了不同的布局参数,但是没有一个起作用。我通过在缓存文件夹中运行 vs_setup.exe 而不是运行带有参数的v s_community.exe 解决了该问题。