THREADINFO Compatibility Flags

The THREADINFO, CLIENTINFO and, in version 4.0, the PROCESSINFO structures share a set of bit flags as their dwCompatFlags member. Type information in symbol files for WIN32K.SYS in Windows 7 (only) enumerates the defined flags as UINT bit fields for their appearance in the THREADINFO.

It seems unlikely that I shall ever attempt an enumeration of which flags are defined in which versions, but you never know.

Mask Definition Versions
0x00000001
UINT IgnoreNoDiscard : 1;
 
0x00000002
UINT ForceTextBand : 1;
 
0x00000004
UINT UsePrintingEscape : 1;
 
0x00000008
UINT IgnoreTopMost : 1;
 
0x00000010
UINT CallTTDevice : 1;
 
0x00000020
UINT MultipleBands : 1;
 
0x00000040
UINT AlwaysSendSyncPaint : 1;
 
0x00000080
UINT EditSetTextMunge : 1;
 
0x00000100
UINT MoreExtraWndWords : 1;
 
0x00000200
UINT TTIgnoreRasterDupe : 1;
 
0x00000400
UINT HackWinFlags : 1;
 
0x00000800
UINT DealyHwndShakeChk : 1;
 
0x00001000
UINT EnumHelv : 1;
 
0x00002000
UINT EnumTTNotDevice : 1;
 
0x00004000
UINT SubtractClips : 1;
 
0x00008000
UINT ForceTTGrapchis : 1;
 
0x00010000
UINT NoHRGN1 : 1;
 
0x00020000
UINT NcCalcSizeOnMove : 1;
 
0x00040000
UINT SendMnuDblClk : 1;
 
0x00080000
UINT Win30AvgWidth : 1;
 
0x00100000
UINT GetDeviceCaps : 1;
 
0x00200000
UINT Winver31 : 1;
 
0x00400000
UINT IncreaseStack : 1;
 
0x00800000
UINT Win31DevModeSize : 1;
 
0x01000000
UINT DisableFontAssoc : 1;
 
0x02000000
UINT IgnoreFaults : 1;
 
0x04000000
UINT NoEMFSpooling : 1;
 
0x08000000
UINT Random31Ux : 1;
 
0x10000000
UINT DontJournalAttach : 1;
 
0x20000000
UINT DisableDBCSProp : 1;
 
0x40000000
UINT SmoothScrolling : 1;
 
0x80000000
UINT NoScrollBarCtxMenu : 1;
 

The misspelling DealyHwndShakeChk is Microsoft’s.