vs_Community.exe --layout f:\vs2017c\
来获取 Visual Studio 2017 Community Edition 离线分发,如文档所述(vs_Community.exe
下载在此处或通过直接链接),但这并不起作用。我只得到了两个文件:f:\vs2017c\vs_installer.version.json
和f:\vs2017c\certificates\vs_installer_opc.SignCertificates.p12
。我也尝试过使用 /layout
替代 --layout
,但没有成功。我错在哪里了?另外,是否有 ISO 文件可用呢?更新:我安装了证书,重启了计算机,并重新尝试运行安装程序多次。但没有什么变化。有几次我能看到控制台中出现红色字体的东西,但持续时间不到半秒钟。最后我运行了 CCleaner (带有完整的 CCEnhancer 自定义清理列表)进行了清理(再次进行!我已经在第一次尝试之前完成了这一步骤),然后重试,现在正在下载...
更新2:我以为我成功了,但事实并非如此。我所做的是一个批处理文件,内容如下:
vs_Community.exe --layout f:\vs2017c --lang en-US --add [a list of 133 individual component IDs]
通过运行此命令的结果,安装程序试图下载所有组件(包括我没有选择的语言),我只需要en-us。 我注意到它正在下载我不需要的东西,因此终止了该进程并删除了所有内容以进行全新的开始。 下次我只需要单个工作负载而不是列出所有单个组件。 我甚至尝试将其简化为仅一个工作负载。
vs_Community.exe --lang en-US --layout f:\vs2017c\ --add Microsoft.VisualStudio.Workload.ManagedDesktop
但是这种方法行不通。相反,在“请稍等,我们很快就会完成...”进度条完成时会弹出以下内容半秒钟:
更新3:
我发现在布局路径的末尾加上反斜杠会破坏它。例如,vs_Community.exe --layout f:\vs2017c
是可以的,但 vs_Community.exe --layout f:\vs2017c\
则不行。然而,这并不是唯一的问题-在vs_Community.exe --layout f:\vs2017c
之后同时列出许多工作负载和;includeRecommended;includeOptional
也会破坏它(虽然我已经试过以只有一个工作负载和一个额外组件的方式,并且(重要条件)清除了临时文件,这个方法是可以正常运行的)...
更新4:
我已经成功获取了窗口标题截图中显示的f:\vs2017c\q.2ho\resources\app\layout\Setup.exe
(这有点棘手,因为它只出现了几秒钟,并且很快就会自动删除),但是它的帮助输出与上面的帮助信息非常不同。似乎在之前的情况下,它链式启动了其他exe。下面是它自己的输出,没有明显的方法来指定单个工作负载/组件:
最后,我放弃尝试选择单个组件和工作负载,并尝试了下面这个也没有成功:vs_Community.exe --lang en-en --layout f:\vs2017c --all --includeRecommended --includeOptional
。
最终我只使用了vs_Community.exe --lang en-en --layout f:\vs2017c --all
-它可以工作,并且只下载我需要的语言,但实际上包括了一些我不需要的组件。生成的目录大小为18 GB。
我已经完成了下载和安装,但关于如何可靠地使用布局功能参数的问题仍然存在。
--includeRecommended
和--includeOptional
两个参数是否会同时下载推荐和可选组件?从 layout.json 文件的内容来看好像并不是这样。 - Sнаđошƒаӽ--includeRecommended
和--includeOptional
来安装推荐和可选组件,但是使用--layout
命令创建离线安装程序时,只需使用--includeRecommended
来包括仅推荐的组件,并使用--includeOptional
来包括推荐和可选组件。我的意思是WT*,这本应该更简单和一致。在此处 - Sнаđошƒаӽ