Wix工具包-MSI安装程序-启动已安装的应用程序时,窗口的弹出窗口不断出现 [英] Wix Toolkit - MSI Installer - Window's pop-up constantly appears when installed application is launched

查看:68
本文介绍了Wix工具包-MSI安装程序-启动已安装的应用程序时,窗口的弹出窗口不断出现的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个WiX脚本,该脚本创建一个安装程序,该安装程序以静默方式放置Microsoft Windows 7和10计算机中的应用程序.没有选项,因此不需要GUI.

I have a WiX script that creates an installer that lays down an application in Microsoft Windows 7 and 10 machines silently. There are no options so there is no need for a GUI.

一些客户端抱怨说,当他们启动已安装的应用程序(成功安装后很久)时,Windows弹出MSI安装程序消息请稍候,Windows会配置[APPLICATION_NAME]".他们说,这种情况每次都会发生,并且其运行时间与最初安装所需的时间差不多.

Some of the clients are complaining that when they launch the installed application (long after it was successfully installed), Windows pop-ups up the MSI installer message "Please wait while Windows configures [APPLICATION_NAME]". They say this happens every time and it runs for about as long as it originally took to install.

我过去常常得到更多,并认为这是因为某些已安装文件已被修改.我得出的结论是,当MSI第二次运行时,它将用安装程序中的原始文件覆盖修改后的文件.

I used to get this a whole lot more and thought that it was because some of the installed files had been modified. I concluded that when the MSI ran the second and subsequent times it was overwriting the modified files with the original ones from the installer.

由于这些文件打算在安装后进行修改,因此我在其Component定义中添加了"NeverOverwrite ="yes"",如下所示:

Since these files were intended to be modified after install, I added 'NeverOverwrite="yes"' to their Component definition as in:

<Component Id="..." NeverOverwrite="yes" Directory="..." Guid="...">

这似乎可以解决问题,直到现在.有什么想法我应该考虑或进一步调查吗?

This seemed to solve the problem until now. Any ideas what I should be looking at or investigating further?

推荐答案

简短答案 :这是一个MSI自修复问题.

Short Answer: This is an MSI self-repair problem.

  1. 计算出触发自我修复的组件.详细信息如下.
  2. 通过更改设置以消除冲突情况来纠正情况.


自我修复 :这是MSI常见的经典" 意外自我修复 "问题当满足某些条件时打包.关于这个问题,我已经写了很多次了,我将重复一些答案.我认为最容易获得的答案可能是以下两个(请至少阅读第一个链接):


Self-Repair: This is the classic "unexpected self-repair" issue often seen with MSI packages when certain conditions are met. I have written about this issue so many times that I will recycle some answers. I think the most accessible answers might be these two (please read at least the first link):

使用事件日志进行调试 :要确定哪个MSI组件触发了自我修复,您需要通过检查事件日志进行调试.这由 Stefan Kruger的FAQ条目 描述:没有明显的原因,Windows Installer意外启动.或者阅读 Flexera的文章 :

Debugging Using Event Log: To determine what MSI component triggered the self-repair you need to debug by inspecting the Event Log. This is described by Stefan Kruger's FAQ entry: Windows Installer launches unexpectedly, for no obvious reason. Alternatively read Flexera's Article: Understanding Windows Installer (MSI) Self-Repair (features nice screen shots).

组件和放大器;产品 :当您拥有有问题的组件GUID时,可以通过运行以下VBScript来确定其所属的产品:查找组件产品.可能是另一种产品-如果不只是打开产品的MSI文件并找到组件的密钥路径.

Components & Products: When you have an offending component GUID, you can determine what product it belongs to by running this VBScript: Look Up Products for Component. It could be another product - if not just open your product's MSI file and find the component's key path.

详细信息 :非常深入的答案以及完整的说明.请尝试使用粗体的第三个链接来解决实际问题:

Full Details: And the very in-depth answers with full explanations. Try the bolded third link for practical issues:

  1. 自我修复-解释
  2. 自我修复-找到现实的解决方案
  3. 自我修复-如何在自己的包装中避免出现这种情况


其他资源 :


Other Resources:

这篇关于Wix工具包-MSI安装程序-启动已安装的应用程序时,窗口的弹出窗口不断出现的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