【发布时间】:2021-11-12 14:26:25
【问题描述】:
我正在使用 64 位 Windows 10 系统上的 64 位 Windows 安装程序,该系统存在间歇性崩溃问题,它会崩溃并关闭而不显示任何类型的错误消息。单击安装程序的 UI 时会发生这种情况,它实际上并没有尝试安装任何东西。收集故障转储,我看到它将异常列为“未知错误”0xC000409。当我通过 Visual Studio 的调试器运行故障转储以获取信息时,消息说:
Unhandled exception at 0x00007FFCA685C56F (ntdll.dll) in msiexec__PID__9356__Date__11_01_2021__Time_01_46_34PM__594__Second_Chance_Exception_C0000409.dmp: RangeChecks instrumentation code detected an out of range array access.
从故障转储中收集的堆栈跟踪如下:
ntdll!LdrpICallHandler+f
ntdll!RtlpExecuteHandlerForException+f
ntdll!RtlDispatchException+244
ntdll!KiUserExceptionDispatch+2e
ntdll!LdrpDispatchUserCallTarget+e
msi!CMsiRecord::Release+12e
msihnd!CMsiHandler::CreateControls+18e
msihnd!CMsiHandler::CreateNewDialog+6ba
msihnd!CMsiHandler::RunWizard+564
msihnd!CMsiHandler::DoAction+6e6
msi!MsiUIMessageContext::ProcessMessage+1816
msi!MsiUIMessageContext::RunInstall+1ed
msi!RunEngine+1c9
msi!MsiInstallProductW+11f
msiexec!DoInstallPackage+20e
msiexec!ServerMain+1009
msiexec!WinMain+36
msiexec!__mainCRTStartup+1a0
kernel32!BaseThreadInitThunk+14
ntdll!RtlUserThreadStart+21
据我所知,最近安装程序没有发生重大变化。突然开始有人报告说安装程序崩溃了,这是我迄今为止能够编译的信息。我的问题是,是否有任何方法可以在运行时对安装程序进行故障排除,以便我可以深入了解这一点,或者是否有任何潜在的修复我可以探索应用?我已经对这个错误进行了很多谷歌搜索,但我还没有找到相关的结果。
我还尝试使用 ProcMon 查看文件是否被阻止但尚未找到任何内容。我试图将调试器附加到安装程序以产生运行时故障,但由于它似乎正在进入 Microsoft 代码,我无法查看源代码或它正在使用的信息。
我试图收集 Windows Installer 日志,但日志在崩溃时被截断,没有显示任何有用的异常信息。据我所知,当安装程序尝试创建对话框时会发生崩溃。
【问题讨论】:
-
尝试查看 Windows 事件查看器是否包含有关失败的更多信息。该行为是否在干净的机器上仍然存在?也许你的开发机器上的某些东西在密集的测试/开发过程中被损坏了。
-
从你写的我想你已经在许多机器上测试过这个崩溃问题并且你在不同的机器上看到了这个问题?
-
是的,我已经在多台机器上看到了崩溃。我从事件查看器中看到的只是错误代码,并没有告诉我太多信息。
-
这个问题有进展吗?
-
添加!日志记录选项对于确保您获得所有内容非常重要。您是使用标准 MSI UI 还是有自己的内部 ui 处理程序?任何自定义操作?
标签: exception memory crash runtime-error windows-installer