madExcept的官網在這里,先去看一下http://www.madshi.net/,這么好的控件竟然是免費的,贊一個!下載回來http://madshi.net/madCollection.exe,開始安裝.
1.運行madCollection,選擇madExcept 5,如下圖,然后點擊Install:

2. 出現license界面,選擇Accept license,點Continue
3.輸入yes,點Continue

4.選擇安裝目錄,點Install。圖省事,我就用默認的。

5.顯示這個界面,安裝完成:

接下來,看看如何使用madExcept檢測內存泄漏:
1.新建一個VCL項目,然后在Project菜單中選擇madExcept settings...

進入madExcept設置界面:

選擇OK,看一下項目源代碼,madExcept為項目增加了代碼,以mad為前綴的幾個單元:
program Project3; uses madExcept, madLinkDisAsm, madListHardware, madListProcesses, madListModules, Vcl.Forms, Unit2 in 'Unit2.pas' {Form2}; {$R *.res} begin Application.Initialize; Application.MainFormOnTaskbar := True; Application.CreateForm(TForm2, Form2); Application.Run; end.
運行,再關閉項目,會出下面的提示,沒有泄漏:

手工造一個泄漏:
procedure TForm2.Button1Click(Sender: TObject); var b:TButton; begin b:=TButton.Create(nil); end;
建立個按鈕對象,不釋放他,運行,點Button1三次,退出項目:

這是顯示的內存泄漏!可以看出TButton對象,泄漏了三次!
上面的操作,沒有寫一行代碼,僅通過為項目設置madExcept,就實現了內存泄漏檢測。
我們還可以用代碼,隨時控制檢測,引用madExcept單元,然后用代碼:

感謝朋友007及黑夜殺手!
有朋友問,是否支持fmx項目,答案是肯定的,支持!
Delphi 10.4.1+madExcept 5.1
