Is it possible to find out what happens with leaks of GDI objects

I have an application in Embarcadera RAD Studio 2010 (C ++) . Is it possible to look into it to see that there will be a leak of GDI objects? The structured menu tree skips GDI objects if the text is set to Bold . I assume that the “original” text is created first, and then the instance where it is shown in bold, and the first is “forgotten” and leaked.

EDIT: since leaks are not reported in AQTime, although it is obvoius, looking at the Taskmanager, I traced a piece of code that creates and does not release GDI objects.

...

Msg.WParam=(int)PhysicalListView->Canvas->Handle;
PhysicalListView->Dispatch(&Msg);

... 

PhysicalListView is a pointer to a TListView . As far as I understand, classes starting with T are part of the standard Embarcadero classes (right?).

When I selected node in the list view with children that have no decorated text, everything works fine. But when one or more children have bold or underlined text, for example, the number of GDIs does not decrease after a Dispatch call.

Therefore, I assume this is an error in the TListView class . I do not know if this works with WinForms or if it uses its own solution?

, . , . , TListView.

EDIT2: , . , , WM_PAINT, , . WM_PRINT, . , WM_PAINT, , ... , WM_PAINT?

+3
3

AQTime - . , GDI. RAD Studio XE AQTime. Pro .

+1

A memory validator is a tool we use at work that handles all types of memory leaks, including gdi objects.

+2
source

All Articles