我们遇到了一个看似随机的AppCrash问题,Windows会接管进程并关闭它,给出一些包括NTDLL.dll、StackHash、User32.dll等信息的神秘调试报告。对这些模块和报告中的信息进行超过一年的研究,我们得到的信息比之前少得多。我们能做到的最好的事情就是将其缩小到我们的应用程序使用与通过TCP/IP通信的硬件交互的DLL上。我们无法控制这个外部库,必须使用它,并且考虑到问题是随机的(我们无法在自己的端口复制它,在PC重新启动时解决),我们似乎陷入了困境。
问题在于我们的应用程序需要在不受人为监控的仪器上运行24/7。我需要检测我们的应用程序何时崩溃,并发出重新启动整个应用程序的命令。问题是如何检测AppCrash;没有异常在应用程序内生成(AppCrash是外部应用程序),也没有任何日志记录表明程序正在关闭。
我们想要做的是运行一个服务来检查应用程序是否在运行,如果没有,则发出重新启动系统的命令。然而,当AppCrash对话框显示时,它会使进程继续运行。
有没有办法防止这些AppCrash通知、绕过它们或至少先关闭程序?请不要指向stackhash.com或使用MS错误报告;这些设备无法连接到互联网。我们也不能修复我们正在使用的DLL中的任何错误(OEM供应商不合作)。
问题在于我们的应用程序需要在不受人为监控的仪器上运行24/7。我需要检测我们的应用程序何时崩溃,并发出重新启动整个应用程序的命令。问题是如何检测AppCrash;没有异常在应用程序内生成(AppCrash是外部应用程序),也没有任何日志记录表明程序正在关闭。
我们想要做的是运行一个服务来检查应用程序是否在运行,如果没有,则发出重新启动系统的命令。然而,当AppCrash对话框显示时,它会使进程继续运行。
有没有办法防止这些AppCrash通知、绕过它们或至少先关闭程序?请不要指向stackhash.com或使用MS错误报告;这些设备无法连接到互联网。我们也不能修复我们正在使用的DLL中的任何错误(OEM供应商不合作)。