![如何在通过命令行安装VS2017时自动接受隐私协议?](https://linux22.com/image/712896/%E5%A6%82%E4%BD%95%E5%9C%A8%E9%80%9A%E8%BF%87%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%AE%89%E8%A3%85VS2017%E6%97%B6%E8%87%AA%E5%8A%A8%E6%8E%A5%E5%8F%97%E9%9A%90%E7%A7%81%E5%8D%8F%E8%AE%AE%EF%BC%9F.png)
作为管理环境的一部分,我想通过命令行安装 Visual Studio 2017。但是,我在安装 2017 时遇到了安装 2015 时没有遇到的问题。按照文档我有一个简单的 Powershell 脚本:
Start-Process C:\\windows\\temp\\vs2017\\vs_professional_2017 --ArgumentList "/Quiet /NoRestart /Log C:\\Windows\\Temp\\InstallVs2017\\install.log" -Wait
对于 VS2015 来说,它运行得很好。它确实启动了安装,但几秒钟后会显示接受隐私声明和许可条款的对话框。我似乎找不到标志--accepteula
或类似的东西来绕过它(顺便说一句,我本以为既然quiet
应该抑制 UI,它也会抑制这一点)。在文档,但他们无法找到绕过它的方法。你如何自动接受它?我觉得我忽略了一些显而易见的东西,但我还没有弄清楚。
答案1
单独或组合尝试这些开关,或者使用 Orca 打开 MSI 并更改 EULA 变量。
ACCEPT=YES
ACCEPTEULA=1
ASSOCIATE=1
答案2
Powerbi msi 接受"ACCEPT_EULA=1"
。如果 Visual Studio 2017 的一切均失败,您可以尝试一下。
答案3
我确实设法让它工作了。第一个问题是选项不能再用 表示/
,而必须用 表示--
。显然/
现在不允许使用 ,我在某个地方错过了这一点。
我也放弃了这个/Log
选项。它不存在于 VS2017 的选项中,尽管如果你仍然需要获取安装日志,它们确实有一个获取它们的方法。
进行这些更改后,VS2017 成功安装,无需我手动接受条款;它没有选择选项,因为我没有使用--
。为了完美主义,我还在.exe
可执行文件中添加了。
Start-Process C:\\windows\\temp\\vs2017\\vs_professional_2017.exe --ArgumentList "--quiet --norestart" -Wait