帮助安装SQL Server 2017-VS Shell安装失败,退出代码为1638


157

关于如何处理此错误的任何建议:

TITLE: Microsoft SQL Server 2017 Setup
------------------------------

The following error has occurred:

VS Shell installation has failed with exit code 1638.

For help, click: https://go.microsoft.com/fwlink?LinkID=20476&ProdName=Microsoft%20SQL%20Server&EvtSrc=setup.rll&EvtID=50000&ProdVer=14.0.1000.169&EvtType=0x5B39C8B9%25401434%25403

------------------------------
BUTTONS:

OK
------------------------------

这是一台正在运行的新笔记本电脑

  • SQL Server 2016 Express
  • Visual Studio 2017
  • SSMS 2017

我尝试卸载与SQL Server或Visual Studio相关的所有内容。

日志:[3500:3970] [2017-11-03T16:25:20] e000:错误0x80070666:在安装较新版本时无法安装产品。

Detailed results:
  Feature:                       Full-Text and Semantic Extractions for Search
  Status:                        Failed
  Reason for failure:            An error occurred for a dependency of the feature causing the setup process for the feature to fail.
  Next Step:                     Use the following information to resolve the error, and then try the setup process again.
  Component name:                Microsoft Visual C++ 2015 Redistributable
  Component error code:          1638
  Component log file:            C:\Program Files\Microsoft SQL Server\140\Setup Bootstrap\Log\20171103_162358\VCRuntime140_x64_Cpu64_1.log
  Error description:             VS Shell installation has failed with exit code 1638.
  Error help link:               https://go.microsoft.com/fwlink?LinkId=20476&ProdName=Microsoft+SQL+Server&EvtSrc=setup.rll&EvtID=50000&ProdVer=14.0.1000.169&EvtType=VCRuntime140_x64%40Install%400x1638

  Feature:                       Database Engine Services
  Status:                        Failed
  Reason for failure:            An error occurred for a dependency of the feature causing the setup process for the feature to fail.
  Next Step:                     Use the following information to resolve the error, and then try the setup process again.
  Component name:                Microsoft Visual C++ 2015 Redistributable
  Component error code:          1638
  Component log file:            C:\Program Files\Microsoft SQL Server\140\Setup Bootstrap\Log\20171103_162358\VCRuntime140_x64_Cpu64_1.log
  Error description:             VS Shell installation has failed with exit code 1638.
  Error help link:               https://go.microsoft.com/fwlink?LinkId=20476&ProdName=Microsoft+SQL+Server&EvtSrc=setup.rll&EvtID=50000&ProdVer=14.0.1000.169&EvtType=VCRuntime140_x64%40Install%400x1638

Answers:


314

我在SQL Server 2017 Developer中也遇到了这个问题,对于SQL Server安装包人员来说,这似乎只是一个糟糕的计划。问题是Visual Studio 2017安装了Microsoft Visual C ++ 2017可再发行组件(x86)和(x64),而SQL Server安装试图安装Microsoft Visual C ++ 2015可再发行组件,这不能执行,因为SQL Server安装不允许您要安装旧版本并安装新版本。

Microsoft支持文章介绍了他们对问题的解释以及建议的解决方法。

解决方案1:在安装Visual Studio 2017之前先安装SQL Server。

解决方案2(我做了什么):

  1. 卸载Microsoft Visual C ++ 2017 Redistributable(x86)和(x64),
  2. 安装SQL Server,
  3. 然后重新安装Microsoft Visual C ++ 2017 Redistributable(x86)和(x64)。

它们很难找到,因此这里是直接链接:

X64:https://go.microsoft.com/fwlink/ LinkId = 746572

x86:https//go.microsoft.com/fwlink/?LinkId = 746571

注意:如果您根本没有安装Microsoft Visual C ++ 2017 Redistributable,只需从上面的链接之一安装它,然后重试安装SQL Server。现在应该可以工作了。


安装其他SQL Server 2017命名实例时,您可能必须重复这些步骤。


4
我必须卸载2017 Redist,所以我对您的结束语感到困惑,要求我们安装它?这将恰好导致此处解决的问题。请确定下载它,但直到安装Sql Server Express 2017后才安装它,否则它将永远不会成功。
克里斯·莫斯基尼

1
就我而言,安装的其他软件干扰了2015年的运行时安装。最重要的是,我必须在安装SQL Server之前安装64位版本的2015 Microsoft Visual C ++可再发行组件。通过手动执行此操作,与SQL Server安装时相比,我得到了更好的诊断。一旦安装了2015 64位可再发行组件,SQL Server安装即告完成。使用Windows中的“添加/删除程序”来查看安装了哪些版本。
nachbar '18

我发现安装引用的库,然后重新运行SQL Server安装就足够了。
roaima

SQL Server 2019 CTP 2发生相同的问题(解决方案相同)。
拉兹万·索科尔

现在在support.microsoft.com/zh-cn/help/2977003/…上有一个“ Microsoft Visual C ++ 2015-2019可再发行组件” ,可以将其安装在2017可再发行组件的顶部并替换它,同时还提供2015和2019可再发行产品。在收到退出代码1638错误后,我这样做了,然后可以成功安装SQL Server2017。无需卸载可再发行组件。(由于受保护的状态,不能添加为替代答案。)
Otto G

9

我遇到了同样的问题,但是我正在从SQL Server 2016升级。

我同时卸载了x86和x64的Microsoft Visual C ++ 2015 Redistributable,然后成功升级。


当我尝试向现有的SQL 2017安装中添加功能时,此解决方案也对我有用。
罗基


0

在Windows的应用列表中,尝试为MS Visual C ++ Redistributable运行“修复”

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.