Windows 软件:重新安装(或卸载)已删除/丢失的应用程序 - 强制新安装

Windows 软件:重新安装(或卸载)已删除/丢失的应用程序 - 强制新安装

(关于重新安装/卸载应用程序的主题有很多问题,如果这个问题已经被问过,我很抱歉,但我找不到具有相同问题/目标的类似问题)。

有没有办法(参数或设置?)强制安装程序进行新安装,即使它找到现有的安装?

在常规的 Windows 10 系统上,假设您已将所有应用程序安装在单独的硬盘上。现在,这个硬盘出现故障,您想将应用程序重新安装在不同的磁盘上。欢迎来到我的痛苦世界。虽然听起来很简单,但主要问题是:各种安装程序都会获取 Windows 注册表信息来确定它们启动的初始状态:全新安装或更改/修复模式。在后者中,它们不会让您更改安装位置,但在处理操作时会立即失败,因为它们会尝试访问丢失的磁盘。

我尝试正确卸载该应用程序。但是,卸载程序文件(也称为 Windows删除应用工具) 通常位于应用程序目录中,因此不可用。MSI 安装程序可以提供上下文菜单或命令行卸载选项,但不幸的是,我尝试重新安装的应用程序没有使用这些选项。

我考虑过手动清理注册表,或者安装第三方“清理”工具来删除注册表项,但这可能会使整个系统更加混乱,而且不是一个非常干净的方法,可能只起到部分作用。

我所要做的就是全新安装该应用程序。

我正在尝试安装的应用程序:

  • Git 2.22
  • Sublime Text 3207
  • vlc 3.0.7.1

我认为 git 使用的是 InstallShield 安装程序和 vlc NSIS,不确定 Sublime 是否可以使用。我检查了是否可以从安装程序文件中提取卸载程序可执行文件,但这太容易了。我在以下位置找到了 Git 的安装脚本文件GitHub,其中包含许多注册表项检查,我可以操纵这些检查来尝试让安装程序进行新的安装。

但是我总共有大约 30 个应用程序受到此问题的影响 - 重新安装 Windows 听起来更容易(也更快)。还有其他方法可以解决这个问题吗?

答案1

要做的是在发生故障的磁盘以外的其他磁盘上全新安装应用程序(假设发生故障的磁盘不是 Windows 磁盘),需要清除旧的应用程序。

您可以使用卸载程序执行此操作,例如 Revo Uninstaller 免费软件即使卸载任务失败,Revo 仍会利用其优秀的算法清除它发现的应用程序的所有痕迹。

您可能会发现其他优秀的卸载程序 最佳免费程序卸载程序

答案2

感谢这篇文章此处静默安装我发现 Git 和 Sublime 都使用Inno Setup 安装程序。可以通过调用它来显示 Cmd args,/HELP并且它确实提供了一个参数来强制安装不同的文件夹!

Inno 设置:

.\Git-2.22.0-64-bit.exe /DIR="c:\git"

文档

我能够将 git 安装到其他位置。安装程序提示“无法卸载以前的版本,请继续”,但成功了。

使用此 Inno Setup 相当简单,现在查看其他应用程序。遗憾的是,vlc 安装程序不会以这种方式显示其选项。

相关内容