代码之家  ›  专栏  ›  技术社区  ›  Stewbob

.msi文件中的长延迟问题

  •  3
  • Stewbob  · 技术社区  · 15 年前

    我有一个相当简单的桌面应用程序,它使用.NET安装项目(.msi文件)来执行安装。在第一次安装时,一切都会及时进行,并为用户提供良好的反馈。

    当用户在其计算机上的旧版本上安装最新版本的应用程序时,就会出现此问题。从安装程序的“欢迎”对话框[它不是“欢迎”对话框,我已经从安装项目的“开始”部分删除了它,并用复选框对话框替换它以询问用户是否需要桌面上的快捷方式]消失,直到出现“进度”对话框,这是一个不可接受的长延迟约60到180秒。用户看到空白屏幕的分钟数,认为安装已停止或失败。

    在安装项目属性中,“detectNewerInstalledVersion”和“removePreviousVersions”属性设置为true。所以,我相信,虽然看起来什么都没有发生,但安装程序实际上正在删除旧版本。在新版本开始安装之前,“进度”对话框不会出现。

    我一直在尝试:

    a)“安装图标”对话框消失后立即显示“进度”对话框。

    b)在卸载运行时显示另一个对话框,让用户知道安装程序仍在运行,一切正常。

    两种方法我都失败了。有什么想法吗?

    我用的是vs 2008 SP1

    1 回复  |  直到 14 年前
        1
  •  2
  •   Stewbob    14 年前

    我无法在Visual Studio 2008中解决此问题,但现在我已切换到Visual Studio 2010,这不再是一个问题。