zoukankan      html  css  js  c++  java
  • Delphi 完整的Bug决议工具EurekaLog的使用


    EurekaLogDelphiC++Builder开发者提供的,一个完整的Bug决议工具。能让所编写的应用程序有能力捕获任何异常和内存泄露,直接在最终用户的电脑上,生成调用堆栈的详细日志(包括file, class, method and line number),可以设置通过Email或者WEB发送每个日志的副本。据官方的Features介绍,其企业版包含源代码,支持Delphi版本3-7、2005-2010、XE-XE7,编译后的文件大约增加300KB。       

    从网上下载EurekaLog,根据其提示进行安装,如下图所示:

    官方自带有教学使用Flash视频、还有Demo以及帮助文档。下面简单测试对此工具的使用:
    1.新建Delphi 2010应用程序,在界面上放置一个按钮,按钮事件代码如下所示:
    procedure TForm1.btn1Click(Sender: TObject);
    begin
      raise Exception.Create('这是一个异常!');
    end; 

    2.菜单→"Project"→"EurekaLog Options...",在左下角打钩"Activate EurekaLog",按"OK"完成,如下所示;

    3.编译,然后脱离IDE运行程序,点击按钮如下图所示:

    点击对话框上的"click here",弹出如下详细对话框:

    切换到"Call Stack"页面,双击提示的异常线程下的异常单元"Unit1.pas",则会自动切换到Delphi IDE定义到异常的那一行。如下图所示:

    4.保存工程,对比加入EurekaLog功能前后的程序大小,如下图所示:

    大概会增加490千字节。EurekaLog可以自定义异常对话框显示风格、自定义消息显示文本内容,可以将错误报告发送到Email、Web,下面测试发送到一个FTP服务器端,如下截图进行"Email & Web send"设置:

    然后脱离IDE进行测试,点击按钮,截图所下所示:

            要使用EurekaLog进行内存泄露检测,需要手动开启"EurekaLog Options..."下的"Advanced Options"旁的"Memory-Leaks Options"全部打钩,对按钮事件改写如下:
    procedure TForm1.btn1Click(Sender: TObject);
    var
      sl: TStringList;
    begin
      sl := TStringList.Create;
    end; 
            编译、脱离IDE运行程序,点击按钮(无现象),点关闭窗体,弹出如下对话框:

            查看详细堆栈调用,可发现如下信息提示:

            双击即可定位到此行。EurekaLog自带有一个EurekaLog Viewer,可查看".elf"日志信息,如下图所示:

    扩展资料:

    1.EurekaLog contains all the features

    http://eurekalog.com/features_delphi.php

    2.图解如何用Eurekalog跟踪程序错误:

    http://blog.csdn.net/baronyang/article/details/4379972


  • 相关阅读:
    PAT 甲题 1155 Heap Paths
    PAT甲题 1014 Waiting in Line
    PAT甲题 1014 Waiting in Line
    AcWing 840. 模拟散列表
    2019新生赛 %%%xxh
    AcWing 240. 食物链
    AcWing 143. 最大异或对
    AcWing 838. 堆排序
    AcWing 836. 合并集合
    AcWing 837. 连通块中点的数量
  • 原文地址:https://www.cnblogs.com/xieyunc/p/9126537.html
Copyright © 2011-2022 走看看