【问题标题】:Associating multiple programs with extension将多个程序与扩展相关联
【发布时间】:2016-01-05 08:55:48
【问题描述】:

我有软件,为了举例,将调用 A.A - 有多个版本:

  • 1.0
  • 1.1
  • A 2.0

所有这些版本都可以安装和共存 - 这意味着更高版本不会升级更低版本。 文件扩展名 .aaa 与所有 3 个程序相关联,这意味着 A 程序将其文件保存在扩展名为 .aaa 的文件中,当双击 .aaa 扩展名时,将触发最新安装的软件。

现在我面临以下问题:

  • 用户安装 1.1 版的 A。
  • 一段时间后,用户安装 A 2.0。
  • 用户使用 A 2.0 并生成扩展名为 .aaa 的保存文件
  • 用户卸载 A 1.1 用户双击 .aaa 扩展名文件,然后 收到一个弹出窗口以查找要打开文件的软件(这意味着 卸载 A 1.1 后,文件扩展名失去关联)。

A的可执行文件的组件ID和文件名不同,升级代码和程序ID当然也不同。然而,卸载低版本后怎么会破坏关联,我怎样才能让它工作呢?

【问题讨论】:

    标签: wix wix3.6 wix3.7 wix3.8


    【解决方案1】:

    注册表值的位置在“A”的两个版本之间是相同的,因此您应该为组件使用相同的 GUID。可以在以下位置找到一些好的规则:Change my component GUID in wix?

    从 A 1.1 中获取文件扩展条目的组件 GUID 并在 A 2.0 中使用它。这应该允许扩展在删除 A 1.1 后保留。

    旁注: 这可能会打开需要管理安装多个版本时应该打开哪个版本的应用程序的大门。例如,如果您安装 A 2.0 然后 A 1.1,您的文件扩展名可能会在 A 1.1 中打开文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-30
      • 2011-02-10
      • 2012-03-21
      • 2015-05-27
      相关资源
      最近更新 更多