【问题标题】:MSI self heal doesn't repair shortcut on Windows XPMSI 自我修复无法修复 Windows XP 上的快捷方式
【发布时间】:2011-12-08 10:15:16
【问题描述】:

我有一个 32 位 .NET 应用程序,它使用 VS 2008 中的内置 MSI 设置项目。

它是使用 GPO 为每个用户部署的。这意味着它安装在用户登录的每台计算机上。这样每个用户都会自动在他们的桌面上获得正确的快捷方式。

我们所有的工作站都是 Windows XP(32 位),但我们的一些用户也登录到 64 位的终端服务器(Windows Server 2008)。当他们登录服务器并点击快捷方式时,msi 安装程序会启动(我认为它是自我修复的,将快捷方式更改为Program files (x86),他们就可以使用该应用程序了。

问题是,当他们再次登录工作站并单击工作站上的快捷方式时,它会立即失败,因为快捷方式指向Program files (x86) 文件夹,而 XP 机器上不存在该文件夹。

我希望 MSI 能够再次自我修复以修复快捷方式。我可以强迫这种情况发生吗?

【问题讨论】:

    标签: 64-bit windows-installer setup-project


    【解决方案1】:

    Windows 安装程序不支持此功能。

    仅当 Windows Installer 检测到丢失的资源时才会执行自动修复。服务器机器很可能无法访问某些应用程序文件或注册表项,因此它会执行修复,这恰好修改了快捷方式目标。这基本上是一个巧合。

    由于用户帐户正在漫游(用户可以在多台计算机上使用它),因此应将应用程序安装在用户配置文件文件夹中。 Windows Installer 为此提供了AppDataFolder

    使用用户配置文件漫游文件夹将允许您的用户从任何机器正确访问应用程序文件。

    【讨论】:

      猜你喜欢
      • 2016-03-29
      • 2011-02-06
      • 1970-01-01
      • 2022-01-06
      • 1970-01-01
      • 2011-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多