Delphi 完整的Bug決議工具EurekaLog的使用



        EurekaLog為Delphi和C++Builder開發者提供的,一個完整的Bug決議工具。能讓所編寫的應用程序有能力捕獲任何異常和內存泄露,直接在最終用戶的電腦上,生成調用堆棧的詳細日志(包括file, class, method and line number),可以設置通過Email或者WEB發送每個日志的副本。據官方的Features介紹,其企業版包含源代碼,支持Delphi版本3-7、2005-2010、XE-XE2,編譯后的文件大約增加300千字節。

        
從網上下載 EurekaLog ,根據其提示進行安裝,如下圖所示:

官方自帶有教學使用Flash視頻、還有Demo以及幫助文檔。下面簡單測試對此工具的使用:
1.新建Delphi 2010應用程序,在界面上放置一個按鈕,按鈕事件代碼如下所示:
1
2
3
4
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 "全部打鈎,對按鈕事件改寫如下:
1
2
3
4
5
6
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       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM