加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – 我可以用什么工具来捕获导致应用程序崩溃的所有输入

发布时间:2020-12-14 05:39:35 所属栏目:Windows 来源:网络整理
导读:我需要一个 Windows工具来记录导致程序崩溃的输入和调试信息.我不是说 fuzzing software tool!例如,让我描述一个场景来解释我在说什么. 有时在使用程序时,它会在没有已知原因的情况下崩溃,当我想调试它时,我找不到有用的信息来了解崩溃是如何发生的,因为导
我需要一个 Windows工具来记录导致程序崩溃的输入和调试信息.我不是说 fuzzing software tool!例如,让我描述一个场景来解释我在说什么.

有时在使用程序时,它会在没有已知原因的情况下崩溃,当我想调试它时,我找不到有用的信息来了解崩溃是如何发生的,因为导致崩溃的数据不再存在于任何地方.

因此,我需要一个工具记录所有输入和调试信息,以便能够重用输入数据并在Immunity Debugger和OllyDbg之类的调试器下重现崩溃,以便了解崩溃的发生方式.

编辑:我需要能够为我没有写的程序执行此操作.假设我无权查看或修改其源代码.

解决方法

你使用什么编译器/ IDE?

有可能,它包括一个调试器,您可以将其附加到任何正在运行的进程(如您的应用程序),无论您是否从IDE中启动它.这将允许您查看变量的当前值,并在程序意外崩溃时向您显示堆栈跟踪(或有用的诊断信息).如果您正在开发C或.NET应用程序,Visual Studio附带的调试器特别好.

另一种选择是在应用程序中实现广泛的日志记录功能.您可以定期向文件或Windows事件日志写出有关程序当前状态的详细信息,然后在崩溃后检查此信息.如果您尝试调试客户端站点上发生的错误,这将特别有用,因为他们可以将日志文件发送给您进行分析.

如果您正在讨论记录导致应用程序崩溃的特定用户输入集,则记录可能是最佳选择.

您可以使用一些日志库来简化此工作.但是,如果不知道您正在使用哪种语言,则很难提出具体建议.例如,如果您正在开发一个.NET应用程序,Log4Net is an excellent choice.我听说过有关Java开发的Log4j的好消息. log4cxx是C应用程序的选项.另见this question concerning best practices.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读