PowerBuilder application crashes when its GDI Objects or User Objects exceed the limit

Symptom

When a PowerBuilder application is complex and contains a lot of windows and controls, and if the number of its GDI Objects or User Objects is getting close to 10000, the PowerBuilder application will crash easily.

Environment

PowerBuilder

Cause

This is a Windows OS’s default feature. When the number of the GDI Objects or User Objects value exceeds the default 10000, the Windows application will crash.

Solution

You can modify the Registry to increase the limit for GDI Objects and User Objects to solve this problem. The following Windows registry key values are 10000 by default. We suggest that you change them to 18000 and then verify if the problem is solved.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\GDIProcessHandleQuota
 
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\USERProcessHandleQuota
 
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Windows\GDIProcessHandleQuota
 
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Windows\USERProcessHandleQuota


For more information about GDI Objects and User Objects, please refer to:

https://learn.microsoft.com/en-us/windows/win32/sysinfo/gdi-objects

https://learn.microsoft.com/en-us/windows/win32/sysinfo/user-objects