

新闻资讯
技术学院终端产品通常部署在客户的环境中,因此可能会遇到各种各样的问题。例如,windows产品进程为什么突然停止了?有经验的程序员通常会进行以下分析:
中型产品的代码较为复杂。程序中是否有未注意到的退出逻辑?一般来说,程序退出时会有日志记录,这种情况可以通过调试日志和代码审查来追踪。
程序是否因为资源不足或代码错误而崩溃?如果你的程序是一个Windows服务,可以先查看Windows事件日志。当然,如果是崩溃,最好的方式是通过收集dump文件来确认,可以参考我之前写过的一篇文章,然后通过Windbg进行分析,从而定位问题。
系统中的其他程序是否关闭了我们这看起来是最难查找的,因为用户环境复杂多变。然而,Windows调试工具集中的gflags可以满足我们的需求。
的进程?第一步 使用gflags设置需要监视的进程,如下图所示,并开启启用静默进程退出监控。
第二步 故意kill这个进程notepad.exe,可以通过任务管理器或Windows调试工具集中的kill.exe手动操作。第三步 查看Windows事件日志,在应用程序事件中可以查看到是谁关闭了你的进程。(下图来自于:MSDN https://www./link/cb804af641d900ffe033193d2b7c4a84)
参考