Visual Studio 2017已损坏且无法卸载或修复

Nik*_*lov 31 visual-studio-2017

我在启动Visual Studio 2017 Enterprise时遇到问题,我无法向Microsoft的Developer Commnuity报告问题,因为它需要运行Visual Studio 2017.Crap!

我正在更新VS 2017本周更新,在此期间我的PC崩溃了,我不得不重新启动它.

现在,当我开始VS 2017时,我收到以下消息:

此Visual Studio安装的设置尚未完成.请再次运行Visual Studio安装程序以更正此问题.

我运行安装程序,它没有检测到任何安装的版本.

我尝试了VS社区的一些命令,如:

%programfiles(x86)%\Microsoft Visual Studio\Installer\resources\app\layout\InstallCleanup.exe -full
Run Code Online (Sandbox Code Playgroud)

这个命令清理了一些东西,但结果是一样的.我无法删除损坏的安装.

我也无法安装任何其他VS 2017版 - 我收到以下错误:

[4068:000d][2017-04-12T20:13:20] Error 0x80004003:
   at Microsoft.VisualStudio.Setup.Cache.InstanceRepository.GetInstance()
   at Microsoft.VisualStudio.Setup.Cache.CacheRepository.<GetInstances>d__27.MoveNext()
   at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at Microsoft.VisualStudio.Setup.Engine.VerifyInstallationPath(IServiceProvider services, String installationPath, IInstance instance, IQuery query)
   at Microsoft.VisualStudio.Setup.Engine.Install(Product product, String destination, CancellationToken token)Object reference not set to an instance of an object.
Run Code Online (Sandbox Code Playgroud)

我现在陷入了一个破碎的Visual Studio 2017,它没有运行,我无法发布到社区,因为这是通过Visual Studio 2017完成的.

有人可以为此建议解决方法吗?

谢谢!

回答

我设法在这篇文章中找到了解决此问题的方法:在VS 2017 RC安装期间出现错误0x80004003

Tia*_*ila 60

我打开Visual Studio 2017安装程序,单击修改并在打开的窗口中,我再次单击修改,没有任何更改.它对我有用,我使用的是Visual Studio 2017 Enterprise.

  • 救生员...... (13认同)
  • 你真是个天才 (8认同)
  • 奇怪的是,这对我有用. (4认同)
  • 快速完美! (3认同)

Ant*_*lin 10

对我有用的唯一解决方案是:

  1. 运行C:\ Program Files(x86)\ Microsoft Visual Studio\Installer\resources\app\layout\InstallCleanup.exe -full

  2. 使用管理员权限运行C:\ Program Files(x86)\ Microsoft Visual Studio\Installer\vs_installer.exe

  3. 单击修改并添加一些选项

编辑:请在执行以下步骤之前阅读以下注释.


Ken*_*ker -2

打开 Visual Studio 2017 安装程序。如果按修改和启动按钮旁边的点,您会看到修复选项。

  • 安装程序不会检测现有安装,仅显示安装,不显示修改和启动选项。点也不见了。 (4认同)
  • 尝试使用 GitHub 上的 Visual Studio 卸载程序删除 Visual Studio 2017,然后重新安装 https://github.com/Microsoft/VisualStudioUninstaller (3认同)