Qui s'y est déjà frotté ?
La dernière version de MemCheck est aujourd'hui 09.08.2007 la 2.75. Le site de MemCheck ne parle pas de Delphi 2007 ! ==> http://v.mahon.free.fr/pro/freeware/memcheck/
La compilation sans directive spéciale (VERXXX) fonctionne, mais ne génère pas un fichier exploitable. Exemples ci-dessous d'un projet compilé avec Delphi 7 puis avec Delphi 2007 en utilisant le même fichier "MemCheck".
Le premier me notifie bien l'existence de ma "TStringList" non libérée, mais pas le second.

Voici ce que je fais dans le "FormCreate" de ma forme :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
procedure TpxyFormMain.FormCreate(Sender: TObject);
var
  MyList : TStringList;
begin
  MyList := TStringList.Create;
end;
1. Fichier généré sous Delphi 7 (On y retrouve bien ma "TStringList" non libérée !)
Leak #0 Instance of TStringList
Size: 48
1 Occurence
call stack - 0 : Module FormMain.pas Routine @Formmain@TpxyFormMain@FormCreate Line 31 Find error: 0045AFA8
call stack - 1 : Module Forms.pas Routine @Forms@TCustomForm@DoCreate Line 2648 Find error: 004505AB
call stack - 2 : Module Forms.pas Routine @Forms@TCustomForm@AfterConstruction Line 2575 Find error: 0045021B
call stack - 3 : Routine @System@@AfterConstruction Find error: 00404336
call stack - 4 : Module Forms.pas Routine @Forms@TApplication@CreateForm Line 6947 Find error: 0045946F
call stack - 5 : Module MemCheckTest.dpr Routine initialization Line 15 Find error: 0045FD29
call stack - 6 : (no debug info) Find error: 778C382F
call stack - 7 : (no debug info) Find error: 779FA9B9
call stack - 8 : (no debug info) Find error: FFFFFFFC

1. Fichier généré sous Delphi 2007
Leak #0 User allocated memory (GetMem)
Size: 16
1 Occurence
call stack - 0 : (no debug info) Find error: 0115C5F4
call stack - 1 : (no debug info) Find error: 77802C14
call stack - 2 : (no debug info) Find error: 777FB412
call stack - 3 : Module Forms.pas Routine @Forms@TApplication@DoShowOwnedPopups Line 7579 Find error: 00451B15
call stack - 4 : (no debug info) Find error: 778C382F
call stack - 5 : (no debug info) Find error: 779FA9B9
call stack - 6 : (no debug info) Find error: FFFFFFFC

Leak #1 User allocated memory (GetMem)
Size: 112
1 Occurence
call stack - 0 : Routine @System@TObject@NewInstance Find error: 0040447B
call stack - 1 : Module Forms.pas Routine @Forms@TCustomForm@WMNCPaint Line 4879 Find error: 0044D926
call stack - 2 : Module Controls.pas Routine @Controls@TWinControl@WndProc Line 7304 Find error: 00439E9B
call stack - 3 : Module Forms.pas Routine @Forms@TCustomForm@WndProc Line 3512 Find error: 0044AE74
call stack - 4 : Module Controls.pas Routine @Controls@TWinControl@MainWndProc Line 7073 Find error: 004395C3
call stack - 5 : Routine @Classes@StdWndProc Find error: 0041BDFA
call stack - 6 : (no debug info) Find error: 77801A0C
call stack - 7 : (no debug info) Find error: 7780311F
call stack - 8 : (no debug info) Find error: 77801BFF
call stack - 9 : (no debug info) Find error: 77803652
call stack - 10 : (no debug info) Find error: 77A20E6A
call stack - 11 : Module Controls.pas Routine @Controls@TControl@WndProc Line 5146 Find error: 0043609E
call stack - 12 : Module Controls.pas Routine @Controls@TWinControl@WndProc Line 7304 Find error: 00439E9B
call stack - 13 : Module Forms.pas Routine @Forms@TCustomForm@WndProc Line 3512 Find error: 0044AE74
call stack - 14 : Module Controls.pas Routine @Controls@TControl@Perform Line 5021 Find error: 00435D2B
call stack - 15 : Module Controls.pas Routine @Controls@TWinControl@UpdateShowing Line 7006 Find error: 00439363
call stack - 16 : Module Controls.pas Routine @Controls@TWinControl@UpdateControlState Line 7041 Find error: 004394A6
call stack - 17 : Module Controls.pas Routine @Controls@TWinControl@CMVisibleChanged Line 8393 Find error: 0043BD2B
call stack - 18 : Module Controls.pas Routine @Controls@TWinControl@WndProc Line 7304 Find error: 00439E9B
call stack - 19 : Module Forms.pas Routine @Forms@TCustomForm@WndProc Line 3512 Find error: 0044AE74
call stack - 20 : Module Controls.pas Routine @Controls@TControl@Perform Line 5021 Find error: 00435D2B
call stack - 21 : Module Controls.pas Routine @Controls@TControl@SetVisible Line 4169 Find error: 00434997
call stack - 22 : (no debug info) Find error: 0045A7DD
call stack - 23 : (no debug info) Find error: 778C382F
call stack - 24 : (no debug info) Find error: 779FA9B9
call stack - 25 : (no debug info) Find error: FFFFFFFC

