extern "C" {
#endif
+#ifdef _MSC_VER
+#pragma warning(push)
+#pragma warning(disable:4201)
+#pragma warning(disable:4820)
+#endif
+
#if !defined(_USER32_)
#define WINUSERAPI DECLSPEC_IMPORT
#else
#define BROADCAST_QUERY_DENY 1112363332
#define ENUM_CURRENT_SETTINGS ((DWORD)-1)
#define ENUM_REGISTRY_SETTINGS ((DWORD)-2)
-#define DM_BITSPERPEL 0x40000
-#define DM_PELSWIDTH 0x80000
-#define DM_PELSHEIGHT 0x100000
-#define DM_DISPLAYFLAGS 0x200000
-#define DM_DISPLAYFREQUENCY 0x400000
#define CDS_UPDATEREGISTRY 1
#define CDS_TEST 2
#define CDS_FULLSCREEN 4
#define ES_LOWERCASE 16
#define ES_MULTILINE 4
#define ES_NOHIDESEL 256
+#ifdef _WINE
+#define ES_COMBO 0x200 /* Undocumented. Parent is a combobox */
+#endif
#define ES_NUMBER 0x2000
#define ES_OEMCONVERT 0x400
#define ES_PASSWORD 32
#define WS_EX_COMPOSITED 0x2000000 /* XP */
#define WS_EX_CONTEXTHELP 0x400
#define WS_EX_CONTROLPARENT 0x10000
+#define WS_EX_DRAGDETECT 0x00000002L
#define WS_EX_DLGMODALFRAME 1
#define WS_EX_LAYERED 0x80000 /* w2k */
#define WS_EX_LAYOUTRTL 0x400000 /* w98, w2k */
#define DSS_NORMAL 0
#define DSS_UNION 16
#define DSS_DISABLED 32
+#define DSS_DEFAULT 64
#define DSS_MONO 128
#define DSS_HIDEPREFIX 0x0200
#define DSS_PREFIXONLY 0x0400
#define RT_RCDATA MAKEINTRESOURCE(10)
#define RT_MESSAGETABLE MAKEINTRESOURCE(11)
#define DIFFERENCE 11
-#define RT_GROUP_CURSOR MAKEINTRESOURCE((DWORD)RT_CURSOR+DIFFERENCE)
-#define RT_GROUP_ICON MAKEINTRESOURCE((DWORD)RT_ICON+DIFFERENCE)
+#define RT_GROUP_CURSOR MAKEINTRESOURCE((ULONG_PTR)RT_CURSOR+DIFFERENCE)
+#define RT_GROUP_ICON MAKEINTRESOURCE((ULONG_PTR)RT_ICON+DIFFERENCE)
#define RT_VERSION MAKEINTRESOURCE(16)
#define RT_DLGINCLUDE MAKEINTRESOURCE(17)
#define RT_PLUGPLAY MAKEINTRESOURCE(19)
#endif
#define QS_SENDMESSAGE 64
#define QS_TIMER 16
+/* Extra (undocumented) queue wake bits - see "Undoc. Windows" */
+#define QS_SMRESULT 0x8000
#define USER_TIMER_MAXIMUM 2147483647
#define USER_TIMER_MINIMUM 10
#define MWMO_WAITALL 1
#define MWMO_ALERTABLE 2
#define MWMO_INPUTAVAILABLE 4
-#define COLOR_3DDKSHADOW 21
-#define COLOR_3DFACE 15
-#define COLOR_3DHILIGHT 20
-#define COLOR_3DHIGHLIGHT 20
-#define COLOR_3DLIGHT 22
-#define COLOR_BTNHILIGHT 20
-#define COLOR_3DSHADOW 16
-#define COLOR_ACTIVEBORDER 10
+
+#define COLOR_SCROLLBAR 0
+#define COLOR_BACKGROUND 1
+#define COLOR_DESKTOP COLOR_BACKGROUND
#define COLOR_ACTIVECAPTION 2
+#define COLOR_INACTIVECAPTION 3
+#define COLOR_MENU 4
+#define COLOR_WINDOW 5
+#define COLOR_WINDOWFRAME 6
+#define COLOR_MENUTEXT 7
+#define COLOR_WINDOWTEXT 8
+#define COLOR_CAPTIONTEXT 9
+#define COLOR_ACTIVEBORDER 10
+#define COLOR_INACTIVEBORDER 11
#define COLOR_APPWORKSPACE 12
-#define COLOR_BACKGROUND 1
-#define COLOR_DESKTOP 1
+#define COLOR_HIGHLIGHT 13
+#define COLOR_HIGHLIGHTTEXT 14
#define COLOR_BTNFACE 15
-#define COLOR_BTNHIGHLIGHT 20
+#define COLOR_3DFACE COLOR_BTNFACE
#define COLOR_BTNSHADOW 16
-#define COLOR_BTNTEXT 18
-#define COLOR_CAPTIONTEXT 9
+#define COLOR_3DSHADOW COLOR_BTNSHADOW
#define COLOR_GRAYTEXT 17
-#define COLOR_HIGHLIGHT 13
-#define COLOR_HIGHLIGHTTEXT 14
-#define COLOR_INACTIVEBORDER 11
-#define COLOR_INACTIVECAPTION 3
+#define COLOR_BTNTEXT 18
#define COLOR_INACTIVECAPTIONTEXT 19
-#define COLOR_INFOBK 24
+#define COLOR_BTNHIGHLIGHT 20
+#define COLOR_3DHIGHLIGHT COLOR_BTNHIGHLIGHT
+#define COLOR_3DHILIGHT COLOR_BTNHIGHLIGHT
+#define COLOR_BTNHILIGHT COLOR_BTNHIGHLIGHT
+#define COLOR_3DDKSHADOW 21
+#define COLOR_3DLIGHT 22
#define COLOR_INFOTEXT 23
-#define COLOR_MENU 4
-#define COLOR_MENUTEXT 7
-#define COLOR_SCROLLBAR 0
-#define COLOR_WINDOW 5
-#define COLOR_WINDOWFRAME 6
-#define COLOR_WINDOWTEXT 8
+#define COLOR_INFOBK 24
#define COLOR_HOTLIGHT 26
#define COLOR_GRADIENTACTIVECAPTION 27
#define COLOR_GRADIENTINACTIVECAPTION 28
#define COLOR_MENUHILIGHT 29
#define COLOR_MENUBAR 30
#endif
+
#define CTLCOLOR_MSGBOX 0
#define CTLCOLOR_EDIT 1
#define CTLCOLOR_LISTBOX 2
#define MSGF_NEXTWINDOW 6
#define MSGF_MAINLOOP 8
#define MSGF_USER 4096
+#define MSGF_MAX 8
#define MOUSEEVENTF_MOVE 1
#define MOUSEEVENTF_LEFTDOWN 2
#define MOUSEEVENTF_LEFTUP 4
#define MOUSEEVENTF_RIGHTUP 16
#define MOUSEEVENTF_MIDDLEDOWN 32
#define MOUSEEVENTF_MIDDLEUP 64
+#define MOUSEEVENTF_XDOWN 128
+#define MOUSEEVENTF_XUP 256
#define MOUSEEVENTF_WHEEL 0x0800
#define MOUSEEVENTF_ABSOLUTE 32768
#define PM_NOREMOVE 0
#define SWP_NOSENDCHANGING 1024
#define SWP_DEFERERASE 8192
#define SWP_ASYNCWINDOWPOS 16384
+/* undocumented SWP flags - from SDK 3.1 */
+#define SWP_NOCLIENTSIZE 0x0800
+#define SWP_NOCLIENTMOVE 0x1000
+#define SWP_STATECHANGED 0x8000
#define HSHELL_WINDOWCREATED 1
#define HSHELL_WINDOWDESTROYED 2
#define SPI_SETICONTITLELOGFONT 0x0022
#define SPI_GETFASTTASKSWITCH 0x0023
#define SPI_SETFASTTASKSWITCH 0x0024
+#if(WINVER >= 0x0400)
+ #define SPI_SETDRAGFULLWINDOWS 0x0025
+ #define SPI_GETDRAGFULLWINDOWS 0x0026
+ #define SPI_GETNONCLIENTMETRICS 0x0029
+ #define SPI_SETNONCLIENTMETRICS 0x002A
+ #define SPI_GETMINIMIZEDMETRICS 0x002B
+ #define SPI_SETMINIMIZEDMETRICS 0x002C
+ #define SPI_GETICONMETRICS 0x002D
+ #define SPI_SETICONMETRICS 0x002E
+ #define SPI_SETWORKAREA 0x002F
+ #define SPI_GETWORKAREA 0x0030
+ #define SPI_SETPENWINDOWS 0x0031
+#endif
#define SPI_GETFILTERKEYS 0x0032
#define SPI_SETFILTERKEYS 0x0033
#define SPI_GETTOGGLEKEYS 0x0034
#define SPI_SETSTICKYKEYS 0x003B
#define SPI_GETACCESSTIMEOUT 0x003C
#define SPI_SETACCESSTIMEOUT 0x003D
+#if(WINVER >= 0x0400)
+ #define SPI_GETSERIALKEYS 0x003E
+ #define SPI_SETSERIALKEYS 0x003F
+#endif
#define SPI_GETSOUNDSENTRY 0x0040
#define SPI_SETSOUNDSENTRY 0x0041
-
#if(WINVER >= 0x0400)
- #define SPI_SETDRAGFULLWINDOWS 0x0025
- #define SPI_GETDRAGFULLWINDOWS 0x0026
- #define SPI_GETNONCLIENTMETRICS 0x0029
- #define SPI_SETNONCLIENTMETRICS 0x002A
- #define SPI_GETMINIMIZEDMETRICS 0x002B
- #define SPI_SETMINIMIZEDMETRICS 0x002C
- #define SPI_GETICONMETRICS 0x002D
- #define SPI_SETICONMETRICS 0x002E
- #define SPI_SETWORKAREA 0x002F
- #define SPI_GETWORKAREA 0x0030
- #define SPI_SETPENWINDOWS 0x0031
#define SPI_GETHIGHCONTRAST 0x0042
#define SPI_SETHIGHCONTRAST 0x0043
#define SPI_GETKEYBOARDPREF 0x0044
#define SPI_GETWINDOWSEXTENSION 0x005C
#define SPI_SETMOUSETRAILS 0x005D
#define SPI_GETMOUSETRAILS 0x005E
- #define SPI_SCREENSAVERRUNNING 0x0061
- #define SPI_SETSCREENSAVERRUNNING SPI_SCREENSAVERRUNNING
- #define SPI_GETSERIALKEYS 0x003E
- #define SPI_SETSERIALKEYS 0x003F
#endif
-
#if(_WIN32_WINNT >= 0x0400)
#define SPI_GETSNAPTODEFBUTTON 0x005F
#define SPI_SETSNAPTODEFBUTTON 0x0060
#endif
-
+#if(WINVER >= 0x0400)
+ #define SPI_SCREENSAVERRUNNING 0x0061
+ #define SPI_SETSCREENSAVERRUNNING SPI_SCREENSAVERRUNNING
+#endif
#if (_WIN32_WINNT >= 0x0400) || (_WIN32_WINDOWS > 0x0400)
#define SPI_GETMOUSEHOVERWIDTH 0x0062
#define SPI_SETMOUSEHOVERWIDTH 0x0063
#define SPI_SETWHEELSCROLLLINES 0x0069
#define SPI_GETMENUSHOWDELAY 0x006A
#define SPI_SETMENUSHOWDELAY 0x006B
+ #if (_WIN32_WINNT >= 0x0600)
+ #define SPI_GETWHEELSCROLLCHARS 0x006C
+ #define SPI_SETWHEELSCROLLCHARS 0x006D
+ #endif
#define SPI_GETSHOWIMEUI 0x006E
#define SPI_SETSHOWIMEUI 0x006F
- /* Correct ? */
- #define SPI_GETWHEELSCROLLCHARS 0x006C
#endif
-
#if(WINVER >= 0x0500)
#define SPI_GETMOUSESPEED 0x0070
#define SPI_SETMOUSESPEED 0x0071
#define SPI_GETSCREENSAVERRUNNING 0x0072
#define SPI_GETDESKWALLPAPER 0x0073
#endif
-
+#if(WINVER >= 0x0600)
+ #define SPI_GETAUDIODESCRIPTION 0x0074
+ #define SPI_SETAUDIODESCRIPTION 0x0075
+ #define SPI_GETSCREENSAVESECURE 0x0076
+ #define SPI_SETSCREENSAVESECURE 0x0077
+#endif
#if(WINVER >= 0x0500)
#define SPI_GETACTIVEWINDOWTRACKING 0x1000
#define SPI_SETACTIVEWINDOWTRACKING 0x1001
#define SPI_SETTOOLTIPFADE 0x1019
#define SPI_GETCURSORSHADOW 0x101A
#define SPI_SETCURSORSHADOW 0x101B
- #define SPI_GETUIEFFECTS 0x103E
- #define SPI_SETUIEFFECTS 0x103F
- #define SPI_GETFOREGROUNDLOCKTIMEOUT 0x2000
- #define SPI_SETFOREGROUNDLOCKTIMEOUT 0x2001
- #define SPI_GETACTIVEWNDTRKTIMEOUT 0x2002
- #define SPI_SETACTIVEWNDTRKTIMEOUT 0x2003
- #define SPI_GETFOREGROUNDFLASHCOUNT 0x2004
- #define SPI_SETFOREGROUNDFLASHCOUNT 0x2005
- #define SPI_GETCARETWIDTH 0x2006
- #define SPI_SETCARETWIDTH 0x2007
-
#if(_WIN32_WINNT >= 0x0501)
#define SPI_GETMOUSESONAR 0x101C
#define SPI_SETMOUSESONAR 0x101D
#define SPI_GETBLOCKSENDINPUTRESETS 0x1026
#define SPI_SETBLOCKSENDINPUTRESETS 0x1027
#endif
-
+ #define SPI_GETUIEFFECTS 0x103E
+ #define SPI_SETUIEFFECTS 0x103F
+ #if(_WIN32_WINNT >= 0x0600)
+ #define SPI_GETDISABLEOVERLAPPEDCONTENT 0x1040
+ #define SPI_SETDISABLEOVERLAPPEDCONTENT 0x1041
+ #define SPI_GETCLIENTAREAANIMATION 0x1042
+ #define SPI_SETCLIENTAREAANIMATION 0x1043
+ #define SPI_GETCLEARTYPE 0x1048
+ #define SPI_SETCLEARTYPE 0x1049
+ #define SPI_GETSPEECHRECOGNITION 0x104A
+ #define SPI_SETSPEECHRECOGNITION 0x104B
+ #endif
+ #define SPI_GETFOREGROUNDLOCKTIMEOUT 0x2000
+ #define SPI_SETFOREGROUNDLOCKTIMEOUT 0x2001
+ #define SPI_GETACTIVEWNDTRKTIMEOUT 0x2002
+ #define SPI_SETACTIVEWNDTRKTIMEOUT 0x2003
+ #define SPI_GETFOREGROUNDFLASHCOUNT 0x2004
+ #define SPI_SETFOREGROUNDFLASHCOUNT 0x2005
+ #define SPI_GETCARETWIDTH 0x2006
+ #define SPI_SETCARETWIDTH 0x2007
#if(_WIN32_WINNT >= 0x0501)
#define SPI_GETMOUSECLICKLOCKTIME 0x2008
#define SPI_SETMOUSECLICKLOCKTIME 0x2009
#define SPI_GETFONTSMOOTHINGTYPE 0x200A
#define SPI_SETFONTSMOOTHINGTYPE 0x200B
-
#define SPI_GETFONTSMOOTHINGCONTRAST 0x200C
#define SPI_SETFONTSMOOTHINGCONTRAST 0x200D
#define SPI_GETFOCUSBORDERWIDTH 0x200E
#define WM_ACTIVATE 6
#define WM_SETFOCUS 7
#define WM_KILLFOCUS 8
+#ifdef _WINE
+#define WM_SETVISIBLE 9
+#endif
#define WM_ENABLE 10
#define WM_SETREDRAW 11
#define WM_SETTEXT 12
#define WM_GETFONT 49
#define WM_SETHOTKEY 50
#define WM_GETHOTKEY 51
+#define WM_ISACTIVEICON 53
+#define WM_QUERYPARKICON 54
#define WM_QUERYDRAGICON 55
#define WM_COMPAREITEM 57
+#if (WINVER >= 0x0500)
+#define WM_GETOBJECT 61
+#endif /* (WINVER >= 0x0500) */
#define WM_COMPACTING 65
#define WM_COMMNOTIFY 68 /* obsolete */
#define WM_WINDOWPOSCHANGING 70
#define WM_NCXBUTTONDBLCLK 173
#endif /* (_WIN32_WINNT >= 0x0500) */
+#define WM_KEYF1 0x004d
#define WM_KEYFIRST 256
#define WM_KEYDOWN 256
#define WM_KEYUP 257
#define WM_VSCROLL 277
#define WM_INITMENU 278
#define WM_INITMENUPOPUP 279
+#define WM_SYSTIMER 280
#define WM_MENUSELECT 287
#define WM_MENUCHAR 288
#define WM_ENTERIDLE 289
#endif /* _WIN32_WCE */
#endif /* (WINVER >= 0x0500) */
+/* D&D messages */
+#define WM_DROPOBJECT 0x022A
+#define WM_QUERYDROPOBJECT 0x022B
+#define WM_BEGINDRAG 0x022C
+#define WM_DRAGLOOP 0x022D
+#define WM_DRAGSELECT 0x022E
+#define WM_DRAGMOVE 0x022F
+
+#define WM_CTLCOLOR 25
#define WM_CTLCOLORMSGBOX 306
#define WM_CTLCOLOREDIT 307
#define WM_CTLCOLORLISTBOX 308
#define WM_CTLCOLORDLG 310
#define WM_CTLCOLORSCROLLBAR 311
#define WM_CTLCOLORSTATIC 312
+#define MN_GETHMENU 481
#define WM_MOUSEFIRST 512
#define WM_MOUSEMOVE 512
+#define WM_LBTRACKPOINT 0x0131
#define WM_LBUTTONDOWN 513
#define WM_LBUTTONUP 514
#define WM_LBUTTONDBLCLK 515
#define WM_HOTKEY 786
#define WM_PRINT 791
#define WM_PRINTCLIENT 792
+#define WM_APPCOMMAND 793
+
+#define WM_DWMCOMPOSITIONCHANGED 0x031E
+#define WM_DWMNCRENDERINGCHANGED 0x031F
+#define WM_DWMCOLORIZATIONCOLORCHANGED 0x0320
+#define WM_DWMWINDOWMAXIMIZEDCHANGE 0x0321
+
#define WM_HANDHELDFIRST 856
#define WM_HANDHELDLAST 863
#define WM_AFXFIRST 864
#define WM_PENWINLAST 911
#define WM_USER 1024
#define WM_APP 32768
+#define WM_GETTITLEBARINFOEX 0x033F
+#define XBUTTON1 0x0001
+#define XBUTTON2 0x0002
#if (_WIN32_WINNT >= 0x0400)
#define WHEEL_DELTA 120
#define CB_SETLOCALE 345
#define CB_SETTOPINDEX 348
#define CB_SHOWDROPDOWN 335
+#define CB_MSGMAX 357
#define CBN_CLOSEUP 8
#define CBN_DBLCLK 2
#define CBN_DROPDOWN 7
#define EN_VSCROLL 1538
#define LB_ADDFILE 406
#define LB_ADDSTRING 384
+#ifdef _WINE
+#define LB_CARETON 419
+#define LB_CARETOFF 420
+#endif
#define LB_DELETESTRING 386
#define LB_DIR 397
#define LB_FINDSTRING 399
#define SBM_ENABLE_ARROWS 228
#define SBM_GETPOS 225
#define SBM_GETRANGE 227
-#define SBM_GETSCROLLINFO 234
#define SBM_SETPOS 224
#define SBM_SETRANGE 226
#define SBM_SETRANGEREDRAW 230
+#if (_WIN32_WINNT >= 0x0400)
+#define SBM_GETSCROLLINFO 234
#define SBM_SETSCROLLINFO 233
+#endif
+#if (_WIN32_WINNT >= 0x0501)
+#define SBM_GETSCROLLBARINFO 235
+#endif
#define STM_GETICON 369
#define STM_GETIMAGE 371
#define STM_SETICON 368
#define DCX_INTERSECTRGN 128
#define DCX_VALIDATE 0x200000
#define DCX_EXCLUDEUPDATE 0x100
+#ifdef _WINE
+#define DCX_USESTYLE 0x10000
+#endif
#define GMDI_GOINTOPOPUPS 2
#define GMDI_USEDISABLED 1
#define FKF_AVAILABLE 2
#define VK_F24 0x87
#define VK_NUMLOCK 0x90
#define VK_SCROLL 0x91
+#define VK_OEM_NEC_EQUAL 0x92
#define VK_LSHIFT 0xA0
#define VK_RSHIFT 0xA1
#define VK_LCONTROL 0xA2
#if (_WIN32_WINNT >= 0x0500)
#define VK_OEM_102 0xE2
#endif
+#define VK_ICO_HELP 0xE3 /* Help key on ICO */
+#define VK_ICO_00 0xE4 /* 00 key on ICO */
#define VK_PROCESSKEY 0xE5
#if (_WIN32_WINNT >= 0x0500)
#define VK_PACKET 0xE7
#define ODS_DISABLED 4
#define ODS_CHECKED 8
#define ODS_FOCUS 16
+#if(WINVER >= 0x0400)
#define ODS_DEFAULT 32
#define ODS_COMBOBOXEDIT 4096
+#endif
+#if(WINVER >= 0x0500)
+#define ODS_HOTLIGHT 0x0040
+#define ODS_INACTIVE 0x0080
+#if(_WIN32_WINNT >= 0x0500)
+#define ODS_NOACCEL 0x0100
+#define ODS_NOFOCUSRECT 0x0200
+#endif
+#endif
#define IDHOT_SNAPWINDOW (-1)
#define IDHOT_SNAPDESKTOP (-2)
#define DBWF_LPARAMPOINTER 0x8000
#endif /* (WINVER >= 0x0500) */
#define CURSOR_SHOWING 0x00000001
#define WS_ACTIVECAPTION 0x00000001
-#if (_WIN32_WINNT >= 0x0403)
-#define INPUT_MOUSE 0x00000000
-#define INPUT_KEYBOARD 0x00000001
-#define INPUT_HARDWARE 0x00000002
-#endif /* (_WIN32_WINNT >= 0x0403) */
+#if (_WIN32_WINNT >= 0x0400)
+#define INPUT_MOUSE 0
+#define INPUT_KEYBOARD 1
+#define INPUT_HARDWARE 2
+#endif /* (_WIN32_WINNT >= 0x0400) */
#if (WINVER >= 0x0400)
#define ENDSESSION_LOGOFF 0x80000000
+#define ENDSESSION_CRITICAL 0x40000000
+#define ENDSESSION_CLOSEAPP 0x00000001
#endif
#if (WINVER >= 0x0500)
#define CHILDID_SELF 0
DECLARE_HANDLE(HHOOK);
DECLARE_HANDLE(HDWP);
DECLARE_HANDLE(HDEVNOTIFY);
+typedef HDEVNOTIFY *PHDEVNOTIFY;
+
typedef struct tagACCEL {
BYTE fVirt;
WORD key;
WORD cmd;
} ACCEL,*LPACCEL;
+
typedef struct tagACCESSTIMEOUT {
UINT cbSize;
DWORD dwFlags;
DWORD iTimeOutMSec;
} ACCESSTIMEOUT, *LPACCESSTIMEOUT;
+
typedef struct tagANIMATIONINFO {
UINT cbSize;
int iMinAnimate;
} ANIMATIONINFO,*LPANIMATIONINFO;
+
typedef struct tagCREATESTRUCTA {
LPVOID lpCreateParams;
HINSTANCE hInstance;
LPCSTR lpszClass;
DWORD dwExStyle;
} CREATESTRUCTA,*LPCREATESTRUCTA;
+
typedef struct tagCREATESTRUCTW {
LPVOID lpCreateParams;
HINSTANCE hInstance;
LPCWSTR lpszClass;
DWORD dwExStyle;
} CREATESTRUCTW,*LPCREATESTRUCTW;
+
typedef struct tagCBT_CREATEWNDA {
LPCREATESTRUCTA lpcs;
HWND hwndInsertAfter;
} CBT_CREATEWNDA, *LPCBT_CREATEWNDA;
+
typedef struct tagCBT_CREATEWNDW {
LPCREATESTRUCTW lpcs;
HWND hwndInsertAfter;
} CBT_CREATEWNDW, *LPCBT_CREATEWNDW;
+
typedef struct tagCBTACTIVATESTRUCT {
BOOL fMouse;
HWND hWndActive;
} CBTACTIVATESTRUCT,*LPCBTACTIVATESTRUCT;
+
typedef struct tagCLIENTCREATESTRUCT {
HANDLE hWindowMenu;
UINT idFirstChild;
} CLIENTCREATESTRUCT,*LPCLIENTCREATESTRUCT;
+
typedef struct tagCOMPAREITEMSTRUCT {
UINT CtlType;
UINT CtlID;
HWND hwndItem;
UINT itemID1;
- DWORD itemData1;
+ ULONG_PTR itemData1;
UINT itemID2;
- DWORD itemData2;
+ ULONG_PTR itemData2;
DWORD dwLocaleId;
-} COMPAREITEMSTRUCT,*LPCOMPAREITEMSTRUCT;
+} COMPAREITEMSTRUCT, *PCOMPAREITEMSTRUCT,*LPCOMPAREITEMSTRUCT;
+
typedef struct tagCOPYDATASTRUCT {
- DWORD dwData;
+ ULONG_PTR dwData;
DWORD cbData;
PVOID lpData;
} COPYDATASTRUCT,*PCOPYDATASTRUCT;
+
typedef struct tagCURSORSHAPE {
int xHotSpot;
int yHotSpot;
BYTE Planes;
BYTE BitsPixel;
} CURSORSHAPE,*LPCURSORSHAPE;
+
typedef struct tagCWPRETSTRUCT {
LRESULT lResult;
LPARAM lParam;
DWORD message;
HWND hwnd;
} CWPRETSTRUCT,*PCWPRETSTRUCT, *LPCWPRETSTRUCT;
+
typedef struct tagCWPSTRUCT {
LPARAM lParam;
WPARAM wParam;
UINT message;
HWND hwnd;
} CWPSTRUCT,*PCWPSTRUCT, *LPCWPSTRUCT;
+
typedef struct tagDEBUGHOOKINFO {
DWORD idThread;
DWORD idThreadInstaller;
WPARAM wParam;
int code;
} DEBUGHOOKINFO,*PDEBUGHOOKINFO,*LPDEBUGHOOKINFO;
+
typedef struct tagDELETEITEMSTRUCT {
UINT CtlType;
UINT CtlID;
UINT itemID;
HWND hwndItem;
- UINT itemData;
+ ULONG_PTR itemData;
} DELETEITEMSTRUCT,*PDELETEITEMSTRUCT,*LPDELETEITEMSTRUCT;
-#pragma pack(push,2)
+
+#include <pshpack2.h>
typedef struct {
DWORD style;
DWORD dwExtendedStyle;
short cy;
WORD id;
} DLGITEMTEMPLATE,*LPDLGITEMTEMPLATE;
+
typedef struct {
DWORD style;
DWORD dwExtendedStyle;
short cx;
short cy;
} DLGTEMPLATE,*LPDLGTEMPLATE,*LPDLGTEMPLATEA,*LPDLGTEMPLATEW;
+
typedef const DLGTEMPLATE *LPCDLGTEMPLATEA;
typedef const DLGTEMPLATE *LPCDLGTEMPLATEW;
+typedef DLGITEMTEMPLATE *PDLGITEMTEMPLATEA;
+typedef DLGITEMTEMPLATE *PDLGITEMTEMPLATEW;
+DECL_WINELIB_TYPE_AW(PDLGITEMTEMPLATE)
+typedef DLGITEMTEMPLATE *LPDLGITEMTEMPLATEA;
+typedef DLGITEMTEMPLATE *LPDLGITEMTEMPLATEW;
+
+
#ifdef UNICODE
typedef LPCDLGTEMPLATEW LPCDLGTEMPLATE;
#else
typedef LPCDLGTEMPLATEA LPCDLGTEMPLATE;
#endif // UNICODE
-#pragma pack(pop)
+#include <poppack.h>
+
typedef struct tagDRAWITEMSTRUCT {
UINT CtlType;
UINT CtlID;
HWND hwndItem;
HDC hDC;
RECT rcItem;
- DWORD itemData;
+ ULONG_PTR itemData;
} DRAWITEMSTRUCT,*LPDRAWITEMSTRUCT,*PDRAWITEMSTRUCT;
+
typedef struct {
UINT cbSize;
int iTabLength;
int iRightMargin;
UINT uiLengthDrawn;
} DRAWTEXTPARAMS,*LPDRAWTEXTPARAMS;
+
typedef struct tagPAINTSTRUCT {
HDC hdc;
BOOL fErase;
BOOL fRestore;
BOOL fIncUpdate;
BYTE rgbReserved[32];
-} PAINTSTRUCT,*LPPAINTSTRUCT;
+} PAINTSTRUCT, *PPAINTSTRUCT,*LPPAINTSTRUCT;
+
typedef struct tagMSG {
HWND hwnd;
UINT message;
DWORD time;
POINT pt;
} MSG,*LPMSG,*PMSG;
+
typedef struct _ICONINFO {
BOOL fIcon;
DWORD xHotspot;
HBITMAP hbmMask;
HBITMAP hbmColor;
} ICONINFO,*PICONINFO;
+
typedef struct tagNMHDR {
HWND hwndFrom;
- UINT idFrom;
+ UINT_PTR idFrom;
UINT code;
} NMHDR,*LPNMHDR;
+
typedef struct _WNDCLASSA {
UINT style;
WNDPROC lpfnWndProc;
LPCSTR lpszMenuName;
LPCSTR lpszClassName;
} WNDCLASSA,*LPWNDCLASSA,*PWNDCLASSA;
+
typedef struct _WNDCLASSW {
UINT style;
WNDPROC lpfnWndProc;
LPCWSTR lpszMenuName;
LPCWSTR lpszClassName;
} WNDCLASSW,*LPWNDCLASSW,*PWNDCLASSW;
+
typedef struct _WNDCLASSEXA {
UINT cbSize;
UINT style;
LPCSTR lpszClassName;
HICON hIconSm;
} WNDCLASSEXA,*LPWNDCLASSEXA,*PWNDCLASSEXA;
+
typedef struct _WNDCLASSEXW {
UINT cbSize;
UINT style;
LPCWSTR lpszClassName;
HICON hIconSm;
} WNDCLASSEXW,*LPWNDCLASSEXW,*PWNDCLASSEXW;
+
typedef struct tagMENUITEMINFOA {
UINT cbSize;
UINT fMask;
HMENU hSubMenu;
HBITMAP hbmpChecked;
HBITMAP hbmpUnchecked;
- DWORD dwItemData;
+ ULONG_PTR dwItemData;
LPSTR dwTypeData;
UINT cch;
#if (_WIN32_WINNT >= 0x0500)
#endif
} MENUITEMINFOA,*LPMENUITEMINFOA;
typedef const MENUITEMINFOA *LPCMENUITEMINFOA;
+
typedef struct tagMENUITEMINFOW {
UINT cbSize;
UINT fMask;
HMENU hSubMenu;
HBITMAP hbmpChecked;
HBITMAP hbmpUnchecked;
- DWORD dwItemData;
+ ULONG_PTR dwItemData;
LPWSTR dwTypeData;
UINT cch;
#if (_WIN32_WINNT >= 0x0500)
HBITMAP hbmpItem;
#endif
} MENUITEMINFOW,*LPMENUITEMINFOW;
+
typedef const MENUITEMINFOW *LPCMENUITEMINFOW;
+
typedef struct tagSCROLLINFO {
UINT cbSize;
UINT fMask;
int nTrackPos;
} SCROLLINFO,*LPSCROLLINFO;
typedef const SCROLLINFO *LPCSCROLLINFO;
+
typedef struct _WINDOWPLACEMENT {
UINT length;
UINT flags;
POINT ptMaxPosition;
RECT rcNormalPosition;
} WINDOWPLACEMENT,*LPWINDOWPLACEMENT,*PWINDOWPLACEMENT;
+
typedef struct {
WORD versionNumber;
WORD offset;
-} MENUITEMTEMPLATEHEADER;
+} MENUITEMTEMPLATEHEADER, *PMENUITEMTEMPLATEHEADER;
+
typedef struct {
WORD mtOption;
WORD mtID;
WCHAR mtString[1];
-} MENUITEMTEMPLATE;
+} MENUITEMTEMPLATE, *PMENUITEMTEMPLATE;
+
typedef void MENUTEMPLATE,MENUTEMPLATEA,MENUTEMPLATEW,*LPMENUTEMPLATEA,*LPMENUTEMPLATEW,*LPMENUTEMPLATE;
+
typedef struct tagHELPINFO {
UINT cbSize;
int iContextType;
int iCtrlId;
HANDLE hItemHandle;
- DWORD dwContextId;
+ DWORD_PTR dwContextId;
POINT MousePos;
} HELPINFO,*LPHELPINFO;
+
typedef void(CALLBACK *MSGBOXCALLBACK)(LPHELPINFO);
+
typedef struct {
UINT cbSize;
HWND hwndOwner;
LPCSTR lpszCaption;
DWORD dwStyle;
LPCSTR lpszIcon;
- DWORD dwContextHelpId;
+ DWORD_PTR dwContextHelpId;
MSGBOXCALLBACK lpfnMsgBoxCallback;
DWORD dwLanguageId;
} MSGBOXPARAMSA,*PMSGBOXPARAMSA,*LPMSGBOXPARAMSA;
+
typedef struct {
UINT cbSize;
HWND hwndOwner;
LPCWSTR lpszCaption;
DWORD dwStyle;
LPCWSTR lpszIcon;
- DWORD dwContextHelpId;
+ DWORD_PTR dwContextHelpId;
MSGBOXCALLBACK lpfnMsgBoxCallback;
DWORD dwLanguageId;
} MSGBOXPARAMSW,*PMSGBOXPARAMSW,*LPMSGBOXPARAMSW;
+
typedef struct tagUSEROBJECTFLAGS {
BOOL fInherit;
BOOL fReserved;
DWORD dwFlags;
-} USEROBJECTFLAGS;
+} USEROBJECTFLAGS, *PUSEROBJECTFLAGS;
+
typedef struct tagFILTERKEYS {
UINT cbSize;
DWORD dwFlags;
DWORD iRepeatMSec;
DWORD iBounceMSec;
} FILTERKEYS, *LPFILTERKEYS;
+
typedef struct tagHIGHCONTRASTA {
UINT cbSize;
DWORD dwFlags;
LPSTR lpszDefaultScheme;
} HIGHCONTRASTA,*LPHIGHCONTRASTA;
+
typedef struct tagHIGHCONTRASTW {
UINT cbSize;
DWORD dwFlags;
LPWSTR lpszDefaultScheme;
} HIGHCONTRASTW,*LPHIGHCONTRASTW;
+
#if defined(_WINGDI_) && !defined(NOGDI)
typedef struct tagICONMETRICSA {
UINT cbSize;
int iTitleWrap;
LOGFONTA lfFont;
} ICONMETRICSA,*LPICONMETRICSA;
+
typedef struct tagICONMETRICSW {
UINT cbSize;
int iHorzSpacing;
int iTitleWrap;
LOGFONTW lfFont;
} ICONMETRICSW,*LPICONMETRICSW;
+
+#ifdef UNICODE
+typedef ICONMETRICSW ICONMETRICS,*LPICONMETRICS;
+#else /* UNICODE */
+typedef ICONMETRICSA ICONMETRICS,*LPICONMETRICS;
+#endif /* UNICODE */
#endif /* NOGDI */
+
typedef struct tagMINIMIZEDMETRICS {
UINT cbSize;
int iWidth;
int iHorzGap;
int iVertGap;
int iArrange;
-} MINIMIZEDMETRICS,*LPMINIMIZEDMETRICS;
+} MINIMIZEDMETRICS, *PMINIMIZEDMETRICS,*LPMINIMIZEDMETRICS;
+
typedef struct tagMOUSEKEYS{
UINT cbSize;
DWORD dwFlags;
DWORD dwReserved1;
DWORD dwReserved2;
} MOUSEKEYS,*LPMOUSEKEYS;
+
#if defined(_WINGDI_) && !defined(NOGDI)
typedef struct tagNONCLIENTMETRICSA {
UINT cbSize;
LOGFONTA lfMenuFont;
LOGFONTA lfStatusFont;
LOGFONTA lfMessageFont;
-} NONCLIENTMETRICSA,*LPNONCLIENTMETRICSA;
+} NONCLIENTMETRICSA, *PNONCLIENTMETRICSA,*LPNONCLIENTMETRICSA;
+
typedef struct tagNONCLIENTMETRICSW {
UINT cbSize;
int iBorderWidth;
LOGFONTW lfMenuFont;
LOGFONTW lfStatusFont;
LOGFONTW lfMessageFont;
-} NONCLIENTMETRICSW,*LPNONCLIENTMETRICSW;
+} NONCLIENTMETRICSW, *PNONCLIENTMETRICSW,*LPNONCLIENTMETRICSW;
+
+#ifdef UNICODE
+typedef NONCLIENTMETRICSW NONCLIENTMETRICS,*LPNONCLIENTMETRICS;
+#else /* UNICODE */
+typedef NONCLIENTMETRICSA NONCLIENTMETRICS,*LPNONCLIENTMETRICS;
+#endif /* UNICODE */
#endif
+
typedef struct tagSERIALKEYSA {
UINT cbSize;
DWORD dwFlags;
UINT iPortState;
UINT iActive;
} SERIALKEYSA,*LPSERIALKEYSA;
+
typedef struct tagSERIALKEYSW {
UINT cbSize;
DWORD dwFlags;
UINT iPortState;
UINT iActive;
} SERIALKEYSW,*LPSERIALKEYSW;
+
typedef struct tagSOUNDSENTRYA {
UINT cbSize;
DWORD dwFlags;
LPSTR lpszWindowsEffectDLL;
DWORD iWindowsEffectOrdinal;
} SOUNDSENTRYA,*LPSOUNDSENTRYA;
+
typedef struct tagSOUNDSENTRYW {
UINT cbSize;
DWORD dwFlags;
LPWSTR lpszWindowsEffectDLL;
DWORD iWindowsEffectOrdinal;
} SOUNDSENTRYW,*LPSOUNDSENTRYW;
+
typedef struct tagSTICKYKEYS {
DWORD cbSize;
DWORD dwFlags;
} STICKYKEYS,*LPSTICKYKEYS;
+
typedef struct tagTOGGLEKEYS {
DWORD cbSize;
DWORD dwFlags;
} TOGGLEKEYS, *LPTOGGLEKEYS;
+
typedef struct tagMOUSEHOOKSTRUCT {
POINT pt;
HWND hwnd;
UINT wHitTestCode;
- DWORD dwExtraInfo;
+ ULONG_PTR dwExtraInfo;
} MOUSEHOOKSTRUCT,*LPMOUSEHOOKSTRUCT,*PMOUSEHOOKSTRUCT;
+
+typedef struct tagHARDWAREHOOKSTRUCT {
+ HWND hwnd;
+ UINT message;
+ WPARAM wParam;
+ LPARAM lParam;
+} HARDWAREHOOKSTRUCT, *PHARDWAREHOOKSTRUCT, *LPHARDWAREHOOKSTRUCT;
+
#if ( _WIN32_WINNT >= 0x0500 )
#ifdef __cplusplus
typedef struct tagMOUSEHOOKSTRUCTEX : public tagMOUSEHOOKSTRUCT
} MOUSEHOOKSTRUCTEX, *LPMOUSEHOOKSTRUCTEX, *PMOUSEHOOKSTRUCTEX;
#endif
#endif
+
typedef struct tagTRACKMOUSEEVENT {
DWORD cbSize;
DWORD dwFlags;
HWND hwndTrack;
DWORD dwHoverTime;
} TRACKMOUSEEVENT,*LPTRACKMOUSEEVENT;
+
typedef struct tagTPMPARAMS {
UINT cbSize;
RECT rcExclude;
} TPMPARAMS,*LPTPMPARAMS;
+
typedef struct tagEVENTMSG {
UINT message;
UINT paramL;
DWORD time;
HWND hwnd;
} EVENTMSG,*PEVENTMSGMSG,*LPEVENTMSGMSG,*PEVENTMSG,*LPEVENTMSG;
+
typedef struct _WINDOWPOS {
HWND hwnd;
HWND hwndInsertAfter;
int cy;
UINT flags;
} WINDOWPOS,*PWINDOWPOS,*LPWINDOWPOS;
+
typedef struct tagNCCALCSIZE_PARAMS {
RECT rgrc[3];
PWINDOWPOS lppos;
} NCCALCSIZE_PARAMS, *LPNCCALCSIZE_PARAMS;
+
typedef struct tagMDICREATESTRUCTA {
LPCSTR szClass;
LPCSTR szTitle;
DWORD style;
LPARAM lParam;
} MDICREATESTRUCTA,*LPMDICREATESTRUCTA;
+
typedef struct tagMDICREATESTRUCTW {
LPCWSTR szClass;
LPCWSTR szTitle;
DWORD style;
LPARAM lParam;
} MDICREATESTRUCTW,*LPMDICREATESTRUCTW;
+
typedef struct tagMINMAXINFO {
POINT ptReserved;
POINT ptMaxSize;
POINT ptMinTrackSize;
POINT ptMaxTrackSize;
} MINMAXINFO,*PMINMAXINFO,*LPMINMAXINFO;
+
typedef struct tagMDINEXTMENU {
HMENU hmenuIn;
HMENU hmenuNext;
HWND hwndNext;
} MDINEXTMENU,*PMDINEXTMENU,*LPMDINEXTMENU;
+
typedef struct tagMEASUREITEMSTRUCT {
UINT CtlType;
UINT CtlID;
UINT itemID;
UINT itemWidth;
UINT itemHeight;
- DWORD itemData;
+ ULONG_PTR itemData;
} MEASUREITEMSTRUCT,*PMEASUREITEMSTRUCT,*LPMEASUREITEMSTRUCT;
+
typedef struct tagDROPSTRUCT {
HWND hwndSource;
HWND hwndSink;
DWORD wFmt;
- DWORD dwData;
+ ULONG_PTR dwData;
POINT ptDrop;
DWORD dwControlData;
} DROPSTRUCT,*PDROPSTRUCT,*LPDROPSTRUCT;
+
typedef DWORD HELPPOLY;
typedef struct tagMULTIKEYHELPA {
DWORD mkSize;
CHAR mkKeylist;
CHAR szKeyphrase[1];
} MULTIKEYHELPA,*PMULTIKEYHELPA,*LPMULTIKEYHELPA;
+
typedef struct tagMULTIKEYHELPW {
DWORD mkSize;
WCHAR mkKeylist;
WCHAR szKeyphrase[1];
} MULTIKEYHELPW,*PMULTIKEYHELPW,*LPMULTIKEYHELPW;
+
typedef struct tagHELPWININFOA {
int wStructSize;
int x;
int wMax;
CHAR rgchMember[2];
} HELPWININFOA,*PHELPWININFOA,*LPHELPWININFOA;
+
typedef struct tagHELPWININFOW {
int wStructSize;
int x;
int wMax;
WCHAR rgchMember[2];
} HELPWININFOW,*PHELPWININFOW,*LPHELPWININFOW;
+
typedef struct tagSTYLESTRUCT {
DWORD styleOld;
DWORD styleNew;
} STYLESTRUCT,*LPSTYLESTRUCT;
+
typedef struct tagALTTABINFO {
DWORD cbSize;
int cItems;
int cyItem;
POINT ptStart;
} ALTTABINFO,*PALTTABINFO,*LPALTTABINFO;
+
typedef struct tagCOMBOBOXINFO {
DWORD cbSize;
RECT rcItem;
HWND hwndItem;
HWND hwndList;
} COMBOBOXINFO,*PCOMBOBOXINFO,*LPCOMBOBOXINFO;
+
typedef struct tagCURSORINFO {
DWORD cbSize;
DWORD flags;
HCURSOR hCursor;
POINT ptScreenPos;
} CURSORINFO,*PCURSORINFO,*LPCURSORINFO;
+
typedef struct tagMENUBARINFO {
DWORD cbSize;
RECT rcBar;
BOOL fBarFocused:1;
BOOL fFocused:1;
} MENUBARINFO,*PMENUBARINFO;
+
typedef struct tagMENUINFO {
DWORD cbSize;
DWORD fMask;
DWORD dwContextHelpID;
ULONG_PTR dwMenuData;
} MENUINFO,*LPMENUINFO;
+
typedef MENUINFO CONST *LPCMENUINFO;
#define CCHILDREN_SCROLLBAR 5
+
typedef struct tagSCROLLBARINFO {
DWORD cbSize;
RECT rcScrollBar;
int reserved;
DWORD rgstate[CCHILDREN_SCROLLBAR+1];
} SCROLLBARINFO,*PSCROLLBARINFO,*LPSCROLLBARINFO;
+
#define CCHILDREN_TITLEBAR 5
+
typedef struct tagTITLEBARINFO {
DWORD cbSize;
RECT rcTitleBar;
DWORD rgstate[CCHILDREN_TITLEBAR+1];
} TITLEBARINFO,*PTITLEBARINFO,*LPTITLEBARINFO;
+
typedef struct tagWINDOWINFO {
DWORD cbSize;
RECT rcWindow;
ATOM atomWindowType;
WORD wCreatorVersion;
} WINDOWINFO,*PWINDOWINFO,*LPWINDOWINFO;
+
typedef struct tagLASTINPUTINFO {
UINT cbSize;
DWORD dwTime;
} LASTINPUTINFO,*PLASTINPUTINFO;
+
typedef struct tagMONITORINFO {
DWORD cbSize;
RECT rcMonitor;
RECT rcWork;
DWORD dwFlags;
} MONITORINFO,*LPMONITORINFO;
+
#define CCHDEVICENAME 32
typedef struct tagMONITORINFOEXA {
DWORD cbSize;
DWORD dwFlags;
CHAR szDevice[CCHDEVICENAME];
} MONITORINFOEXA,*LPMONITORINFOEXA;
+
typedef struct tagMONITORINFOEXW {
DWORD cbSize;
RECT rcMonitor;
DWORD dwFlags;
WCHAR szDevice[CCHDEVICENAME];
} MONITORINFOEXW,*LPMONITORINFOEXW;
+
typedef struct tagKBDLLHOOKSTRUCT {
DWORD vkCode;
DWORD scanCode;
DWORD flags;
DWORD time;
- DWORD dwExtraInfo;
+ ULONG_PTR dwExtraInfo;
} KBDLLHOOKSTRUCT,*LPKBDLLHOOKSTRUCT,*PKBDLLHOOKSTRUCT;
+
typedef struct tagMSLLHOOKSTRUCT
{
POINT pt;
DWORD time;
ULONG_PTR dwExtraInfo;
} MSLLHOOKSTRUCT, *LPMSLLHOOKSTRUCT, *PMSLLHOOKSTRUCT;
+
#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
typedef struct {
UINT cbSize;
DWORD dwTimeout;
} FLASHWINFO,*PFLASHWINFO;
#endif /* (WINVER >= 0x0500 || _WIN32_WINDOWS >= 0x0410) */
+
#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0490)
typedef struct tagMOUSEMOVEPOINT {
int x;
ULONG_PTR dwExtraInfo;
} MOUSEMOVEPOINT,*PMOUSEMOVEPOINT,*LPMOUSEMOVEPOINT;
#endif
-#if (_WIN32_WINNT >= 0x0403)
+
+#if (_WIN32_WINNT >= 0x0400)
typedef struct tagMOUSEINPUT {
LONG dx;
LONG dy;
DWORD dwFlags;
DWORD time;
ULONG_PTR dwExtraInfo;
-} MOUSEINPUT,*PMOUSEINPUT;
+} MOUSEINPUT,*PMOUSEINPUT, *LPMOUSEINPUT;
+
typedef struct tagKEYBDINPUT {
WORD wVk;
WORD wScan;
DWORD dwFlags;
DWORD time;
ULONG_PTR dwExtraInfo;
-} KEYBDINPUT,*PKEYBDINPUT;
+} KEYBDINPUT, *PKEYBDINPUT, *LPKEYBDINPUT;
+
typedef struct tagHARDWAREINPUT {
DWORD uMsg;
WORD wParamL;
WORD wParamH;
-} HARDWAREINPUT,*PHARDWAREINPUT;
+} HARDWAREINPUT, *PHARDWAREINPUT, *LPHARDWAREINPUT;
+
typedef struct tagINPUT {
DWORD type;
_ANONYMOUS_UNION union {
HARDWAREINPUT hi;
} DUMMYUNIONNAME;
} INPUT,*PINPUT,*LPINPUT;
-#endif /* (_WIN32_WINNT >= 0x0403) */
+#endif /* (_WIN32_WINNT >= 0x0400) */
+
#if (WINVER >= 0x0500)
typedef struct tagGUITHREADINFO {
DWORD cbSize;
HWND hwndCaret;
RECT rcCaret;
} GUITHREADINFO,*PGUITHREADINFO,*LPGUITHREADINFO;
+
typedef VOID (CALLBACK *WINEVENTPROC)(HWINEVENTHOOK,DWORD,HWND,LONG,LONG,DWORD,DWORD);
#endif /* (WINVER >= 0x0500) */
+
#if (_WIN32_WINNT >= 0x0501)
typedef struct {
UINT cbSize;
LUID luid;
} BSMINFO,*PBSMINFO;
DECLARE_HANDLE(HRAWINPUT);
+
typedef struct tagRAWINPUTHEADER {
DWORD dwType;
DWORD dwSize;
HANDLE hDevice;
WPARAM wParam;
} RAWINPUTHEADER,*PRAWINPUTHEADER;
+
typedef struct tagRAWMOUSE {
USHORT usFlags;
_ANONYMOUS_UNION union {
LONG lLastY;
ULONG ulExtraInformation;
} RAWMOUSE,*PRAWMOUSE,*LPRAWMOUSE;
+
typedef struct tagRAWKEYBOARD {
USHORT MakeCode;
USHORT Flags;
UINT Message;
ULONG ExtraInformation;
} RAWKEYBOARD,*PRAWKEYBOARD,*LPRAWKEYBOARD;
+
typedef struct tagRAWHID {
DWORD dwSizeHid;
DWORD dwCount;
BYTE bRawData;
} RAWHID,*PRAWHID,*LPRAWHID;
+
typedef struct tagRAWINPUT {
RAWINPUTHEADER header;
union {
RAWHID hid;
} data;
} RAWINPUT,*PRAWINPUT,*LPRAWINPUT;
+
typedef struct tagRAWINPUTDEVICE {
USHORT usUsagePage;
USHORT usUsage;
DWORD dwFlags;
HWND hwndTarget;
} RAWINPUTDEVICE,*PRAWINPUTDEVICE,*LPRAWINPUTDEVICE;
+
typedef const RAWINPUTDEVICE *PCRAWINPUTDEVICE;
+
typedef struct tagRAWINPUTDEVICELIST {
HANDLE hDevice;
DWORD dwType;
BOOL WINAPI BringWindowToTop(HWND);
long WINAPI BroadcastSystemMessage(DWORD,LPDWORD,UINT,WPARAM,LPARAM);
#if (_WIN32_WINNT >= 0x0400)
-long WINAPI BroadcastSystemMessageA(DWORD,LPDWORD,UINT,WPARAM,LPARAM);
-long WINAPI BroadcastSystemMessageW(DWORD,LPDWORD,UINT,WPARAM,LPARAM);
+LONG WINAPI BroadcastSystemMessageA(DWORD,LPDWORD,UINT,WPARAM,LPARAM);
+LONG WINAPI BroadcastSystemMessageW(DWORD,LPDWORD,UINT,WPARAM,LPARAM);
#endif /* (_WIN32_WINNT >= 0x0400) */
#if (_WIN32_WINNT >= 0x0501)
-long WINAPI BroadcastSystemMessageExA(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO);
-long WINAPI BroadcastSystemMessageExW(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO);
+LONG WINAPI BroadcastSystemMessageExA(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO);
+LONG WINAPI BroadcastSystemMessageExW(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO);
#endif /* (_WIN32_WINNT >= 0x0501) */
+void WINAPI CalcChildScroll(HWND, INT);
BOOL WINAPI CallMsgFilterA(LPMSG,INT);
BOOL WINAPI CallMsgFilterW(LPMSG,INT);
LRESULT WINAPI CallNextHookEx(HHOOK,int,WPARAM,LPARAM);
HACCEL WINAPI CreateAcceleratorTableA(LPACCEL,int);
HACCEL WINAPI CreateAcceleratorTableW(LPACCEL,int);
BOOL WINAPI CreateCaret(HWND,HBITMAP,int,int);
-HCURSOR WINAPI CreateCursor(HINSTANCE,int,int,int,int,PCVOID,PCVOID);
+HCURSOR WINAPI CreateCursor(HINSTANCE,int,int,int,int,CONST VOID*,CONST VOID*);
#if defined(_WINGDI_) && !defined(NOGDI)
HDESK WINAPI CreateDesktopA(LPCSTR,LPCSTR,LPDEVMODEA,DWORD,ACCESS_MASK,LPSECURITY_ATTRIBUTES);
HDESK WINAPI CreateDesktopW(LPCWSTR,LPCWSTR,LPDEVMODEW,DWORD,ACCESS_MASK,LPSECURITY_ATTRIBUTES);
HWND WINAPI CreateWindowExA(DWORD,LPCSTR,LPCSTR,DWORD,int,int,int,int,HWND,HMENU,HINSTANCE,LPVOID);
HWND WINAPI CreateWindowExW(DWORD,LPCWSTR,LPCWSTR,DWORD,int,int,int,int,HWND,HMENU,HINSTANCE,LPVOID);
#ifndef NOWINDOWSTATION
-HWINSTA WINAPI CreateWindowStationA(LPSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
-HWINSTA WINAPI CreateWindowStationW(LPWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
+HWINSTA WINAPI CreateWindowStationA(LPCSTR,DWORD,ACCESS_MASK,LPSECURITY_ATTRIBUTES);
+HWINSTA WINAPI CreateWindowStationW(LPCWSTR,DWORD,ACCESS_MASK,LPSECURITY_ATTRIBUTES);
#endif
LRESULT WINAPI DefDlgProcA(HWND,UINT,WPARAM,LPARAM);
LRESULT WINAPI DefDlgProcW(HWND,UINT,WPARAM,LPARAM);
#define DialogBoxW(i,t,p,f) DialogBoxParamW(i,t,p,f,0)
#define DialogBoxIndirectA(i,t,p,f) DialogBoxIndirectParamA(i,t,p,f,0)
#define DialogBoxIndirectW(i,t,p,f) DialogBoxIndirectParamW(i,t,p,f,0)
-int WINAPI DialogBoxIndirectParamA(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM);
-int WINAPI DialogBoxIndirectParamW(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM);
-int WINAPI DialogBoxParamA(HINSTANCE,LPCSTR,HWND,DLGPROC,LPARAM);
-int WINAPI DialogBoxParamW(HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM);
-LONG WINAPI DispatchMessageA(const MSG*);
-LONG WINAPI DispatchMessageW(const MSG*);
+INT_PTR WINAPI DialogBoxIndirectParamA(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM);
+INT_PTR WINAPI DialogBoxIndirectParamW(HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM);
+INT_PTR WINAPI DialogBoxParamA(HINSTANCE,LPCSTR,HWND,DLGPROC,LPARAM);
+INT_PTR WINAPI DialogBoxParamW(HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM);
+LRESULT WINAPI DispatchMessageA(const MSG*);
+LRESULT WINAPI DispatchMessageW(const MSG*);
int WINAPI DlgDirListA(HWND,LPSTR,int,int,UINT);
int WINAPI DlgDirListW(HWND,LPWSTR,int,int,UINT);
int WINAPI DlgDirListComboBoxA(HWND,LPSTR,int,int,UINT);
BOOL WINAPI DlgDirSelectExA(HWND,LPSTR,int,int);
BOOL WINAPI DlgDirSelectExW(HWND,LPWSTR,int,int);
BOOL WINAPI DragDetect(HWND,POINT);
-DWORD WINAPI DragObject(HWND,HWND,UINT,DWORD,HCURSOR);
+DWORD WINAPI DragObject(HWND,HWND,UINT,ULONG_PTR,HCURSOR);
BOOL WINAPI DrawAnimatedRects(HWND,int,LPCRECT,LPCRECT);
BOOL WINAPI DrawCaption(HWND,HDC,LPCRECT,UINT);
BOOL WINAPI DrawCaptionTempA(HWND,HDC,const RECT*,HFONT,HICON,LPCSTR,UINT);
BOOL WINAPI EnableScrollBar(HWND,UINT,UINT);
BOOL WINAPI EnableWindow(HWND,BOOL);
BOOL WINAPI EndDeferWindowPos(HDWP);
-BOOL WINAPI EndDialog(HWND,int);
+BOOL WINAPI EndDialog(HWND,INT_PTR);
BOOL WINAPI EndMenu(void);
BOOL WINAPI EndPaint(HWND,const PAINTSTRUCT*);
#if (_WIN32_WINNT >= 0x0500)
DWORD WINAPI GetClassLongA(HWND,int);
DWORD WINAPI GetClassLongW(HWND,int);
#ifdef _WIN64
-LONG_PTR WINAPI GetClassLongPtrA(HWND,int);
-LONG_PTR WINAPI GetClassLongPtrW(HWND,int);
+ULONG_PTR WINAPI GetClassLongPtrA(HWND,int);
+ULONG_PTR WINAPI GetClassLongPtrW(HWND,int);
#else
#define GetClassLongPtrA GetClassLongA
#define GetClassLongPtrW GetClassLongW
HDC WINAPI GetDC(HWND);
HDC WINAPI GetDCEx(HWND,HRGN,DWORD);
HWND WINAPI GetDesktopWindow(void);
-long WINAPI GetDialogBaseUnits(void);
+LONG WINAPI GetDialogBaseUnits(void);
int WINAPI GetDlgCtrlID(HWND);
HWND WINAPI GetDlgItem(HWND,int);
UINT WINAPI GetDlgItemInt(HWND,int,PBOOL,BOOL);
int WINAPI GetMenuStringW(HMENU,UINT,LPWSTR,int,UINT);
BOOL WINAPI GetMessageA(LPMSG,HWND,UINT,UINT);
BOOL WINAPI GetMessageW(LPMSG,HWND,UINT,UINT);
-LONG WINAPI GetMessageExtraInfo(void);
+LPARAM WINAPI GetMessageExtraInfo(void);
DWORD WINAPI GetMessagePos(void);
LONG WINAPI GetMessageTime(void);
#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0490)
#define GetSysModalWindow() (NULL)
HMENU WINAPI GetSystemMenu(HWND,BOOL);
int WINAPI GetSystemMetrics(int);
-DWORD WINAPI GetTabbedTextExtentA(HDC,LPCSTR,int,int,LPINT);
-DWORD WINAPI GetTabbedTextExtentW(HDC,LPCWSTR,int,int,LPINT);
+DWORD WINAPI GetTabbedTextExtentA(HDC,LPCSTR,int,int,CONST LPINT);
+DWORD WINAPI GetTabbedTextExtentW(HDC,LPCWSTR,int,int,CONST LPINT);
LONG WINAPI GetWindowLongA(HWND,int);
LONG WINAPI GetWindowLongW(HWND,int);
#ifdef _WIN64
#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410)
DWORD WINAPI InSendMessageEx(LPVOID);
#endif
-BOOL WINAPI InsertMenuA(HMENU,UINT,UINT,UINT,LPCSTR);
-BOOL WINAPI InsertMenuW(HMENU,UINT,UINT,UINT,LPCWSTR);
+BOOL WINAPI InsertMenuA(HMENU,UINT,UINT,UINT_PTR,LPCSTR);
+BOOL WINAPI InsertMenuW(HMENU,UINT,UINT,UINT_PTR,LPCWSTR);
BOOL WINAPI InsertMenuItemA(HMENU,UINT,BOOL,LPCMENUITEMINFOA);
BOOL WINAPI InsertMenuItemW(HMENU,UINT,BOOL,LPCMENUITEMINFOW);
INT WINAPI InternalGetWindowText(HWND,LPWSTR,INT);
BOOL WINAPI IsWinEventHookInstalled(DWORD);
#endif
BOOL WINAPI IsZoomed(HWND);
-VOID WINAPI keybd_event(BYTE,BYTE,DWORD,DWORD);
-BOOL WINAPI KillTimer(HWND,UINT);
+VOID WINAPI keybd_event(BYTE,BYTE,DWORD,ULONG_PTR);
+BOOL WINAPI KillTimer(HWND,UINT_PTR);
+BOOL WINAPI KillSystemTimer(HWND,UINT_PTR);
HACCEL WINAPI LoadAcceleratorsA(HINSTANCE,LPCSTR);
HACCEL WINAPI LoadAcceleratorsW(HINSTANCE,LPCWSTR);
HBITMAP WINAPI LoadBitmapA(HINSTANCE,LPCSTR);
int WINAPI MessageBoxExW(HWND,LPCWSTR,LPCWSTR,UINT,WORD);
int WINAPI MessageBoxIndirectA(CONST MSGBOXPARAMSA*);
int WINAPI MessageBoxIndirectW(CONST MSGBOXPARAMSW*);
-BOOL WINAPI ModifyMenuA(HMENU,UINT,UINT,UINT,LPCSTR);
-BOOL WINAPI ModifyMenuW(HMENU,UINT,UINT,UINT,LPCWSTR);
+BOOL WINAPI ModifyMenuA(HMENU,UINT,UINT,UINT_PTR,LPCSTR);
+BOOL WINAPI ModifyMenuW(HMENU,UINT,UINT,UINT_PTR,LPCWSTR);
HMONITOR WINAPI MonitorFromPoint(POINT,DWORD);
HMONITOR WINAPI MonitorFromRect(LPCRECT,DWORD);
HMONITOR WINAPI MonitorFromWindow(HWND,DWORD);
BOOL WINAPI OemToCharW(LPCSTR,LPWSTR);
BOOL WINAPI OffsetRect(LPRECT,int,int);
BOOL WINAPI OpenClipboard(HWND);
-HDESK WINAPI OpenDesktopA(LPSTR,DWORD,BOOL,DWORD);
-HDESK WINAPI OpenDesktopW(LPWSTR,DWORD,BOOL,DWORD);
+HDESK WINAPI OpenDesktopA(LPCSTR,DWORD,BOOL,DWORD);
+HDESK WINAPI OpenDesktopW(LPCWSTR,DWORD,BOOL,DWORD);
BOOL WINAPI OpenIcon(HWND);
HDESK WINAPI OpenInputDesktop(DWORD,BOOL,DWORD);
-HWINSTA WINAPI OpenWindowStationA(LPSTR,BOOL,DWORD);
-HWINSTA WINAPI OpenWindowStationW(LPWSTR,BOOL,DWORD);
+HWINSTA WINAPI OpenWindowStationA(LPCSTR,BOOL,DWORD);
+HWINSTA WINAPI OpenWindowStationW(LPCWSTR,BOOL,DWORD);
BOOL WINAPI PaintDesktop(HDC);
BOOL WINAPI PeekMessageA(LPMSG,HWND,UINT,UINT,UINT);
BOOL WINAPI PeekMessageW(LPMSG,HWND,UINT,UINT,UINT);
#if (_WIN32_WINNT >= 0x0501)
BOOL WINAPI PrintWindow(HWND,HDC,UINT);
#endif
+UINT WINAPI PrivateExtractIconsA(LPCSTR,int,int,int,HICON*,UINT*,UINT,UINT);
+UINT WINAPI PrivateExtractIconsW(LPCWSTR,int,int,int,HICON*,UINT*,UINT,UINT);
BOOL WINAPI PtInRect(LPCRECT,POINT);
HWND WINAPI RealChildWindowFromPoint(HWND,POINT);
UINT WINAPI RealGetWindowClassA(HWND,LPSTR,UINT);
HANDLE WINAPI RemovePropW(HWND,LPCWSTR);
BOOL WINAPI ReplyMessage(LRESULT);
BOOL WINAPI ScreenToClient(HWND,LPPOINT);
+VOID WINAPI ScrollChildren(HWND,UINT,WPARAM,LPARAM);
BOOL WINAPI ScrollDC(HDC,int,int,LPCRECT,LPCRECT,HRGN,LPRECT);
BOOL WINAPI ScrollWindow(HWND,int,int,LPCRECT,LPCRECT);
int WINAPI ScrollWindowEx(HWND,int,int,LPCRECT,LPCRECT,HRGN,LPRECT,UINT);
-LONG WINAPI SendDlgItemMessageA(HWND,int,UINT,WPARAM,LPARAM);
-LONG WINAPI SendDlgItemMessageW(HWND,int,UINT,WPARAM,LPARAM);
+LRESULT WINAPI SendDlgItemMessageA(HWND,int,UINT,WPARAM,LPARAM);
+LRESULT WINAPI SendDlgItemMessageW(HWND,int,UINT,WPARAM,LPARAM);
#if (_WIN32_WINNT >= 0x0403)
UINT WINAPI SendInput(UINT,LPINPUT,int);
#endif
LRESULT WINAPI SendMessageA(HWND,UINT,WPARAM,LPARAM);
-BOOL WINAPI SendMessageCallbackA(HWND,UINT,WPARAM,LPARAM,SENDASYNCPROC,DWORD);
-BOOL WINAPI SendMessageCallbackW(HWND,UINT,WPARAM,LPARAM,SENDASYNCPROC,DWORD);
+BOOL WINAPI SendMessageCallbackA(HWND,UINT,WPARAM,LPARAM,SENDASYNCPROC,ULONG_PTR);
+BOOL WINAPI SendMessageCallbackW(HWND,UINT,WPARAM,LPARAM,SENDASYNCPROC,ULONG_PTR);
LRESULT WINAPI SendMessageTimeoutA(HWND,UINT,WPARAM,LPARAM,UINT,UINT,PDWORD_PTR);
LRESULT WINAPI SendMessageTimeoutW(HWND,UINT,WPARAM,LPARAM,UINT,UINT,PDWORD_PTR);
LRESULT WINAPI SendMessageW(HWND,UINT,WPARAM,LPARAM);
HCURSOR WINAPI SetCursor(HCURSOR);
BOOL WINAPI SetCursorPos(int,int);
VOID WINAPI SetDebugErrorLevel(DWORD);
+BOOL WINAPI SetDeskWallPaper(LPCSTR);
BOOL WINAPI SetDlgItemInt(HWND,int,UINT,BOOL);
BOOL WINAPI SetDlgItemTextA(HWND,int,LPCSTR);
BOOL WINAPI SetDlgItemTextW(HWND,int,LPCWSTR);
int WINAPI SetScrollPos(HWND,int,int,BOOL);
BOOL WINAPI SetScrollRange(HWND,int,int,int,BOOL);
BOOL WINAPI SetSysColors(int,const INT *,const COLORREF *);
-DWORD WINAPI SetSysColorsTemp(const COLORREF *, const HBRUSH *, DWORD);
+DWORD_PTR WINAPI SetSysColorsTemp(const COLORREF *, const HBRUSH *, DWORD_PTR);
#define SetSysModalWindow(h) (NULL)
BOOL WINAPI SetSystemCursor(HCURSOR,DWORD);
+BOOL WINAPI SetSystemMenu(HWND,HMENU);
BOOL WINAPI SetThreadDesktop(HDESK);
-UINT WINAPI SetTimer(HWND,UINT,UINT,TIMERPROC);
+UINT_PTR WINAPI SetTimer(HWND,UINT_PTR,UINT,TIMERPROC);
+UINT_PTR WINAPI SetSystemTimer(HWND,UINT_PTR,UINT,TIMERPROC);
BOOL WINAPI SetUserObjectInformationA(HANDLE,int,PVOID,DWORD);
BOOL WINAPI SetUserObjectInformationW(HANDLE,int,PVOID,DWORD);
BOOL WINAPI SetUserObjectSecurity(HANDLE,PSECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
HHOOK WINAPI SetWindowsHookA(int,HOOKPROC);
HHOOK WINAPI SetWindowsHookExA(int,HOOKPROC,HINSTANCE,DWORD);
HHOOK WINAPI SetWindowsHookExW(int,HOOKPROC,HINSTANCE,DWORD);
+HHOOK WINAPI SetWindowsHookW(int,HOOKPROC);
BOOL WINAPI SetWindowTextA(HWND,LPCSTR);
BOOL WINAPI SetWindowTextW(HWND,LPCWSTR);
WORD WINAPI SetWindowWord(HWND,int,WORD);
#endif /* (_WIN32_WINNT >= 0x0500) */
BOOL WINAPI SystemParametersInfoA(UINT,UINT,PVOID,UINT);
BOOL WINAPI SystemParametersInfoW(UINT,UINT,PVOID,UINT);
-LONG WINAPI TabbedTextOutA(HDC,int,int,LPCSTR,int,int,LPINT,int);
-LONG WINAPI TabbedTextOutW(HDC,int,int,LPCWSTR,int,int,LPINT,int);
+LONG WINAPI TabbedTextOutA(HDC,int,int,LPCSTR,int,int,CONST LPINT,int);
+LONG WINAPI TabbedTextOutW(HDC,int,int,LPCWSTR,int,int,CONST LPINT,int);
WORD WINAPI TileWindows(HWND,UINT,LPCRECT,UINT,const HWND *);
-int WINAPI ToAscii(UINT,UINT,PBYTE,LPWORD,UINT);
-int WINAPI ToAsciiEx(UINT,UINT,PBYTE,LPWORD,UINT,HKL);
-int WINAPI ToUnicode(UINT,UINT,PBYTE,LPWSTR,int,UINT);
-int WINAPI ToUnicodeEx(UINT,UINT,PBYTE,LPWSTR,int,UINT,HKL);
+int WINAPI ToAscii(UINT,UINT,CONST PBYTE,LPWORD,UINT);
+int WINAPI ToAsciiEx(UINT,UINT,CONST PBYTE,LPWORD,UINT,HKL);
+int WINAPI ToUnicode(UINT,UINT,CONST PBYTE,LPWSTR,int,UINT);
+int WINAPI ToUnicodeEx(UINT,UINT,CONST PBYTE,LPWSTR,int,UINT,HKL);
BOOL WINAPI TrackMouseEvent(LPTRACKMOUSEEVENT);
BOOL WINAPI TrackPopupMenu(HMENU,UINT,int,int,int,HWND,LPCRECT);
BOOL WINAPI TrackPopupMenuEx(HMENU,UINT,int,int,HWND,LPTPMPARAMS);
DWORD WINAPI WaitForInputIdle(HANDLE,DWORD);
BOOL WINAPI WaitMessage(void);
HWND WINAPI WindowFromDC(HDC hDC);
+#if (_WIN32_WINNT >= 0x0600)
+HWND WINAPI WindowFromPhysicalPoint(POINT);
+#endif
HWND WINAPI WindowFromPoint(POINT);
UINT WINAPI WinExec(LPCSTR,UINT);
-BOOL WINAPI WinHelpA(HWND,LPCSTR,UINT,DWORD);
-BOOL WINAPI WinHelpW(HWND,LPCWSTR,UINT,DWORD);
+BOOL WINAPI WinHelpA(HWND,LPCSTR,UINT,ULONG_PTR);
+BOOL WINAPI WinHelpW(HWND,LPCWSTR,UINT,ULONG_PTR);
int WINAPIV wsprintfA(LPSTR,LPCSTR,...);
int WINAPIV wsprintfW(LPWSTR,LPCWSTR,...);
int WINAPI wvsprintfA(LPSTR,LPCSTR,va_list arglist);
#define PostAppMessage PostAppMessageW
#define PostMessage PostMessageW
#define PostThreadMessage PostThreadMessageW
+#define PrivateExtractIcons PrivateExtractIconsW
#define RealGetWindowClass RealGetWindowClassW
#define RegisterClass RegisterClassW
#define RegisterClassEx RegisterClassExW
#define WinHelp WinHelpW
#define wsprintf wsprintfW
#define wvsprintf wvsprintfW
+
#ifndef NOGDI
-typedef ICONMETRICSW ICONMETRICS,*LPICONMETRICS;
-typedef NONCLIENTMETRICSW NONCLIENTMETRICS,*LPNONCLIENTMETRICS;
#define ChangeDisplaySettings ChangeDisplaySettingsW
#define ChangeDisplaySettingsEx ChangeDisplaySettingsExW
#define CreateDesktop CreateDesktopW
#define PostAppMessage PostAppMessageA
#define PostMessage PostMessageA
#define PostThreadMessage PostThreadMessageA
+#define PrivateExtractIcons PrivateExtractIconsA
#define RealGetWindowClass RealGetWindowClassA
#define RegisterClass RegisterClassA
#define RegisterClassEx RegisterClassExA
#define wsprintf wsprintfA
#define wvsprintf wvsprintfA
#if defined(_WINGDI_) && !defined(NOGDI)
-typedef ICONMETRICSA ICONMETRICS,*LPICONMETRICS;
-typedef NONCLIENTMETRICSA NONCLIENTMETRICS,*LPNONCLIENTMETRICS;
#define ChangeDisplaySettings ChangeDisplaySettingsA
#define ChangeDisplaySettingsEx ChangeDisplaySettingsExA
#define CreateDesktop CreateDesktopA
#endif /* UNICODE */
#endif /* RC_INVOKED */
+#ifdef _MSC_VER
+#pragma warning(pop)
+#endif
+
#ifdef __cplusplus
}
#endif