|  | /** | 
|  | * This file has no copyright assigned and is placed in the Public Domain. | 
|  | * This file is part of the mingw-w64 runtime package. | 
|  | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | 
|  | */ | 
|  | #ifndef _WINDOWS_ | 
|  | #define _WINDOWS_ | 
|  |  | 
|  | #include <_mingw.h> | 
|  | #include <sdkddkver.h> | 
|  |  | 
|  | /* Some kludge for Obj-C. | 
|  | For Obj-C the 'interface' is a keyword, but interface is used | 
|  | in midl-code too.  To resolve this conflict for at least the | 
|  | main windows API header, we define it here temporary.  */ | 
|  | #ifdef __OBJC__ | 
|  | #pragma push_macro("interface") | 
|  | #undef interface | 
|  | #define interface struct | 
|  | #endif | 
|  |  | 
|  | #ifndef _INC_WINDOWS | 
|  | #define _INC_WINDOWS | 
|  |  | 
|  | #if defined(RC_INVOKED) && !defined(NOWINRES) | 
|  |  | 
|  | #include <winresrc.h> | 
|  | #else | 
|  |  | 
|  | #ifdef RC_INVOKED | 
|  | #define NOATOM | 
|  | #define NOGDI | 
|  | #define NOGDICAPMASKS | 
|  | #define NOMETAFILE | 
|  | #define NOMINMAX | 
|  | #define NOMSG | 
|  | #define NOOPENFILE | 
|  | #define NORASTEROPS | 
|  | #define NOSCROLL | 
|  | #define NOSOUND | 
|  | #define NOSYSMETRICS | 
|  | #define NOTEXTMETRIC | 
|  | #define NOWH | 
|  | #define NOCOMM | 
|  | #define NOKANJI | 
|  | #define NOCRYPT | 
|  | #define NOMCX | 
|  | #endif | 
|  |  | 
|  | #if defined(__x86_64) && \ | 
|  | !(defined(_X86_) || defined(__i386__) || defined(_IA64_)) | 
|  | #if !defined(_AMD64_) | 
|  | #define _AMD64_ | 
|  | #endif | 
|  | #endif /* _AMD64_ */ | 
|  |  | 
|  | #if defined(__ia64__) && \ | 
|  | !(defined(_X86_) || defined(__x86_64) || defined(_AMD64_)) | 
|  | #if !defined(_IA64_) | 
|  | #define _IA64_ | 
|  | #endif | 
|  | #endif /* _IA64_ */ | 
|  |  | 
|  | #ifndef RC_INVOKED | 
|  | #include <excpt.h> | 
|  | #include <stdarg.h> | 
|  | #endif | 
|  |  | 
|  | #include <windef.h> | 
|  | #include <winbase.h> | 
|  | #include <wingdi.h> | 
|  | #include <winuser.h> | 
|  | #include <winnls.h> | 
|  | #include <wincon.h> | 
|  | #include <winver.h> | 
|  | #include <winreg.h> | 
|  | #include <winnetwk.h> | 
|  | #include <virtdisk.h> | 
|  |  | 
|  | #ifndef WIN32_LEAN_AND_MEAN | 
|  | #include <cderr.h> | 
|  | #include <dde.h> | 
|  | #include <ddeml.h> | 
|  | #include <dlgs.h> | 
|  | #include <lzexpand.h> | 
|  | #include <mmsystem.h> | 
|  | #include <nb30.h> | 
|  | #include <rpc.h> | 
|  | #include <shellapi.h> | 
|  | #include <winperf.h> | 
|  | #if defined(__USE_W32_SOCKETS) || !defined(__CYGWIN__) | 
|  | #include <winsock.h> | 
|  | #endif | 
|  | #ifndef NOCRYPT | 
|  | #include <wincrypt.h> | 
|  | #include <winefs.h> | 
|  | #include <winscard.h> | 
|  | #endif | 
|  |  | 
|  | #ifndef NOUSER | 
|  | #ifndef NOGDI | 
|  | #include <winspool.h> | 
|  | #ifdef INC_OLE1 | 
|  | #include <ole.h> | 
|  | #else | 
|  | #include <ole2.h> | 
|  | #endif | 
|  | #include <commdlg.h> | 
|  | #endif | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #ifndef __CYGWIN__ | 
|  | #include <stralign.h> | 
|  | #endif | 
|  |  | 
|  | #ifdef INC_OLE2 | 
|  | #include <ole2.h> | 
|  | #endif | 
|  |  | 
|  | #ifndef NOSERVICE | 
|  | #include <winsvc.h> | 
|  | #endif | 
|  |  | 
|  | #ifndef NOMCX | 
|  | #include <mcx.h> | 
|  | #endif | 
|  |  | 
|  | #ifndef NOIME | 
|  | #include <imm.h> | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | /* Restore old value of interface for Obj-C.  See above.  */ | 
|  | #ifdef __OBJC__ | 
|  | #pragma pop_macro("interface") | 
|  | #endif | 
|  |  | 
|  | #endif |