Some more fixes for compiling the user dll with -DSTRICT.

diff --git a/controls/combo.c b/controls/combo.c
index 7254e4a..3ff0f27 100644
--- a/controls/combo.c
+++ b/controls/combo.c
@@ -582,7 +582,7 @@
                                            lphc->droppedRect.right - lphc->droppedRect.left,
                                            lphc->droppedRect.bottom - lphc->droppedRect.top,
                                            hwnd, (HMENU)ID_CB_LISTBOX,
-                                           GetWindowLongA( hwnd, GWL_HINSTANCE ), lphc );
+                                           (HINSTANCE)GetWindowLongA( hwnd, GWL_HINSTANCE ), lphc );
       else
           lphc->hWndLBox = CreateWindowExA(lbeExStyle, "ComboLBox", NULL, lbeStyle,
                                            lphc->droppedRect.left,
@@ -590,7 +590,7 @@
                                            lphc->droppedRect.right - lphc->droppedRect.left,
                                            lphc->droppedRect.bottom - lphc->droppedRect.top,
                                            hwnd, (HMENU)ID_CB_LISTBOX,
-                                           GetWindowLongA( hwnd, GWL_HINSTANCE ), lphc );
+                                           (HINSTANCE)GetWindowLongA( hwnd, GWL_HINSTANCE ), lphc );
 
       if( lphc->hWndLBox )
       {
@@ -623,14 +623,14 @@
                                                    lphc->textRect.right - lphc->textRect.left,
                                                    lphc->textRect.bottom - lphc->textRect.top,
                                                    hwnd, (HMENU)ID_CB_EDIT,
-                                                   GetWindowLongA( hwnd, GWL_HINSTANCE ), NULL );
+                                                   (HINSTANCE)GetWindowLongA( hwnd, GWL_HINSTANCE ), NULL );
               else
                   lphc->hWndEdit = CreateWindowExA(0, "Edit", NULL, lbeStyle,
                                                    lphc->textRect.left, lphc->textRect.top,
                                                    lphc->textRect.right - lphc->textRect.left,
                                                    lphc->textRect.bottom - lphc->textRect.top,
                                                    hwnd, (HMENU)ID_CB_EDIT,
-                                                   GetWindowLongA( hwnd, GWL_HINSTANCE ), NULL );
+                                                   (HINSTANCE)GetWindowLongA( hwnd, GWL_HINSTANCE ), NULL );
 
 	      if( !lphc->hWndEdit )
 		bEdit = FALSE;
@@ -927,7 +927,8 @@
    */
   if (CB_DISABLED(lphc))
   {
-    hBkgBrush = SendMessageW(lphc->owner, WM_CTLCOLORSTATIC, hDC, (LPARAM)lphc->self );
+    hBkgBrush = (HBRUSH)SendMessageW(lphc->owner, WM_CTLCOLORSTATIC,
+				     (WPARAM)hDC, (LPARAM)lphc->self );
 
     /*
      * We have to change the text color since WM_CTLCOLORSTATIC will
@@ -940,11 +941,13 @@
   {
     if (lphc->wState & CBF_EDIT)
     {
-      hBkgBrush = SendMessageW(lphc->owner, WM_CTLCOLOREDIT, hDC, (LPARAM)lphc->self );
+      hBkgBrush = (HBRUSH)SendMessageW(lphc->owner, WM_CTLCOLOREDIT,
+				       (WPARAM)hDC, (LPARAM)lphc->self );
     }
     else
     {
-      hBkgBrush = SendMessageW(lphc->owner, WM_CTLCOLORLISTBOX, hDC, (LPARAM)lphc->self );
+      hBkgBrush = (HBRUSH)SendMessageW(lphc->owner, WM_CTLCOLORLISTBOX,
+				       (WPARAM)hDC, (LPARAM)lphc->self );
     }
   }
 
@@ -1946,14 +1949,14 @@
 
         case WM_PRINTCLIENT:
 	        if (lParam & PRF_ERASEBKGND)
-		  COMBO_EraseBackground(hwnd, lphc, wParam);
+		  COMBO_EraseBackground(hwnd, lphc, (HDC)wParam);
 
 		/* Fallthrough */
      	case WM_PAINT:
 		/* wParam may contain a valid HDC! */
-		return  COMBO_Paint(lphc, wParam);
+		return  COMBO_Paint(lphc, (HDC)wParam);
 	case WM_ERASEBKGND:
-		return  COMBO_EraseBackground(hwnd, lphc, wParam);
+		return  COMBO_EraseBackground(hwnd, lphc, (HDC)wParam);
 	case WM_GETDLGCODE:
 	{
 		LRESULT result = DLGC_WANTARROWS | DLGC_WANTCHARS;
@@ -1980,7 +1983,7 @@
 		  !(lphc->wState & CBF_NORESIZE) ) COMBO_Size( lphc );
 		return  TRUE;
 	case WM_SETFONT:
-		COMBO_Font( lphc, (HFONT16)wParam, (BOOL)lParam );
+		COMBO_Font( lphc, (HFONT)wParam, (BOOL)lParam );
 		return  TRUE;
 	case WM_GETFONT:
 		return  (LRESULT)lphc->hFont;
diff --git a/controls/desktop.c b/controls/desktop.c
index b26d828..689a46f 100644
--- a/controls/desktop.c
+++ b/controls/desktop.c
@@ -51,7 +51,7 @@
     DesktopWndProc,       /* procW */
     0,                    /* extra */
     IDC_ARROWA,           /* cursor */
-    COLOR_BACKGROUND+1    /* brush */
+    (HBRUSH)(COLOR_BACKGROUND+1)    /* brush */
 };
 
 
