]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/wrapwin.h
Compilation fix for VC++ 5 and 6
[wxWidgets.git] / include / wx / msw / wrapwin.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: msw/wrapwin.h
3 // Purpose: Wrapper around <windows.h>, to be included instead of it
4 // Author: Vaclav Slavik
5 // Created: 2003/07/22
6 // RCS-ID: $Id$
7 // Copyright: (c) 2003 Vaclav Slavik
8 // Licence: wxWindows licence
9 /////////////////////////////////////////////////////////////////////////////
10
11 #ifndef _WX_WRAPWIN_H_
12 #define _WX_WRAPWIN_H_
13
14 #include "wx/platform.h"
15
16 #ifndef STRICT
17 #define STRICT 1
18 #endif
19
20 // don't define min() and max() as macros, they conflict with standard C++ ones
21 #ifndef NOMINMAX
22 #define NOMINMAX
23 #endif // NOMINMAX
24
25 #include <windows.h>
26
27 #ifdef __WXWINCE__
28 // this doesn't make any sense knowing that windows.h includes all these
29 // headers anyhow, but the fact remains that when building using eVC 4 the
30 // functions and constants from these headers are not defined unless we
31 // explicitly include them ourselves -- how is it possible is beyond me...
32 #include <winbase.h>
33 #include <wingdi.h>
34 #include <winuser.h>
35
36 // this one OTOH contains many useful CE-only functions
37 #include <shellapi.h>
38 #endif // __WXWINCE__
39
40 #include "wx/msw/winundef.h"
41
42 // types DWORD_PTR, ULONG_PTR and so on might be not defined in old headers but
43 // unfortunately I don't know of any standard way to test for this (as they're
44 // typedefs and not #defines), so simply overwrite them in any case in Win32
45 // mode -- and if compiling for Win64 they'd better have new headers anyhow
46 //
47 // this is ugly but what else can we do? even testing for compiler version
48 // wouldn't help as you can perfectly well be using an older compiler (VC6)
49 // with newer SDK headers
50 #if !defined(__WIN64__) && !defined(__WXWINCE__)
51 #define UINT_PTR unsigned int
52 #define ULONG_PTR unsigned long
53 #define DWORD_PTR unsigned long
54 #endif // !__WIN64__
55
56 #endif // _WX_WRAPWIN_H_
57