Il TTaskbar di Embarcadero ha una perdita di memoria. Poiché ho abbandonato questo controllo sul mio modulo, FastMM segnala una perdita ogni volta che chiudo l'app.Perdita di memoria TTaskBar
ho cercato di disattivare FastMM con questo codice:
procedure TMainForm.FormCreate(Sender: TObject);
begin
fastmm4.RegisterExpectedMemoryLeak(Taskbar);
end;
ma non funzionerà. Come registrare questa perdita?
un blocco di memoria è trapelato. La dimensione è: 100
Questo blocco è stato assegnato dal filo 0xC64, e la traccia dello stack (ritorno indirizzi) al momento era: 406A52 409A7B 409CAC 4283A0
[System.SysUtils] [Sistema] [System.SysUtils .FmtStr] 409CC6 40D775 7628A65F
[funzione sconosciuta a StretchDIBits] 7731594E
[funzione sconosciuta a RtlpNtMakeTemporaryKey] 7731594E
[funzione sconosciuta a RtlpNtMakeTemporaryKey] 773168F8
[funzione sconosciuta a RtlpNtMakeTemporaryKey] 773168DC
[funzione sconosciuta a RtlpNtMakeTemporaryKey]Il blocco è attualmente utilizzato per un oggetto di classe: UnicodeString
Il numero di allocazione è: 2209Un blocco di memoria è stata soffiata. La dimensione è: 36
Questo blocco è stato assegnato dal filo 0xC64, e la traccia dello stack (ritorno indirizzi) al momento era: 406A52 407D43 40846A 42CD40
[System.SysUtils] [Sistema] [System.SysUtils. Exception.CreateFmt] 5DEDD7
[System.Win.TaskbarCore] [System.Win] [System.Win.TaskbarCore.TTaskbarBase.UpdateTab] 610F00
[Vcl.Taskbar] [Vcl] [Vcl.Taskbar.CheckMDI] 5DF39F
[System.Win.TaskbarCore] [System.Win] [System.Win.TaskbarCore.TTaskbarBase.ApplyTabsChanges] 610DB8
[Vcl.Taskbar] [Vcl] [Vcl.Taskb ar.TCustomTaskbar.Initialize] 5EB044
[Vcl.Forms] [Vcl] [Vcl.Forms.TApplication.Run] 62573A
[MinimalTemplate.dpr] [MinimalTemplate] [MinimalTemplate.MinimalTemplate] [26]Il blocco è attualmente utilizzato per un oggetto di classe: ETaskbarException
Il numero di allocazione è: 2207Questa applicazione ha perso memoria. Le perdite piccolo blocco sono (escludendo perdite attesi registrate dal puntatore):
21 - 36 bytes: ETaskbarException x 1
85 - 100 byte: UnicodeString x 1
[Vcl.Forms] [Vcl] [Vcl.Forms .TCustomForm.SetVisible] 5F5010
non riesco a riprodurre qui. OK ora posso vedere dove è la perdita. È in 'TTaskbarBase.UpdateTab'. È anche un po 'scioccante! –
Non penso che sarà facile affrontarlo. Risolvere il problema è probabilmente la strada da seguire. Non posso più fare a meno di una riproduzione. Tuttavia, è necessario inviare una segnalazione di bug a emba. Creare un'eccezione ma non riuscire a risolverlo? !!! –
Progetto di replica qui: http://www.filedropper.com/repro_1 – Ampere