Leak #2 User allocated memory (GetMem)
Size: 56
1 Occurence
call stack - 0 : Routine @System@TObject@NewInstance Find error: 0040447B
call stack - 1 : Module Forms.pas Routine @Forms@TCustomForm@DoCreate Line 2947 Find error: 00449ABF
call stack - 2 : Module Forms.pas Routine @Forms@TCustomForm@AfterConstruction Line 2865 Find error: 00449717
call stack - 3 : Module Forms.pas Routine @Forms@TCustomForm@Create Line 2861 Find error: 004496ED
call stack - 4 : Module Forms.pas Routine @Forms@TApplication@CreateForm Line 8179 Find error: 00452CEE
call stack - 5 : (no debug info) Find error: 0045A7D1
call stack - 6 : (no debug info) Find error: 778C382F
call stack - 7 : (no debug info) Find error: 779FA9B9
call stack - 8 : (no debug info) Find error: FFFFFFFC

Leak #3 User allocated memory (GetMem)
Size: 16
1 Occurence
call stack - 0 : (no debug info) Find error: 0115C534
call stack - 1 : Module Graphics.pas Routine @Graphics@TCanvas@RequiredState Line 2783 Find error: 00421028

Leak #4 User allocated memory (GetMem)
Size: 16
1 Occurence
call stack - 0 : (no debug info) Find error: 0115C54C
call stack - 1 : Module Forms.pas Routine @Forms@TCustomForm@Create Line 2846 Find error: 004495D3
call stack - 2 : Module Forms.pas Routine @Forms@TApplication@CreateForm Line 8179 Find error: 00452CEE
call stack - 3 : (no debug info) Find error: 0045A7D1
call stack - 4 : (no debug info) Find error: 778C382F
call stack - 5 : (no debug info) Find error: 779FA9B9
call stack - 6 : (no debug info) Find error: FFFFFFFC

Leak #5 User allocated memory (GetMem)
Size: 16
1 Occurence
call stack - 0 : (no debug info) Find error: 0115C564
call stack - 1 : Module Forms.pas Routine @Forms@TCustomForm@Create Line 2846 Find error: 004495D3
call stack - 2 : Module Forms.pas Routine @Forms@TApplication@CreateForm Line 8179 Find error: 00452CEE
call stack - 3 : (no debug info) Find error: 0045A7D1
call stack - 4 : (no debug info) Find error: 778C382F
call stack - 5 : (no debug info) Find error: 779FA9B9
call stack - 6 : (no debug info) Find error: FFFFFFFC

Leak #6 User allocated memory (GetMem)
Size: 16
1 Occurence
call stack - 0 : (no debug info) Find error: 00000DA8
Y-a-t-il une configuration supplémentaire, différente à mettre en place au sein de l'IDE ?

L'unité "MemCheck" doit-elle être adaptée ?

Merci d'avance de votre aide.