wix Restart Manager 成功关闭应用程序但说它不能

wix Restart Manager successfully shuts down application but says it couldn't

在我的 wix 项目中,我有一个文件 "connect.exe",在卸载或更新期间通常是 运行。在卸载和主要更新过程中,Wix 会在关闭前提示 "The following applications should be closed before continuing the install."

此对话成功关闭程序:

Action 17:19:59: ShutdownApplications. Shutting down applications
MSI (s) (5C:44) [17:20:02:880]: RESTART MANAGER: Successfully shut down all applications in the service's session that held files in use.
MSI (c) (A4:08) [17:20:02:880]: RESTART MANAGER: Successfully shut down all applications that held files in use.

但紧接着,它会抛出一个错误,说它无法关闭应用程序:

MSI (s) (5C:44) [17:20:33:300]: Note: 1: 1611 
MSI (s) (5C:44) [17:20:33:300]: Note: 1: 2205 2:  3: Error 
MSI (s) (5C:44) [17:20:33:300]: Note: 1: 2228 2:  3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 1611 
The setup was unable to automatically close all requested applications. Please ensure that the applications holding files in use are closed before continuing with the installation.

即使应用程序在系统上明显关闭。另外,安装程序完成更新后进行重大更新时不会重新启动它。

其他一切似乎都正常。

值得注意的是,程序 connect.exe 运行的 window 在 大多数 的时间里都是隐藏的。它主要用作通过 Windows 系统服务运行的 service.exe 的屏幕显示。

我怎样才能解决这个问题?我不是在处理 connect.exe 应用程序端的事情吗?

connect.exe 组件条目:

            <Component Id="ConnectExe" Guid="..." DiskId="1">
                <File Id="connect.exe" Name="connect.exe" Source="..\data\connect.exe" KeyPath="yes">
                    <Shortcut Advertise="yes" Description="Connect front end application." Directory="ApplicationProgramsFolder" Icon="connect.exe" Id="ConnectStartMenuShortcut" Name="Connect" IconIndex="0" WorkingDirectory="INSTALLDIR">
                        <Icon Id="connect.exe" SourceFile="..\data\connect.exe" />
                    </Shortcut>
                    <Shortcut Advertise="yes" Description="Connect front end application." Directory="StartupFolder" Icon="connect.exe" IconIndex="0" Id="ConnectStartupShortcut" Name="Connect" WorkingDirectory="INSTALLDIR"></Shortcut>
                </File>
                <RemoveFolder Id="ApplicationProgramsFolder" Directory="ApplicationProgramsFolder" On="uninstall" />
            </Component>

Improved?: .


Log File: What does the rest of the log file say? Any mention of other files that are locked? .

如果您在重启管理器中发现错误,我不会感到惊讶。虽然是一个相对简单的概念,但它涉及一些非常复杂的东西。 隐藏 windows 正是这种复杂性的来源。

快速问题:

  • 您是否也关闭了您提到的服务可执行文件?也许它是由不同的设置安装的?您可以将其设置为在安装时关闭并重新启动。

  • 我假设您已经在您的应用程序中实现了适当的 重启管理器支持?

  • 鉴于您已经实现了重启管理器支持,您是否注册一个经过测试的命令行以在安装完成后重启应用程序

一些链接: