由于错误 0x80070643,无法安装 Microsoft SQL Server Management Studio

The*_*nds 2 sql sql-server ssms visual-studio visual-c++

我正在尝试安装 SSMS,但不断出现错误 0x80070643。它说我没有安装 Visual Studio C++ 2017,但 SSMS 安装程序实际上安装了 Visual Studio C++ 2017。所以我不知道为什么它找不到它。

这是安装日志中似乎出现错误的部分

                      [1130:03E4][2019-10-11T19:15:27]i323: Registering package dependency provider: 
                      {72AFAF21-33FB-45A5-9468-A9EC07427F82}, version: 17.4.1.1, package: 
                       msodbcsql.msi
                       [168C:1B4C][2019-10-11T19:15:27]i000: MainViewModel.OnPackageAction: Install 
                       Started for package Microsoft ODBC Driver 17 for SQL Server
                       [1130:03E4][2019-10-11T19:15:27]i301: Applying execute package: 
                       msodbcsql.msi, action: Install, path: C:\ProgramData\Package Cache\{72AFAF21- 
                          33FB-45A5-9468-A9EC07427F82}v17.4.1.1\x64\msodbcsql.msi, arguments: ' 
                          MSIFASTINSTALL="7" AddLocal="SQL_SQLODBC_CORE" 
                           IACCEPTMSODBCSQLLICENSETERMS="YES"'
                          [168C:1B4C][2019-10-11T19:15:27]i000: 
                            MainViewModel.OnPackageActionProgress: Percent completed: 0, Overall 
                            progress: 0
                           [168C:1B4C][2019-10-11T19:15:27]e000: 
                              BootstrapperEngineDataModel.OnError: Burn engine encountered error. 
                           PackageId: msodbcsql.msi, ErrorType: WindowsInstaller, ErrorCode: 1723, 
                             Data: 
                         1723,IsPendingRebootKey,IsPendingReboot,C:\WINDOWS\Installer\MSI37D2.tmp, 
                           ErrorMessage: Please install the Visual C++ 2017 Redistributable from 
                            https://aka.ms/vs/15/release/vc_redist.x64.exe before running this 
                       installer. , UIHint: 0
Run Code Online (Sandbox Code Playgroud)

我能做什么来修复它?已尝试卸载并安装 Visual Studio C++ 2017 但不起作用

我通过错误给我的链接安装了 VS C++ 2017,然后重新启动计算机,但它仍然无法工作。尝试自己删除它,然后让 SSMS 安装程序为我完成此操作,但同样不起作用。

我也尝试自己安装ODBC驱动,但出现同样的错误。

但是,使用 VS C++ 2013(也由 SMMS 安装)不会发生错误,因为我安装了 ODBC 2013 驱动程序并且它运行良好

如您所见,VS 是由 SSMS 安装程序安装的。奇怪的是,当我从错误给出的链接下载 VS c++2017 时,它允许我安装它,即使它不应该安装,因为它已经安装了

sta*_*ire 6

对我有用的是

https://www.accessdbgurus.com/fixing-a-previous-installation-error-with-sql-server-odbc-driver-17-installation/

另外,根据我发现的另一个建议,我还卸载了 Visual C++ Redistributable 2013 的所有实例。(我想如果有需要的话我可以重新安装这个。)我不确定这是否与修复有关,但如果是的话我会包括在内。

上述操作完成后需要重新启动才能工作。