在 C# 代码上,我在使用 installUtil 安装服务期间出错。我正在使用我自己的安装程序。安装程序上的所有代码和 installUtil 的参数都可以,因为安装在 90% 的情况下都可以正常工作。失败的场景是在我的 CI 工作下,我正在使用相同的代码并行安装多个服务,并且我无法捕获异常。我所拥有的只是日志中的以下消息:
System.Configuration.Install.AssemblyInstaller 安装程序的提交阶段发生异常。System.InvalidOperationException:集合已修改;枚举操作可能无法执行。在安装的提交阶段发生异常。此异常将被忽略,安装将继续。但是,安装完成后应用程序可能无法正常运行。
在我自己的安装程序类上,我已经在我能够覆盖的所有阶段和方法中放置了日志,我还获得了一些 System.Configuration.Install.Installer 的源代码,我也在那里记录,但什么也没有……
在 Install 方法之后和 Commit 之前发生异常。
就在 System.Configuration.Install.Installer 的 Commit 阶段执行之前,有一些带有此输出的代码:
日志如下:
安装阶段成功完成,提交阶段开始。查看日志文件的内容... Committing assembly .... 受影响的参数有:.... System.Configuration.Install.AssemblyInstaller 的 Commit 阶段发生异常... Commit 阶段成功完成。事务安装已完成。在安装的提交阶段发生异常。
如您所见,异常出现在 Install 阶段之后和 Commit 阶段之前,但在我的自定义 Installer 类或 System.Configuration.Install.Installer 的所有重写方法上都没有
谁能给我一些关于如何捕获此异常或更好地查看服务安装期间执行的完整工作流程的提示?
谢谢