Difference between revisions of "Techwiki:Win32k/BASEOBJECT"
DangerGround (talk | contribs) m (Techwiki/win32k/BASEOBJECT moved to Techwiki:Win32k/BASEOBJECT) |
|||
Line 9: | Line 9: | ||
/* 08 */ USHORT cExclusiveLock; | /* 08 */ USHORT cExclusiveLock; | ||
/* 0a */ USHORT BaseFlags; | /* 0a */ USHORT BaseFlags; | ||
− | /* 0c */ [[techwiki | + | /* 0c */ [[techwiki:win32k/W32THREAD|PW32THREAD]] Tid; |
} BASEOBJECT, *POBJ; | } BASEOBJECT, *POBJ; | ||
Revision as of 22:16, 8 November 2009
The GDI Base Object, which is a header at the top of every GDI Object. The structure is called BASEOBJECT and is defined as follows for Windows XP, Windows 2003 and Vista, same for 64 Bit Versions:
typedef struct _BASEOBJECT { /* 00 */ HANDLE hHmgr; /* 04 */ ULONG ulShareCount; /* 08 */ USHORT cExclusiveLock; /* 0a */ USHORT BaseFlags; /* 0c */ PW32THREAD Tid; } BASEOBJECT, *POBJ;
typedef struct _BASEOBJECT DD_BASEOBJECT, *PDD_BASEOBJECT; (correct?)
The pointer to a _BASEOBJECT is known as a POBJ.
BaseFlags
- 0x800 for objects that are allocated from a lookaside list (DC, region, bitmap, palette, font and brush)