@@ -151,7 +151,7 @@
             (!fTileWallPaper && ((bitmapSize.cx < rect.right) || (bitmapSize.cy < rect.bottom))))
         {
             HBRUSH brush = hbrushPattern;
-            if (!brush) brush = GetClassLongA( hwnd, GCL_HBRBACKGROUND );
+            if (!brush) brush = (HBRUSH)GetClassLongA( hwnd, GCL_HBRBACKGROUND );
             /* Set colors in case pattern is a monochrome bitmap */
             SetBkColor( hdc, RGB(0,0,0) );
             SetTextColor( hdc, GetSysColor(COLOR_BACKGROUND) );
@@ -267,4 +267,3 @@
     else hbrushPattern = 0;
     return TRUE;
 }
-
diff --git a/controls/edit.c b/controls/edit.c
index 392db39..2d14b6d 100644
--- a/controls/edit.c
+++ b/controls/edit.c
@@ -1506,7 +1506,7 @@
  */
 static void EDIT_LockBuffer(EDITSTATE *es)
 {
-	HINSTANCE hInstance = GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
+	HINSTANCE hInstance = (HINSTANCE)GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
 	if (!es->text) {
 	    CHAR *textA = NULL;
 	    UINT countA = 0;
@@ -2181,7 +2181,7 @@
  */
 static void EDIT_UnlockBuffer(EDITSTATE *es, BOOL force)
 {
-	HINSTANCE hInstance = GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
+	HINSTANCE hInstance = (HINSTANCE)GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
 
 	/* Edit window might be already destroyed */
 	if(!IsWindow(es->hwndSelf))
@@ -2491,7 +2491,7 @@
  */
 static HLOCAL16 EDIT_EM_GetHandle16(EDITSTATE *es)
 {
-	HINSTANCE hInstance = GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
+	HINSTANCE hInstance = (HINSTANCE)GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
 	CHAR *textA;
 	UINT countA, alloc_size;
 
@@ -3121,7 +3121,7 @@
  */
 static void EDIT_EM_SetHandle(EDITSTATE *es, HLOCAL hloc)
 {
-	HINSTANCE hInstance = GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
+	HINSTANCE hInstance = (HINSTANCE)GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
 
 	if (!(es->style & ES_MULTILINE))
 		return;
@@ -3201,7 +3201,7 @@
  */
 static void EDIT_EM_SetHandle16(EDITSTATE *es, HLOCAL16 hloc)
 {
-	HINSTANCE hInstance = GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
+	HINSTANCE hInstance = (HINSTANCE)GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
 	INT countW, countA;
 	HLOCAL hloc32W_new;
 	WCHAR *textW;
@@ -3748,7 +3748,7 @@
  */
 static LRESULT EDIT_WM_Destroy(EDITSTATE *es)
 {
-	HINSTANCE hInstance = GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
+	HINSTANCE hInstance = (HINSTANCE)GetWindowLongW( es->hwndSelf, GWL_HINSTANCE );
 	LINEDEF *pc, *pp;
 
 	if (es->hloc32W) {
diff --git a/controls/static.c b/controls/static.c
index 50042ba..188e1e0 100644
--- a/controls/static.c
+++ b/controls/static.c
@@ -125,7 +125,7 @@
 	ERR("huh? hBitmap!=0, but not bitmap\n");
     	return 0;
     }
-    hOldBitmap = SetWindowLongA( hwnd, HICON_GWL_OFFSET, hBitmap );
+    hOldBitmap = (HBITMAP)SetWindowLongA( hwnd, HICON_GWL_OFFSET, (LONG)hBitmap );
     if (hBitmap)
     {
         BITMAP bm;
@@ -143,7 +143,7 @@
  */
 static HICON STATIC_LoadIconA( HWND hwnd, LPCSTR name )
 {
-    HINSTANCE hInstance = GetWindowLongA( hwnd, GWL_HINSTANCE );
+    HINSTANCE hInstance = (HINSTANCE)GetWindowLongA( hwnd, GWL_HINSTANCE );
     HICON hicon = LoadIconA( hInstance, name );
     if (!hicon) hicon = LoadIconA( 0, name );
     return hicon;
@@ -156,7 +156,7 @@
  */
 static HICON STATIC_LoadIconW( HWND hwnd, LPCWSTR name )
 {
-    HINSTANCE hInstance = GetWindowLongA( hwnd, GWL_HINSTANCE );
+    HINSTANCE hInstance = (HINSTANCE)GetWindowLongA( hwnd, GWL_HINSTANCE );
     HICON hicon = LoadIconW( hInstance, name );
     if (!hicon) hicon = LoadIconW( 0, name );
     return hicon;
@@ -169,7 +169,7 @@
  */
 static HBITMAP STATIC_LoadBitmapA( HWND hwnd, LPCSTR name )
 {
-    HINSTANCE hInstance = GetWindowLongA( hwnd, GWL_HINSTANCE );
+    HINSTANCE hInstance = (HINSTANCE)GetWindowLongA( hwnd, GWL_HINSTANCE );
     HBITMAP hbitmap = LoadBitmapA( hInstance, name );
     if (!hbitmap)  /* Try OEM icon (FIXME: is this right?) */
         hbitmap = LoadBitmapA( 0, name );
@@ -183,7 +183,7 @@
  */
 static HBITMAP STATIC_LoadBitmapW( HWND hwnd, LPCWSTR name )
 {
-    HINSTANCE hInstance = GetWindowLongA( hwnd, GWL_HINSTANCE );
+    HINSTANCE hInstance = (HINSTANCE)GetWindowLongA( hwnd, GWL_HINSTANCE );
     HBITMAP hbitmap = LoadBitmapW( hInstance, name );
     if (!hbitmap)  /* Try OEM icon (FIXME: is this right?) */
         hbitmap = LoadBitmapW( 0, name );
@@ -360,7 +360,7 @@
     case STM_SETIMAGE:
         switch(wParam) {
 	case IMAGE_BITMAP:
-	    lResult = STATIC_SetBitmap( hwnd, (HBITMAP)lParam, style );
+	    lResult = (LRESULT)STATIC_SetBitmap( hwnd, (HBITMAP)lParam, style );
 	    break;
 	case IMAGE_ICON:
 	    lResult = (LRESULT)STATIC_SetIcon( hwnd, (HICON)lParam, style );
@@ -418,7 +418,7 @@
   dis.itemData   = 0;
   GetClientRect( hwnd, &dis.rcItem );
 
-  SendMessageW( GetParent(hwnd), WM_CTLCOLORSTATIC, hdc, (LPARAM)hwnd );
+  SendMessageW( GetParent(hwnd), WM_CTLCOLORSTATIC, (WPARAM)hdc, (LPARAM)hwnd );
   SendMessageW( GetParent(hwnd), WM_DRAWITEM, id, (LPARAM)&dis );
 }
 
@@ -462,15 +462,15 @@
     if (style & SS_NOPREFIX)
 	wFormat |= DT_NOPREFIX;
 
-    if ((hFont = GetWindowLongA( hwnd, HFONT_GWL_OFFSET ))) SelectObject( hdc, hFont );
+    if ((hFont = (HFONT)GetWindowLongA( hwnd, HFONT_GWL_OFFSET ))) SelectObject( hdc, hFont );
 
     if ((style & SS_NOPREFIX) || ((style & SS_TYPEMASK) != SS_SIMPLE))
     {
-        hBrush = SendMessageW( GetParent(hwnd), WM_CTLCOLORSTATIC, hdc,
-			       (LPARAM)hwnd );
+        hBrush = (HBRUSH)SendMessageW( GetParent(hwnd), WM_CTLCOLORSTATIC,
+				       (WPARAM)hdc, (LPARAM)hwnd );
         if (!hBrush) /* did the app forget to call defwindowproc ? */
-            hBrush = DefWindowProcW(GetParent(hwnd), WM_CTLCOLORSTATIC, hdc,
-				    (LPARAM)hwnd);
+            hBrush = (HBRUSH)DefWindowProcW(GetParent(hwnd), WM_CTLCOLORSTATIC,
+					    (WPARAM)hdc, (LPARAM)hwnd);
         FillRect( hdc, &rc, hBrush );
     }
     if (!IsWindowEnabled(hwnd)) SetTextColor(hdc, GetSysColor(COLOR_GRAYTEXT));
@@ -529,7 +529,8 @@
     HICON hIcon;
 
     GetClientRect( hwnd, &rc );
-    hbrush = SendMessageW( GetParent(hwnd), WM_CTLCOLORSTATIC, hdc, (LPARAM)hwnd );
+    hbrush = (HBRUSH)SendMessageW( GetParent(hwnd), WM_CTLCOLORSTATIC,
+				   (WPARAM)hdc, (LPARAM)hwnd );
     FillRect( hdc, &rc, hbrush );
     if ((hIcon = (HICON)GetWindowLongA( hwnd, HICON_GWL_OFFSET )))
         DrawIcon( hdc, rc.left, rc.top, hIcon );
@@ -543,7 +544,8 @@
     HBITMAP hBitmap, oldbitmap;
 
     GetClientRect( hwnd, &rc );
-    hbrush = SendMessageW( GetParent(hwnd), WM_CTLCOLORSTATIC, hdc, (LPARAM)hwnd );
+    hbrush = (HBRUSH)SendMessageW( GetParent(hwnd), WM_CTLCOLORSTATIC,
+				   (WPARAM)hdc, (LPARAM)hwnd );
     FillRect( hdc, &rc, hbrush );
 
     if ((hBitmap = (HBITMAP)GetWindowLongA( hwnd, HICON_GWL_OFFSET )))
diff --git a/controls/uitools.c b/controls/uitools.c
index 4a6fd23..7171f7f 100644
--- a/controls/uitools.c
+++ b/controls/uitools.c
@@ -576,20 +576,6 @@
 
 
 /**********************************************************************
- *          DrawEdge   (USER.659)
- */
-BOOL16 WINAPI DrawEdge16( HDC16 hdc, LPRECT16 rc, UINT16 edge, UINT16 flags )
-{
-    RECT rect32;
-    BOOL ret;
-
-    CONV_RECT16TO32( rc, &rect32 );
-    ret = DrawEdge( hdc, &rect32, edge, flags );
-    CONV_RECT32TO16( &rect32, rc );
-    return ret;
-}
-
-/**********************************************************************
  *          DrawEdge   (USER32.@)
  */
 BOOL WINAPI DrawEdge( HDC hdc, LPRECT rc, UINT edge, UINT flags )
@@ -1383,22 +1369,6 @@
 
 
 /**********************************************************************
- *          DrawFrameControl  (USER.656)
- */
-BOOL16 WINAPI DrawFrameControl16( HDC16 hdc, LPRECT16 rc, UINT16 uType,
-                                  UINT16 uState )
-{
-    RECT rect32;
-    BOOL ret;
-
-    CONV_RECT16TO32( rc, &rect32 );
-    ret = DrawFrameControl( hdc, &rect32, uType, uState );
-    CONV_RECT32TO16( &rect32, rc );
-    return ret;
-}
-
-
-/**********************************************************************
  *          DrawFrameControl  (USER32.@)
  */
 BOOL WINAPI DrawFrameControl( HDC hdc, LPRECT rc, UINT uType,