Made the include files self sufficient.

diff --git a/dlls/dinput/dinput_main.c b/dlls/dinput/dinput_main.c
index 848bf69..9265ddd 100644
--- a/dlls/dinput/dinput_main.c
+++ b/dlls/dinput/dinput_main.c
@@ -306,7 +306,7 @@
 	    ((diph->dwHow == DIPH_BYID)) ? "DIPH_BYID" : "unknown")));
 }
 
-static void _dump_OBJECTINSTANCE(DIDEVICEOBJECTINSTANCE *ddoi) {
+static void _dump_OBJECTINSTANCEA(DIDEVICEOBJECTINSTANCEA *ddoi) {
   if (TRACE_ON(dinput)) {
     DPRINTF("    - enumerating : 0x%08lx - %2ld - 0x%08lx - %s\n",
 	    ddoi->guidType.Data1, ddoi->dwOfs, ddoi->dwType, ddoi->tszName);
@@ -1708,7 +1708,7 @@
 	DWORD dwFlags)
 {
   ICOM_THIS(SysMouseAImpl,iface);
-  DIDEVICEOBJECTINSTANCE ddoi;
+  DIDEVICEOBJECTINSTANCEA ddoi;
   
   TRACE("(this=%p,%p,%p,%08lx)\n", This, lpCallback, lpvRef, dwFlags);
   if (TRACE_ON(dinput)) {
@@ -1718,7 +1718,7 @@
   }
 
   /* Only the fields till dwFFMaxForce are relevant */
-  ddoi.dwSize = FIELD_OFFSET(DIDEVICEOBJECTINSTANCE, dwFFMaxForce);
+  ddoi.dwSize = FIELD_OFFSET(DIDEVICEOBJECTINSTANCEA, dwFFMaxForce);
     
   /* In a mouse, we have : two relative axis and three buttons */
   if ((dwFlags == DIDFT_ALL) ||
@@ -1728,7 +1728,7 @@
     ddoi.dwOfs = This->offset_array[WINE_MOUSE_X_POSITION];
     ddoi.dwType = DIDFT_MAKEINSTANCE(WINE_MOUSE_X_AXIS_INSTANCE) | DIDFT_RELAXIS;
     strcpy(ddoi.tszName, "X-Axis");
-    _dump_OBJECTINSTANCE(&ddoi);
+    _dump_OBJECTINSTANCEA(&ddoi);
     if (lpCallback(&ddoi, lpvRef) != DIENUM_CONTINUE) return DI_OK;
     
     /* Y axis */
@@ -1736,7 +1736,7 @@
     ddoi.dwOfs = This->offset_array[WINE_MOUSE_Y_POSITION];
     ddoi.dwType = DIDFT_MAKEINSTANCE(WINE_MOUSE_Y_AXIS_INSTANCE) | DIDFT_RELAXIS;
     strcpy(ddoi.tszName, "Y-Axis");
-    _dump_OBJECTINSTANCE(&ddoi);
+    _dump_OBJECTINSTANCEA(&ddoi);
     if (lpCallback(&ddoi, lpvRef) != DIENUM_CONTINUE) return DI_OK;
   }
 
@@ -1748,21 +1748,21 @@
     ddoi.dwOfs = This->offset_array[WINE_MOUSE_L_POSITION];
     ddoi.dwType = DIDFT_MAKEINSTANCE(WINE_MOUSE_L_BUTTON_INSTANCE) | DIDFT_PSHBUTTON;
     strcpy(ddoi.tszName, "Left-Button");
-    _dump_OBJECTINSTANCE(&ddoi);
+    _dump_OBJECTINSTANCEA(&ddoi);
     if (lpCallback(&ddoi, lpvRef) != DIENUM_CONTINUE) return DI_OK;
 
     /* Right button */
     ddoi.dwOfs = This->offset_array[WINE_MOUSE_R_POSITION];
     ddoi.dwType = DIDFT_MAKEINSTANCE(WINE_MOUSE_R_BUTTON_INSTANCE) | DIDFT_PSHBUTTON;
     strcpy(ddoi.tszName, "Right-Button");
-    _dump_OBJECTINSTANCE(&ddoi);
+    _dump_OBJECTINSTANCEA(&ddoi);
     if (lpCallback(&ddoi, lpvRef) != DIENUM_CONTINUE) return DI_OK;
 
     /* Middle button */
     ddoi.dwOfs = This->offset_array[WINE_MOUSE_M_POSITION];
     ddoi.dwType = DIDFT_MAKEINSTANCE(WINE_MOUSE_M_BUTTON_INSTANCE) | DIDFT_PSHBUTTON;
     strcpy(ddoi.tszName, "Middle-Button");
-    _dump_OBJECTINSTANCE(&ddoi);
+    _dump_OBJECTINSTANCEA(&ddoi);
     if (lpCallback(&ddoi, lpvRef) != DIENUM_CONTINUE) return DI_OK;
   }
 
@@ -2048,7 +2048,7 @@
 	DWORD dwFlags)
 {
   ICOM_THIS(JoystickAImpl,iface);
-  DIDEVICEOBJECTINSTANCE ddoi;
+  DIDEVICEOBJECTINSTANCEA ddoi;
   int xfd = This->joyfd;
 
   TRACE("(this=%p,%p,%p,%08lx)\n", This, lpCallback, lpvRef, dwFlags);
@@ -2059,7 +2059,7 @@
   }
 
   /* Only the fields till dwFFMaxForce are relevant */
-  ddoi.dwSize = FIELD_OFFSET(DIDEVICEOBJECTINSTANCE, dwFFMaxForce);
+  ddoi.dwSize = FIELD_OFFSET(DIDEVICEOBJECTINSTANCEA, dwFFMaxForce);
     
   /* For the joystick, do as is done in the GetCapabilities function */
   if ((dwFlags == DIDFT_ALL) ||
@@ -2091,7 +2091,7 @@
       }
       ddoi.dwType = DIDFT_MAKEINSTANCE((0x0001 << i) << WINE_JOYSTICK_AXIS_BASE) | DIDFT_ABSAXIS;
       sprintf(ddoi.tszName, "%d-Axis", i);
-      _dump_OBJECTINSTANCE(&ddoi);
+      _dump_OBJECTINSTANCEA(&ddoi);
       if (lpCallback(&ddoi, lpvRef) != DIENUM_CONTINUE) return DI_OK;
     }
   }
@@ -2112,7 +2112,7 @@
       ddoi.dwOfs = DIJOFS_BUTTON(i);
       ddoi.dwType = DIDFT_MAKEINSTANCE((0x0001 << i) << WINE_JOYSTICK_BUTTON_BASE) | DIDFT_PSHBUTTON;
       sprintf(ddoi.tszName, "%d-Button", i);
-      _dump_OBJECTINSTANCE(&ddoi);
+      _dump_OBJECTINSTANCEA(&ddoi);
       if (lpCallback(&ddoi, lpvRef) != DIENUM_CONTINUE) return DI_OK;
     }
   }
diff --git a/graphics/dispdib.c b/graphics/dispdib.c
index dc5ec4f..6c985ed 100644
--- a/graphics/dispdib.c
+++ b/graphics/dispdib.c
@@ -6,13 +6,15 @@
  */
 
 #include <string.h>
+#include "windef.h"
+#include "wingdi.h"
+#include "wine/wingdi16.h"
 #include "miscemu.h"
 #include "dispdib.h"
 #include "vga.h"
 #include "debugtools.h"
-#include "wine/wingdi16.h"
 
-DEFAULT_DEBUG_CHANNEL(ddraw)
+DEFAULT_DEBUG_CHANNEL(ddraw);
 
 static int dispdib_multi = 0;
 
diff --git a/include/animate.h b/include/animate.h
index bd6c006..1114212 100644
--- a/include/animate.h
+++ b/include/animate.h
@@ -8,6 +8,7 @@
 #define __WINE_ANIMATE_H
 
 #include "windef.h"
+#include "winbase.h"
 #include "vfw.h"
 
 typedef struct tagANIMATE_INFO
diff --git a/include/button.h b/include/button.h
index 61e1555..e4e84ad 100644
--- a/include/button.h
+++ b/include/button.h
@@ -7,6 +7,7 @@
 #ifndef __WINE_BUTTON_H
 #define __WINE_BUTTON_H
 
+#include "windef.h"
 #include "wingdi.h"
 
   /* Extra info for BUTTON windows */
diff --git a/include/crtdll.h b/include/crtdll.h
index 17e184e..6a600c0 100644
--- a/include/crtdll.h
+++ b/include/crtdll.h
@@ -41,6 +41,18 @@
 LPWSTR __cdecl CRTDLL__wcsrev( LPWSTR str );
 LPWSTR __cdecl CRTDLL__wcsset( LPWSTR str, WCHAR c );
 LPWSTR __cdecl CRTDLL__wcsupr( LPWSTR str );
+INT    __cdecl CRTDLL_iswalnum( WCHAR wc );
+INT    __cdecl CRTDLL_iswalpha( WCHAR wc );
+INT    __cdecl CRTDLL_iswcntrl( WCHAR wc );
+INT    __cdecl CRTDLL_iswdigit( WCHAR wc );
+INT    __cdecl CRTDLL_iswgraph( WCHAR wc );
+INT    __cdecl CRTDLL_iswlower( WCHAR wc );
+INT    __cdecl CRTDLL_iswprint( WCHAR wc );
+INT    __cdecl CRTDLL_iswpunct( WCHAR wc );
+INT    __cdecl CRTDLL_iswspace( WCHAR wc );
+INT    __cdecl CRTDLL_iswupper( WCHAR wc );
+INT    __cdecl CRTDLL_iswxdigit( WCHAR wc );
+INT    __cdecl CRTDLL_iswctype( WCHAR wc, WCHAR wct );
 INT    __cdecl CRTDLL_mbstowcs( LPWSTR dst, LPCSTR src, INT n );
 INT    __cdecl CRTDLL_mbtowc( WCHAR *dst, LPCSTR str, INT n );
 WCHAR  __cdecl CRTDLL_towlower( WCHAR ch );
@@ -76,6 +88,17 @@
 #define _wcsrev      CRTDLL__wcsrev
 #define _wcsset      CRTDLL__wcsset
 #define _wcsupr      CRTDLL__wcsupr
+#define iswalnum     CRTDLL_iswalnum
+#define iswalpha     CRTDLL_iswalpha
+#define iswcntrl     CRTDLL_iswcntrl
+#define iswdigit     CRTDLL_iswdigit
+#define iswgraph     CRTDLL_iswgraph
+#define iswlower     CRTDLL_iswlower
+#define iswprint     CRTDLL_iswprint
+#define iswpunct     CRTDLL_iswpunct
+#define iswspace     CRTDLL_iswspace
+#define iswupper     CRTDLL_iswupper
+#define iswxdigit    CRTDLL_iswxdigit
 #define mbstowcs     CRTDLL_mbstowcs
 #define mbtowc       CRTDLL_mbtowc
 #define towlower     CRTDLL_towlower
diff --git a/include/dinput.h b/include/dinput.h
index 8d27085..4c3d437 100644
--- a/include/dinput.h
+++ b/include/dinput.h
@@ -172,7 +172,7 @@
     WORD	wExponent;
     WORD	wReserved;
 #endif /* DIRECTINPUT_VERSION >= 0x0500 */
-} DIDEVICEOBJECTINSTANCE, DIDEVICEOBJECTINSTANCEA, *LPDIDEVICEOBJECTINSTANCEA,*LPCDIDEVICEOBJECTINSTANCEA;
+} DIDEVICEOBJECTINSTANCEA, *LPDIDEVICEOBJECTINSTANCEA,*LPCDIDEVICEOBJECTINSTANCEA;
 
 typedef struct {
     DWORD	dwSize;
diff --git a/include/dispdib.h b/include/dispdib.h
index c1e9728..7304cf0 100644
--- a/include/dispdib.h
+++ b/include/dispdib.h
@@ -8,8 +8,6 @@
 #ifndef __WINE_DISPDIB_H
 #define __WINE_DISPDIB_H
 
-#include "wingdi.h" /* for LPBITMAPINFO */
-
 /* error codes */
 #define DISPLAYDIB_NOERROR        0x0000
 #define DISPLAYDIB_NOTSUPPORTED   0x0001
diff --git a/include/enhmetafile.h b/include/enhmetafile.h
index b24ee03..616241b 100644
--- a/include/enhmetafile.h
+++ b/include/enhmetafile.h
@@ -6,8 +6,9 @@
 #ifndef __WINE_ENHMETAFILE_H
 #define __WINE_ENHMETAFILE_H
 
-#include "wingdi.h"
 #include "gdi.h"
+#include "windef.h"
+#include "wingdi.h"
 
   /* GDI32 enhanced metafile object */
 typedef struct
diff --git a/include/imagelist.h b/include/imagelist.h
index 9c45222..b739774 100644
--- a/include/imagelist.h
+++ b/include/imagelist.h
@@ -7,7 +7,7 @@
 #ifndef __WINE_IMAGELIST_H
 #define __WINE_IMAGELIST_H
 
-
+#include "windef.h"
 #include "wingdi.h"
 
 #include "pshpack1.h"
diff --git a/include/metafile.h b/include/metafile.h
index 94cdad7..9e3c7ff 100644
--- a/include/metafile.h
+++ b/include/metafile.h
@@ -7,8 +7,9 @@
 #ifndef __WINE_METAFILE_H
 #define __WINE_METAFILE_H
 
-#include "wingdi.h"
 #include "gdi.h"
+#include "windef.h"
+#include "wingdi.h"
 
   /* GDI32 metafile object */
 typedef struct
diff --git a/include/region.h b/include/region.h
index 48a125b..0370c5f 100644
--- a/include/region.h
+++ b/include/region.h
@@ -7,8 +7,9 @@
 #ifndef __WINE_REGION_H
 #define __WINE_REGION_H
 
-#include "wingdi.h"
 #include "gdi.h"
+#include "windef.h"
+#include "wingdi.h"
 
 typedef struct {
     INT size;
diff --git a/include/sqltypes.h b/include/sqltypes.h
index 5a3761f..2d62f5b 100644
--- a/include/sqltypes.h
+++ b/include/sqltypes.h
@@ -12,26 +12,6 @@
 extern "C" {
 #endif
 
-#ifndef _WINDOWS
-#define FAR
-#define CALLBACK
-#define SQL_API
-#define	BOOL				int
-typedef void*				HWND;
-typedef char*				GUID;
-#define GUID_DEFINED
-typedef char				CHAR;
-typedef void				VOID;
-typedef unsigned short		WORD;
-typedef unsigned long		DWORD;
-typedef unsigned char		BYTE;
-typedef unsigned short 		WCHAR;
-typedef WCHAR* 		        LPWSTR;
-typedef const char*         LPCSTR;
-typedef char*               LPSTR;
-typedef DWORD*           	LPDWORD;
-#endif
-
 typedef unsigned char   SQLCHAR;
 
 #if (ODBCVER >= 0x0300)
diff --git a/include/wine/icmpapi.h b/include/wine/icmpapi.h
index df2717f..aa62257 100644
--- a/include/wine/icmpapi.h
+++ b/include/wine/icmpapi.h
@@ -10,6 +10,9 @@
 #ifndef __WINE_ICMPAPI_H
 #define __WINE_ICMPAPI_H
 
+#include "wine/ipexport.h"
+#include "windef.h"
+
 HANDLE WINAPI IcmpCreateFile(
     VOID
     );
diff --git a/include/wine/obj_commdlgbrowser.h b/include/wine/obj_commdlgbrowser.h
index 44b4bd7..56630c8 100644
--- a/include/wine/obj_commdlgbrowser.h
+++ b/include/wine/obj_commdlgbrowser.h
@@ -6,6 +6,7 @@
 #define __WINE_WINE_OBJ_COMMDLGBROWSER_H
 
 #include "winbase.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "wine/obj_base.h"
 #include "wine/obj_shellview.h"
diff --git a/include/wine/obj_contextmenu.h b/include/wine/obj_contextmenu.h
index e852b4a..61b1808 100644
--- a/include/wine/obj_contextmenu.h
+++ b/include/wine/obj_contextmenu.h
@@ -10,6 +10,7 @@
 #define __WINE_WINE_OBJ_CONTEXTMENU_H
 
 #include "winbase.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "wine/obj_base.h"
 
diff --git a/include/wine/obj_dockingwindowframe.h b/include/wine/obj_dockingwindowframe.h
index b2132b2..c1576be 100644
--- a/include/wine/obj_dockingwindowframe.h
+++ b/include/wine/obj_dockingwindowframe.h
@@ -6,6 +6,7 @@
 #define __WINE_WINE_OBJ_DOCKINGWINDOWFRAME_H
 
 #include "winbase.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "wine/obj_base.h"
 #include "wine/obj_inplace.h"
diff --git a/include/wine/obj_property.h b/include/wine/obj_property.h
index c668753..2aed400 100644
--- a/include/wine/obj_property.h
+++ b/include/wine/obj_property.h
@@ -10,6 +10,7 @@
 #include "wine/obj_oleaut.h" /* for DISPID */
 #include "wine/obj_storage.h"
 #include "winbase.h"
+#include "wingdi.h"
 #include "winuser.h"
 
 #ifdef __cplusplus
diff --git a/include/wine/obj_shellextinit.h b/include/wine/obj_shellextinit.h
index 7e245ae..b26dcb0 100644
--- a/include/wine/obj_shellextinit.h
+++ b/include/wine/obj_shellextinit.h
@@ -7,6 +7,7 @@
 
 #include "shell.h"
 #include "winbase.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "wine/obj_base.h"
 #include "wine/obj_dataobject.h"
diff --git a/include/wine/windef16.h b/include/wine/windef16.h
index d1935de..c25c5f6 100644
--- a/include/wine/windef16.h
+++ b/include/wine/windef16.h
@@ -7,6 +7,8 @@
 #ifndef __WINE_WINDEF16_H
 #define __WINE_WINDEF16_H
 
+#include "windef.h"
+
 /* Standard data types */
 
 typedef short           INT16;
diff --git a/include/wine/wingdi16.h b/include/wine/wingdi16.h
index 72ceab9..4148c01 100644
--- a/include/wine/wingdi16.h
+++ b/include/wine/wingdi16.h
@@ -1,6 +1,7 @@
 #ifndef __WINE_WINE_WINGDI16_H
 #define __WINE_WINE_WINGDI16_H
 
+#include "windef.h"
 #include "wingdi.h"
 
 #include "pshpack1.h"
diff --git a/include/winpos.h b/include/winpos.h
index 9a32f4d..b6a9a21 100644
--- a/include/winpos.h
+++ b/include/winpos.h
@@ -8,6 +8,8 @@
 #define __WINE_WINPOS_H
 
 #include "windef.h"
+#include "wingdi.h"
+#include "winuser.h"
 
 struct tagWND;