Einzelnen Beitrag anzeigen

Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#1

GDI Handles einer Anwendung

  Alt 25. Aug 2015, 15:44
Hallo zusammen,
ich weiß, wie man die Anzahl der GDI Handles einer Anwendung auslesen kann.
Ich habe allerdings folgende Frage.

Ich benutze dieses Tool zum auslesen und Anzeigen der GDI Handles:
http://www.nirsoft.net/utils/gdi_handles.html

Da gibt es eine Spalte, "GDI Total" und "alle GDIs".
GDI Total ist die Aufsummierung der Spalten vorher (Bitmap, Pen usw).
In der Hilfe steht folgender Abschnitt zu den beiden Spalten:

The 'GDI Total' column (a new column added on v1.05) displays the total number of all GDI handles found in the GDI table for the specified process. This means that 'GDI Total' column display the sum of the following columns: Pen, ExtPen, Brush, Bitmap, Font, Palette, Region, DC, Metafile DC, Enhanced Metafile DC, and Other GDI.
The 'All GDI' value is taken from Windows API call (GetGuiResources), and it usually contains a value larger than 'GDI Total', probably because it also counts some internal kernel GDI objects that are not included in the GDI objects table of the process.

Jetzt meine Frage:
Wenn ich mir zum Beispiel bei dem Programm "VMWare Player" die Spalten angucke (ohne das eine VM gestartet ist), dann steht bei "GDI Total = 61" und bei "alle GDIs = 319".

Entsprechend der Hilfe sind die 61 GDI Handles in der GDI Objekt Tabelle registriert. Die anderen 258 (319-61) sind ja nicht registriert, benutzen aber ein GDI Handle.
Wie bekomme ich heraus, wer diese Ressourcen anfordert bzw wie bekomme ich nähere Informationen zu diesen "anderen" Handles heraus?
Das mit VMWare ist nur ein Beispiel. Es geht natürlich darum, eine eigene Anwendung genauer zu beleuchten aber die Zahlen stimmen zumindest und ich würde gerne wissen, wie sich diese Differenz ergibt.

Viele Grüße
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat