检查firefox安装最可靠的方法是什么?

c0l*_*row 5 installation firefox inno-setup

我正在制作一个与firefox扩展捆绑在一起的软件.在我的安装脚本中,我想提示用户想要安装扩展程序的天气.但为此,我需要:

  1. 一种判断是否安装了firefox的方法
  2. 一种告诉安装了哪个版本的firefox的方法

我如何在InnoSetup或C#中做这两件事?我尝试手动检查默认firefox安装目录的路径或检查注册表中的卸载记录.我认为这些方法根本不可靠.

Wla*_*ant 6

建议的方法是检查是否HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\Mozilla Firefox存在注册表项.每个已安装的版本都会有一个子项.如果你是偏执狂,你也可以检查值HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\Mozilla Firefox\<version>\Main\PathToExe- 如果该文件存在,那么Firefox确实已安装,你不会看到陈旧的注册表项.

请注意,只有在实际使用安装程序时才能检测Firefox安装.您可以手动"安装"Firefox,只需将安装程序可执行文件与7zip解压缩到任何目录中即可.每晚构建也可作为常规zip文件提供,更易于打开包装.这将工作得很好,但不会添加任何允许您找到此安装的注册表项.

  • 我应该补充一点,这个路径是64位窗口的HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Mozilla\Mozilla Firefox. (2认同)