Compartir a través de


Objetos de GDI

Los objetos GDI solo admiten un identificador por objeto. Los identificadores de los objetos GDI son privados para un proceso. Es decir, solo el proceso que creó el objeto GDI puede usar el identificador de objeto.

Hay un límite teórico de 65.536 identificadores GDI por sesión. Sin embargo, el número máximo de identificadores GDI que se pueden abrir por sesión suele ser inferior, ya que se ve afectado por la memoria disponible.

Windows 2000: Hay un límite de 16 384 identificadores GDI por sesión.

También hay un límite predeterminado por proceso de identificadores GDI. Para cambiar este límite, establezca el siguiente valor del Registro:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\Currentversion\Windows\GDIProcessHandleQuota

Este valor se puede establecer en un número comprendido entre 256 y 65 536.

Windows 2000: Este valor se puede establecer en un número comprendido entre 256 y 16.384.

Administración de objetos GDI

En la tabla siguiente se enumeran los objetos GDI, junto con las funciones creador y destructor de cada objeto. Las funciones de creador crean el objeto y un identificador de objeto o simplemente devuelven el identificador de objeto existente. Las funciones de destructor quitan el objeto de la memoria, que invalida el identificador de objeto.

GDI (objeto) Función Creator Función Destroyer
Bitmap CreateBitmap, CreateBitmapIndirect, CreateCompatibleBitmap, CreateDIBitmap, CreateDIBSection, CreateDiscardableBitmap DeleteObject
Pincel CreateBrushIndirect, CreateDIBPatternBrush, CreateDIBPatternBrushPt, CreateHatchBrush, CreatePatternBrush, CreateSolidBrush DeleteObject
DC CreateDC DeleteDC, ReleaseDC
Metarchivo mejorado CreateEnhMetaFile DeleteEnhMetaFile
DC de metarchivo mejorado CreateEnhMetaFile CloseEnhMetaFile
Fuente CreateFont, CreateFontIndirect DeleteObject
Controlador de dominio de memoria CreateCompatibleDC DeleteDC
Metarchivo de CreateMetaFile DeleteMetaFile
Metafile DC CreateMetaFile CloseMetaFile
Paleta CreatePalette DeleteObject
Lápiz y lápiz extendido CreatePen, CreatePenIndirect, ExtCreatePen DeleteObject
Region CombineRgn, CreateEllipticRgn, CreateEllipticRgnIndirect, CreatePolygonRgn, CreatePolyPolygonRgn, CreateRectRgn, CreateRectRgnIndirect, CreateRoundRectRgn, ExtCreateRegion, PathToRegion DeleteObject