diff --git a/include/prsht.h b/include/prsht.h
index 26bbaa2823c45f13dacdc6d4b624fe685538d4d7..d47cad33d3478402dfa1f8a3a1eb7a88e17f22e4 100644
--- a/include/prsht.h
+++ b/include/prsht.h
@@ -58,7 +58,7 @@ typedef struct _PROPSHEETPAGEA
     union 
     {
         LPCSTR           pszTemplate;
-        LPCDLGTEMPLATE   pResource;
+        LPCDLGTEMPLATEA  pResource;
     }DUMMYUNIONNAME1;
     union
     {
@@ -84,7 +84,7 @@ typedef struct _PROPSHEETPAGEW
     union 
     {
         LPCWSTR          pszTemplate;
-        LPCDLGTEMPLATE   pResource;
+        LPCDLGTEMPLATEW  pResource;
     }DUMMYUNIONNAME1;
     union
     {
diff --git a/include/winuser.h b/include/winuser.h
index 8a1c5ed4e7d183bd3e7cd59c612cbe5b63395599..5b01fc15b97f9d4d827b798bc8687ec6237faab1 100644
--- a/include/winuser.h
+++ b/include/winuser.h
@@ -1642,8 +1642,15 @@ typedef struct tagDLGTEMPLATE
     short y;
     short cx;
     short cy;
-}DLGTEMPLATE, *LPDLGTEMPLATE;
-typedef const DLGTEMPLATE *LPCDLGTEMPLATE;
+} DLGTEMPLATE;
+
+typedef DLGTEMPLATE *LPDLGTEMPLATEA;
+typedef DLGTEMPLATE *LPDLGTEMPLATEW;
+#define LPDLGTEMPLATE WINELIB_NAME_AW(LPDLGTEMPLATE)
+typedef const DLGTEMPLATE *LPCDLGTEMPLATEA;
+typedef const DLGTEMPLATE *LPCDLGTEMPLATEW;
+#define LPCDLGTEMPLATE WINELIB_NAME_AW(LPCDLGTEMPLATE)
+
 /* Fixme: use this instaed of LPCVOID for CreateDialogIndirectParam and DialogBoxIndirectParam*/
 typedef struct tagDLGITEMTEMPLATE
 {
@@ -1655,9 +1662,15 @@ typedef struct tagDLGITEMTEMPLATE
     short cx;
     short cy;
     WORD id;
-}DLGITEMTEMPLATE, *LPDLGITEMTEMPLATE;
+} DLGITEMTEMPLATE;
+
+typedef DLGITEMTEMPLATE *LPDLGITEMTEMPLATEA;
+typedef DLGITEMTEMPLATE *LPDLGITEMTEMPLATEW;
+#define LPDLGITEMTEMPLATE WINELIB_NAME_AW(LPDLGITEMTEMPLATE)
+typedef const DLGITEMTEMPLATE *LPCDLGITEMTEMPLATEA;
+typedef const DLGITEMTEMPLATE *LPCDLGITEMTEMPLATEW;
+#define LPCDLGITEMTEMPLATE WINELIB_NAME_AW(LPCDLGITEMTEMPLATE)
 
-typedef const DLGITEMTEMPLATE *LPCDLGITEMTEMPLATE;
 
   /* CBT hook values */
 #define HCBT_MOVESIZE	    0