GDI Handles

Graphics Device Interface (GDI) is the graphical programming interface of the operating system MS Windows.

GDI objects support only one handle per object. There is a theoretical limit of 65,536 GDI handles per session. However, the maximum number of GDI handles that can be opened per session is usually lower, since it is affected by available memory.

How many GDI handles and GDI objects a specific process consumes, is displayed in the "Processes" tab of the Task Manager. How many GDI handles are consumed on the system overall, is displayed in the "Performance" tab.

In order to adjust the limit of GDI handles, follow the instructions under https://docs.microsoft.com/en-us/windows/win32/sysinfo/gdi-objects.

Generally, a defined number of GDI objects is allocated to each WinCC OA graphics object. This number remains constant. In case of some complex WinCC OA graphic objects this number is increased each time the graphic object is opened. Unfortunately, there is no way to determine how many GDI objects are needed exactly per WinCC OA graphic object.

WinCC OA graphic object Additional consumption of GDI objects
Line 0
Rectangle 0
Ellipse 0
Arc 0
Polygon 0
Pipe 0
Primitive text 0
Frame 0
Button 0
Cascade Does not consume GDI objects for display. Clicking on the cascade menu button 8 GDI objects are consumed. When you open a submenu of the cascade in addition 8 GDI objects are consumed. Once the GDI objects were consumed by a cascade, no new ones are added.
Text field 0
TextEdit Consumes 1 GDI object for display.
Radiobox 0
Checkbox 0
Table Consumes 1 GDI object for display.
Selection list Consumes 1 GDI object for display.
Spin button 0
Combobox Does not consume GDI objects for display. Once a combobox was opened, 10 new GDI objects are added.
Tab

If only one register and no panel has been defined for this tab, no GDI objects are consumed.

As soon as at least one register was enhanced by a panel, three GDI objects are consumed. For each additional tab with defined panel an additional GDI object is added, after the tab was opened the first time.

Embedded module If an embedded module does not have a root panel, only one GDI object is consumed. If it has a root panel, two GDI objects are consumed.
Trend Consumes 29 GDI objects (due to ruler windows, legend, tooltips, etc.) for display.
Bar trend Consumes 1 GDI object for display.
Clock 0
Slider 0
Thumb wheel 0
Progress bar 0
LCD Number 0
DpTreeView Consumes 1 GDI object for display.
DpTypeView Consumes 1 GDI object for display.
Tree widget Consumes 1 GDI object for display.
Zoom Navigator The zoom navigator consumes only one GDI object. The zooming of a module leads to a continuing increase of GDI object consumption (e.g. more than 130 GDI objects for zooming the WinCC OA system management).
ScriptEdit Consumes 1 GDI object for display.
Calendar Consumes 1 GDI object for display.