1*fc0bc008SAndrew Rist /**************************************************************
2*fc0bc008SAndrew Rist  *
3*fc0bc008SAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
4*fc0bc008SAndrew Rist  * or more contributor license agreements.  See the NOTICE file
5*fc0bc008SAndrew Rist  * distributed with this work for additional information
6*fc0bc008SAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
7*fc0bc008SAndrew Rist  * to you under the Apache License, Version 2.0 (the
8*fc0bc008SAndrew Rist  * "License"); you may not use this file except in compliance
9*fc0bc008SAndrew Rist  * with the License.  You may obtain a copy of the License at
10*fc0bc008SAndrew Rist  *
11*fc0bc008SAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12*fc0bc008SAndrew Rist  *
13*fc0bc008SAndrew Rist  * Unless required by applicable law or agreed to in writing,
14*fc0bc008SAndrew Rist  * software distributed under the License is distributed on an
15*fc0bc008SAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*fc0bc008SAndrew Rist  * KIND, either express or implied.  See the License for the
17*fc0bc008SAndrew Rist  * specific language governing permissions and limitations
18*fc0bc008SAndrew Rist  * under the License.
19*fc0bc008SAndrew Rist  *
20*fc0bc008SAndrew Rist  *************************************************************/
21*fc0bc008SAndrew Rist 
22cdf0e10cSrcweir #ifdef __MINGW32__
23cdf0e10cSrcweir #define _GDI32_
24cdf0e10cSrcweir #include "macros.h"
25cdf0e10cSrcweir #include <w32api.h>
26cdf0e10cSrcweir #include <multimon.h>
27cdf0e10cSrcweir extern "C" {
28cdf0e10cSrcweir extern HMODULE hModuleUnicowsDLL;
29cdf0e10cSrcweir }
30cdf0e10cSrcweir 
ResolveThunk_UNICOWS(FARPROC * lppfn,LPCSTR lpLibFileName,LPCSTR lpFuncName,FARPROC lpfnFailure)31cdf0e10cSrcweir EXTERN_C void WINAPI ResolveThunk_UNICOWS( FARPROC *lppfn, LPCSTR lpLibFileName, LPCSTR lpFuncName, FARPROC lpfnFailure )
32cdf0e10cSrcweir {
33cdf0e10cSrcweir 	FARPROC	lpfnResult = (((LONG)GetVersion()&0x800000ff) == 0x80000004) ? GetProcAddress( hModuleUnicowsDLL, lpFuncName ) : GetProcAddress( LoadLibraryA( lpLibFileName ), lpFuncName );
34cdf0e10cSrcweir 
35cdf0e10cSrcweir 	if ( !lpfnResult )
36cdf0e10cSrcweir 		lpfnResult = lpfnFailure;
37cdf0e10cSrcweir 
38cdf0e10cSrcweir 	*lppfn = lpfnResult;
39cdf0e10cSrcweir }
40cdf0e10cSrcweir 
41cdf0e10cSrcweir static void GetProcAddress_Thunk();
42cdf0e10cSrcweir EXTERN_C { _declspec( dllexport ) FARPROC kernel32_GetProcAddress_Ptr = (FARPROC)GetProcAddress_Thunk; }
43cdf0e10cSrcweir static FARPROC WINAPI GetProcAddress_Failure (HINSTANCE,LPCSTR);
GetProcAddress_Thunk()44cdf0e10cSrcweir static void GetProcAddress_Thunk()
45cdf0e10cSrcweir {
46cdf0e10cSrcweir 	ResolveThunk_UNICOWS( &kernel32_GetProcAddress_Ptr, "kernel32.dll", "GetProcAddress", (FARPROC)GetProcAddress_Failure );
47cdf0e10cSrcweir 	asm("	movl	%ebp, %esp");
48cdf0e10cSrcweir 	asm("	popl	%ebp");
49cdf0e10cSrcweir 	asm("	jmp	*(%0)"::"m"(kernel32_GetProcAddress_Ptr));
50cdf0e10cSrcweir }
Internal_GetProcAddress(HINSTANCE,LPCSTR)51cdf0e10cSrcweir EXTERN_C FARPROC WINAPI Internal_GetProcAddress (HINSTANCE,LPCSTR)
52cdf0e10cSrcweir {
53cdf0e10cSrcweir 	asm("	popl	%ebp");
54cdf0e10cSrcweir 	asm("	jmp	*(%0)"::"m"(kernel32_GetProcAddress_Ptr));
55cdf0e10cSrcweir }
GetProcAddress_Failure(HINSTANCE,LPCSTR)56cdf0e10cSrcweir static FARPROC WINAPI GetProcAddress_Failure (HINSTANCE,LPCSTR)
57cdf0e10cSrcweir {
58cdf0e10cSrcweir 	SetLastError( ERROR_CALL_NOT_IMPLEMENTED );
59cdf0e10cSrcweir 	return (FARPROC)0;
60cdf0e10cSrcweir }
61cdf0e10cSrcweir 
62cdf0e10cSrcweir #define DEFINE_UNICOWS_THUNK( module, rettype, calltype, func, params ) \
63cdf0e10cSrcweir static void func##_Thunk(); \
64cdf0e10cSrcweir EXTERN_C { _declspec( dllexport ) FARPROC module##_##func##_Ptr = (FARPROC)func##_Thunk; } \
65cdf0e10cSrcweir static rettype calltype func##_##Failure params; \
66cdf0e10cSrcweir static void func##_Thunk() \
67cdf0e10cSrcweir { \
68cdf0e10cSrcweir 	ResolveThunk_UNICOWS( &module##_##func##_Ptr, #module ".dll", #func, (FARPROC)func##_##Failure ); \
69cdf0e10cSrcweir 	asm("	movl	%ebp, %esp"); \
70cdf0e10cSrcweir 	asm("	popl	%ebp"); \
71cdf0e10cSrcweir 	asm("	jmp	*(%0)"::"m"(module##_##func##_Ptr)); \
72cdf0e10cSrcweir } \
73cdf0e10cSrcweir EXTERN_C rettype calltype func params \
74cdf0e10cSrcweir { \
75cdf0e10cSrcweir 	asm("	popl	%ebp"); \
76cdf0e10cSrcweir 	asm("	jmp	*(%0)"::"m"(module##_##func##_Ptr)); \
77cdf0e10cSrcweir } \
78cdf0e10cSrcweir static rettype calltype func##_##Failure params \
79cdf0e10cSrcweir { \
80cdf0e10cSrcweir 	SetLastError( ERROR_CALL_NOT_IMPLEMENTED ); \
81cdf0e10cSrcweir 	return (rettype)0; \
82cdf0e10cSrcweir }
83cdf0e10cSrcweir 
84cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, ATOM, WINAPI, AddAtomW, (LPCWSTR) )
85cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, int, WINAPI, AddFontResourceW, (LPCWSTR) )
86cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, AddJobW, (HANDLE,DWORD,PBYTE,DWORD,PDWORD) )
87cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, AddPortW, (LPWSTR,HWND,LPWSTR) )
88cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, AddPrintProcessorW, (LPWSTR,LPWSTR,LPWSTR,LPWSTR) )
89cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, AddPrintProvidorW, (LPWSTR,DWORD,PBYTE) )
90cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, AddPrinterDriverW, (LPWSTR,DWORD,PBYTE) )
91cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, HANDLE, WINAPI, AddPrinterW, (LPWSTR,DWORD,PBYTE) )
92cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, LONG, WINAPI, AdvancedDocumentPropertiesW, (HWND,HANDLE,LPWSTR,PDEVMODE,PDEVMODEW) )
93cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, AppendMenuW, (HMENU,UINT,UINT_PTR,LPCWSTR) )
94cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, BeginUpdateResourceW, (LPCWSTR,BOOL) )
95cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, long, WINAPI, BroadcastSystemMessageW, (DWORD,LPDWORD,UINT,WPARAM,LPARAM) )
96cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, BuildCommDCBAndTimeoutsW, (LPCWSTR,LPDCB,LPCOMMTIMEOUTS) )
97cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, BuildCommDCBW, (LPCWSTR,LPDCB) )
98cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, CallMsgFilterW, (LPMSG,int) )
99cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, CallNamedPipeW, (LPCWSTR,PVOID,DWORD,PVOID,DWORD,PDWORD,DWORD) )
100cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LRESULT, WINAPI, CallWindowProcA, (WNDPROC,HWND,UINT,WPARAM,LPARAM) )
101cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LRESULT, WINAPI, CallWindowProcW, (WNDPROC,HWND,UINT,WPARAM,LPARAM) )
102cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LONG, WINAPI, ChangeDisplaySettingsExW, (LPCWSTR,LPDEVMODEW,HWND,DWORD,LPVOID) )
103cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LONG, WINAPI, ChangeDisplaySettingsW, (PDEVMODEW,DWORD) )
104cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, ChangeMenuW, (HMENU,UINT,LPCWSTR,UINT,UINT) )
105cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, DWORD, WINAPI, CharLowerBuffW, (LPWSTR,DWORD) )
106cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LPWSTR, WINAPI, CharLowerW, (LPWSTR) )
107cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LPWSTR, WINAPI, CharNextW, (LPCWSTR) )
108cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LPWSTR, WINAPI, CharPrevW, (LPCWSTR,LPCWSTR) )
109cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, CharToOemBuffW, (LPCWSTR,LPSTR,DWORD) )
110cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, CharToOemW, (LPCWSTR,LPSTR) )
111cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, DWORD, WINAPI, CharUpperBuffW, (LPWSTR,DWORD) )
112cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LPWSTR, WINAPI, CharUpperW, (LPWSTR) )
113cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( comdlg32, BOOL, WINAPI, ChooseColorW, (LPCHOOSECOLORW) )
114cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( comdlg32, BOOL, WINAPI, ChooseFontW, (LPCHOOSEFONTW) )
115cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, CommConfigDialogW, (LPCWSTR,HWND,LPCOMMCONFIG) )
116cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, CompareStringW, (LCID,DWORD,LPCWSTR,int,LPCWSTR,int) )
117cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, ConfigurePortW, (LPWSTR,HWND,LPWSTR) )
118cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, CopyAcceleratorTableW, (HACCEL,LPACCEL,int) )
119cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HENHMETAFILE, WINAPI, CopyEnhMetaFileW, (HENHMETAFILE,LPCWSTR) )
120cdf0e10cSrcweir //DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, CopyFileExW, (LPCWSTR,LPCWSTR,LPPROGRESS_ROUTINE,LPVOID,LPBOOL,DWORD) )
121cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, CopyFileW, (LPCWSTR,LPCWSTR,BOOL) )
122cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HMETAFILE, WINAPI, CopyMetaFileW, (HMETAFILE,LPCWSTR) )
123cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HACCEL, WINAPI, CreateAcceleratorTableW, (LPACCEL,int) )
124cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HCOLORSPACE, WINAPI, CreateColorSpaceW, (LPLOGCOLORSPACEW) )
125cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HDC, WINAPI, CreateDCW, (LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*) )
126cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HWND, WINAPI, CreateDialogIndirectParamW, (HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM) )
127cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HWND, WINAPI, CreateDialogParamW, (HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM) )
128cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, CreateDirectoryExW, (LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES) )
129cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, CreateDirectoryW, (LPCWSTR,LPSECURITY_ATTRIBUTES) )
130cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HDC, WINAPI, CreateEnhMetaFileW, (HDC,LPCWSTR,LPCRECT,LPCWSTR) )
131cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, CreateEventW, (LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCWSTR) )
132cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, CreateFileMappingW, (HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCWSTR) )
133cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, CreateFileW, (LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE) )
134cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HFONT, WINAPI, CreateFontIndirectW, (const LOGFONTW*) )
135cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HFONT, WINAPI, CreateFontW, (int,int,int,int,int,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCWSTR) )
136cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HDC, WINAPI, CreateICW, (LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*) )
137cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HWND, WINAPI, CreateMDIWindowW, (LPCWSTR,LPCWSTR,DWORD,int,int,int,int,HWND,HINSTANCE,LPARAM) )
138cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, CreateMailslotW, (LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES) )
139cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HDC, WINAPI, CreateMetaFileW, (LPCWSTR) )
140cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, CreateMutexW, (LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR) )
141cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, CreateProcessW, (LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION) )
142cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, CreateScalableFontResourceW, (DWORD,LPCWSTR,LPCWSTR,LPCWSTR) )
143cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, CreateSemaphoreW, (LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR) )
144cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( oeacc, HRESULT, STDAPICALLTYPE, CreateStdAccessibleProxyW, (HWND, LPCWSTR, LONG, REFIID, void**) )
145cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, CreateWaitableTimerW, (LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR) )
146cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HWND, WINAPI, CreateWindowExW, (DWORD,LPCWSTR,LPCWSTR,DWORD,int,int,int,int,HWND,HMENU,HINSTANCE,LPVOID) )
147cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HCONV, WINAPI, DdeConnect, (DWORD,HSZ,HSZ,PCONVCONTEXT) )
148cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HCONVLIST, WINAPI, DdeConnectList, (DWORD,HSZ,HSZ,HCONVLIST,PCONVCONTEXT) )
149cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HSZ, WINAPI, DdeCreateStringHandleW, (DWORD,LPCWSTR,int) )
150cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, UINT, WINAPI, DdeInitializeW, (PDWORD,PFNCALLBACK,DWORD,DWORD) )
151cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, UINT, WINAPI, DdeQueryConvInfo, (HCONV,DWORD,PCONVINFO) )
152cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, DWORD, WINAPI, DdeQueryStringW, (DWORD,HSZ,LPWSTR,DWORD,int) )
153cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LRESULT, WINAPI, DefDlgProcW, (HWND,UINT,WPARAM,LPARAM) )
154cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LRESULT, WINAPI, DefFrameProcW, (HWND,HWND,UINT,WPARAM,LPARAM) )
155cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LRESULT, WINAPI, DefMDIChildProcW, (HWND,UINT,WPARAM,LPARAM) )
156cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LRESULT, WINAPI, DefWindowProcW, (HWND,UINT,WPARAM,LPARAM) )
157cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, DeleteFileW, (LPCWSTR) )
158cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, DeleteMonitorW, (LPWSTR,LPWSTR,LPWSTR) )
159cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, DeletePortW, (LPWSTR,HWND,LPWSTR) )
160cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, DeletePrintProcessorW, (LPWSTR,LPWSTR,LPWSTR) )
161cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, DeletePrintProvidorW, (LPWSTR,LPWSTR,LPWSTR) )
162cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, DeletePrinterDriverW, (LPWSTR,LPWSTR,LPWSTR) )
163cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, DialogBoxIndirectParamW, (HINSTANCE,LPCDLGTEMPLATE,HWND,DLGPROC,LPARAM) )
164cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, DialogBoxParamW, (HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM) )
165cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LONG, WINAPI, DispatchMessageW, (const MSG*) )
166cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, DlgDirListComboBoxW, (HWND,LPWSTR,int,int,UINT) )
167cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, DlgDirListW, (HWND,LPWSTR,int,int,UINT) )
168cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, DlgDirSelectComboBoxExW, (HWND,LPWSTR,int,int) )
169cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, DlgDirSelectExW, (HWND,LPWSTR,int,int) )
170cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, UINT, WINAPI, DragQueryFileW, (HDROP,UINT,LPWSTR,UINT) )
171cdf0e10cSrcweir //DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, DrawStateW, (HDC,HBRUSH,DRAWSTATEPROC,LPARAM,WPARAM,int,int,int,int,UINT) )
172cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, DrawTextExW, (HDC,LPWSTR,int,LPRECT,UINT,LPDRAWTEXTPARAMS) )
173cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, DrawTextW, (HDC,LPCWSTR,int,LPRECT,UINT) )
174cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, EnableWindow, (HWND,BOOL) )
175cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, EndUpdateResourceW, (HANDLE,BOOL) )
176cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, EnumCalendarInfoExW, (CALINFO_ENUMPROCEXW,LCID,CALID,CALTYPE) )
177cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, EnumCalendarInfoW, (CALINFO_ENUMPROCW,LCID,CALID,CALTYPE) )
178cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, UINT, WINAPI, EnumClipboardFormats, (UINT) )
179cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, EnumDateFormatsExW, (DATEFMT_ENUMPROCEXW,LCID,DWORD) )
180cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, EnumDateFormatsW, (DATEFMT_ENUMPROCW,LCID,DWORD) )
181cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, EnumDisplayDevicesW, (LPCWSTR,DWORD,PDISPLAY_DEVICEW,DWORD) )
182cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, EnumDisplaySettingsExW, (LPCWSTR,DWORD,LPDEVMODEW,DWORD) )
183cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, EnumDisplaySettingsW, (LPCWSTR,DWORD,PDEVMODEW) )
184cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, int, WINAPI, EnumFontFamiliesExW, (HDC,PLOGFONTW,FONTENUMPROCW,LPARAM,DWORD) )
185cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, int, WINAPI, EnumFontFamiliesW, (HDC,LPCWSTR,FONTENUMPROCW,LPARAM) )
186cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, int, WINAPI, EnumFontsW, (HDC,LPCWSTR,FONTENUMPROCW,LPARAM) )
187cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, int, WINAPI, EnumICMProfilesW, (HDC,ICMENUMPROCW,LPARAM) )
188cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, EnumPropsA, (HWND,PROPENUMPROCA) )
189cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, EnumPropsExA, (HWND,PROPENUMPROCEXA,LPARAM) )
190cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, EnumPropsExW, (HWND,PROPENUMPROCEXW,LPARAM) )
191cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, EnumPropsW, (HWND,PROPENUMPROCW) )
192cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, EnumSystemCodePagesW, (CODEPAGE_ENUMPROCW,DWORD) )
193cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, EnumSystemLocalesW, (LOCALE_ENUMPROCW,DWORD) )
194cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, EnumTimeFormatsW, (TIMEFMT_ENUMPROCW,LCID,DWORD) )
195cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, ExpandEnvironmentStringsW, (LPCWSTR,LPWSTR,DWORD) )
196cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, ExtTextOutW, (HDC,int,int,UINT,LPCRECT,LPCWSTR,UINT,const INT*) )
197cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, UINT, WINAPI, ExtractIconExW, (LPCWSTR,int,HICON*,HICON*,UINT) )
198cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, HICON, WINAPI, ExtractIconW, (HINSTANCE,LPCWSTR,UINT) )
199cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, void, WINAPI, FatalAppExitW, (UINT,LPCWSTR) )
200cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, FillConsoleOutputCharacterW, (HANDLE,WCHAR,DWORD,COORD,PDWORD) )
201cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, ATOM, WINAPI, FindAtomW, (LPCWSTR) )
202cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, FindFirstChangeNotificationW, (LPCWSTR,BOOL,DWORD) )
203cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, FindFirstFileW, (LPCWSTR,LPWIN32_FIND_DATAW) )
204cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, FindNextFileW, (HANDLE,LPWIN32_FIND_DATAW) )
205cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HRSRC, WINAPI, FindResourceExW, (HINSTANCE,LPCWSTR,LPCWSTR,WORD) )
206cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HRSRC, WINAPI, FindResourceW, (HINSTANCE,LPCWSTR,LPCWSTR) )
207cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( comdlg32, HWND, WINAPI, FindTextW, (LPFINDREPLACEW) )
208cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HWND, WINAPI, FindWindowExW, (HWND,HWND,LPCWSTR,LPCWSTR) )
209cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HWND, WINAPI, FindWindowW, (LPCWSTR,LPCWSTR) )
210cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, FormatMessageW, (DWORD,PCVOID,DWORD,DWORD,LPWSTR,DWORD,va_list*) )
211cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, FreeEnvironmentStringsW, (LPWSTR) )
212cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, FtpCreateDirectoryW, (HANDLE,LPCWSTR) )
213cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, FtpDeleteFileW, (HANDLE,LPCWSTR) )
214cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, FtpFindFirstFileW, (HANDLE,LPCWSTR,LPWIN32_FIND_DATA,DWORD,DWORD) )
215cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, FtpGetCurrentDirectoryW, (HANDLE,LPWSTR,PDWORD) )
216cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, FtpRemoveDirectoryW, (HANDLE,LPCWSTR) )
217cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, FtpSetCurrentDirectoryW, (HANDLE,LPCWSTR) )
218cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, GetAltTabInfoW, (HWND,int,PALTTABINFO,LPWSTR,UINT) )
219cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, UINT, WINAPI, GetAtomNameW, (ATOM,LPWSTR,int) )
220cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetCPInfo, (UINT,LPCPINFO) )
221cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetCPInfoExA, (UINT,DWORD,LPCPINFOEXA) )
222cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetCPInfoExW, (UINT,DWORD,LPCPINFOEXW) )
223cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, GetCalendarInfoW, (LCID,CALID,CALTYPE,LPWSTR,int,LPDWORD) )
224cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, GetCharABCWidthsW, (HDC,UINT,UINT,LPABC) )
225cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, GetCharWidthFloatW, (HDC,UINT,UINT,PFLOAT) )
226cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, GetCharWidthW, (HDC,UINT,UINT,LPINT) )
227cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, DWORD, WINAPI, GetCharacterPlacementW, (HDC,LPCWSTR,int,int,LPGCP_RESULTSW,DWORD) )
228cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, GetClassInfoExW, (HINSTANCE,LPCWSTR,LPWNDCLASSEXW) )
229cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, GetClassInfoW, (HINSTANCE,LPCWSTR,LPWNDCLASSW) )
230cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, DWORD, WINAPI, GetClassLongW, (HWND,int) )
231cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, GetClassNameW, (HWND,LPWSTR,int) )
232cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HANDLE, WINAPI, GetClipboardData, (UINT) )
233cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, GetClipboardFormatNameW, (UINT,LPWSTR,int) )
234cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetComputerNameW, (LPWSTR,PDWORD) )
235cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetConsoleTitleW, (LPWSTR,DWORD) )
236cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, GetCurrencyFormatW, (LCID,DWORD,LPCWSTR,const CURRENCYFMTW*,LPWSTR,int) )
237cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetCurrentDirectoryW, (DWORD,LPWSTR) )
238cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, BOOL, WINAPI, GetCurrentHwProfileW, (LPHW_PROFILE_INFOW) )
239cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, GetDateFormatW, (LCID,DWORD,const SYSTEMTIME*,LPCWSTR,LPWSTR,int) )
240cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetDefaultCommConfigW, (LPCWSTR,LPCOMMCONFIG,PDWORD) )
241cdf0e10cSrcweir //DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetDiskFreeSpaceExW, (LPCWSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER) )
242cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetDiskFreeSpaceW, (LPCWSTR,PDWORD,PDWORD,PDWORD,PDWORD) )
243cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, UINT, WINAPI, GetDlgItemTextW, (HWND,int,LPWSTR,int) )
244cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, UINT, WINAPI, GetDriveTypeW, (LPCWSTR) )
245cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, UINT, WINAPI, GetEnhMetaFileDescriptionW, (HENHMETAFILE,UINT,LPWSTR) )
246cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HENHMETAFILE, WINAPI, GetEnhMetaFileW, (LPCWSTR) )
247cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, LPWSTR, WINAPI, GetEnvironmentStringsW, (void) )
248cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetEnvironmentVariableW, (LPCWSTR,LPWSTR,DWORD) )
249cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetFileAttributesExW, (LPCWSTR,GET_FILEEX_INFO_LEVELS,PVOID) )
250cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetFileAttributesW, (LPCWSTR) )
251cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( comdlg32, short, WINAPI, GetFileTitleW, (LPCWSTR,LPWSTR,WORD) )
252cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( version, DWORD, WINAPI, GetFileVersionInfoSizeW, (LPWSTR,PDWORD) )
253cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( version, BOOL, WINAPI, GetFileVersionInfoW, (LPWSTR,DWORD,DWORD,PVOID) )
254cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetFullPathNameW, (LPCWSTR,DWORD,LPWSTR,LPWSTR*) )
255cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, DWORD, WINAPI, GetGlyphOutlineW, (HDC,UINT,UINT,LPGLYPHMETRICS,DWORD,PVOID,const MAT2*) )
256cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, GetICMProfileW, (HDC,LPDWORD,LPWSTR) )
257cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, DWORD, WINAPI, GetKerningPairsW, (HDC,DWORD,LPKERNINGPAIR) )
258cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, GetKeyNameTextW, (LONG,LPWSTR,int) )
259cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, GetKeyboardLayoutNameW, (LPWSTR) )
260cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, GetLocaleInfoW, (LCID,LCTYPE,LPWSTR,int) )
261cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, GetLogColorSpaceW, (HCOLORSPACE,LPLOGCOLORSPACEW,DWORD) )
262cdf0e10cSrcweir //DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetLogicalDriveStringsW, (DWORD,LPWSTR) )
263cdf0e10cSrcweir //DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetLongPathNameW, (LPCWSTR,LPWSTR,DWORD) )
264cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, GetMenuItemInfoW, (HMENU,UINT,BOOL,LPMENUITEMINFOW) )
265cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, GetMenuStringW, (HMENU,UINT,LPWSTR,int,UINT) )
266cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, GetMessageW, (LPMSG,HWND,UINT,UINT) )
267cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HMETAFILE, WINAPI, GetMetaFileW, (LPCWSTR) )
268cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetModuleFileNameW, (HINSTANCE,LPWSTR,DWORD) )
269cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HMODULE, WINAPI, GetModuleHandleW, (LPCWSTR) )
270cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, GetMonitorInfoW, (HMONITOR,LPMONITORINFO) )
271cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetNamedPipeHandleStateW, (HANDLE,PDWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD) )
272cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, GetNumberFormatW, (LCID,DWORD,LPCWSTR,const NUMBERFMTW*,LPWSTR,int) )
273cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, int, WINAPI, GetObjectW, (HGDIOBJ,int,PVOID) )
274cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( msvfw32, BOOL, WINAPI, GetOpenFileNamePreviewW, (LPOPENFILENAMEW) )
275cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( comdlg32, BOOL, WINAPI, GetOpenFileNameW, (LPOPENFILENAMEW) )
276cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, UINT, WINAPI, GetOutlineTextMetricsW, (HDC,UINT,LPOUTLINETEXTMETRICW) )
277cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, DWORD, WINAPI, GetPrintProcessorDirectoryW, (LPWSTR,LPWSTR,DWORD,PBYTE,DWORD,PDWORD) )
278cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, UINT, WINAPI, GetPrivateProfileIntW, (LPCWSTR,LPCWSTR,INT,LPCWSTR) )
279cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetPrivateProfileSectionNamesW, (LPWSTR,DWORD,LPCWSTR) )
280cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetPrivateProfileSectionW, (LPCWSTR,LPWSTR,DWORD,LPCWSTR) )
281cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetPrivateProfileStringW, (LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,DWORD,LPCWSTR) )
282cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetPrivateProfileStructW, (LPCWSTR,LPCWSTR,LPVOID,UINT,LPCWSTR) )
283cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, UINT, WINAPI, GetProfileIntW, (LPCWSTR,LPCWSTR,INT) )
284cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetProfileSectionW, (LPCWSTR,LPWSTR,DWORD) )
285cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetProfileStringW, (LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,DWORD) )
286cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HANDLE, WINAPI, GetPropA, (HWND,LPCSTR) )
287cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HANDLE, WINAPI, GetPropW, (HWND,LPCWSTR) )
288cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( oleacc, UINT, WINAPI, GetRoleTextW, (DWORD,LPWSTR,UINT) )
289cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( msvfw32, BOOL, WINAPI, GetSaveFileNamePreviewW, (LPOPENFILENAMEW) )
290cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( comdlg32, BOOL, WINAPI, GetSaveFileNameW, (LPOPENFILENAMEW) )
291cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetShortPathNameW, (LPCWSTR,LPWSTR,DWORD) )
292cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, VOID, WINAPI, GetStartupInfoW, (LPSTARTUPINFOW) )
293cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( oleacc, UINT, WINAPI, GetStateTextW, (DWORD,LPWSTR,UINT) )
294cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetStringTypeExW, (LCID,DWORD,LPCWSTR,int,LPWORD) )
295cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetStringTypeW, (DWORD,LPCWSTR,int,LPWORD) )
296cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, UINT, WINAPI, GetSystemDirectoryW, (LPWSTR,UINT) )
297cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, UINT, WINAPI, GetSystemWindowsDirectoryW, (LPWSTR,UINT) )
298cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, DWORD, WINAPI, GetTabbedTextExtentW, (HDC,LPCWSTR,int,int,CONST INT*) )
299cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, UINT, WINAPI, GetTempFileNameW, (LPCWSTR,LPCWSTR,UINT,LPWSTR) )
300cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, GetTempPathW, (DWORD,LPWSTR) )
301cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, GetTextExtentExPointW, ( HDC,LPCWSTR,int,int,LPINT,LPINT,LPSIZE ) )
302cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, GetTextExtentPoint32W, ( HDC,LPCWSTR,int,LPSIZE) )
303cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, GetTextExtentPointW, (HDC,LPCWSTR,int,LPSIZE) )
304cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, int, WINAPI, GetTextFaceW, (HDC,int,LPWSTR) )
305cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, GetTextMetricsW, (HDC,LPTEXTMETRICW) )
306cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, GetTimeFormatW, (LCID,DWORD,const SYSTEMTIME*,LPCWSTR,LPWSTR,int) )
307cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, BOOL, WINAPI, GetUserNameW, (LPWSTR,PDWORD) )
308cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetVersionExW, (LPOSVERSIONINFOW) )
309cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, GetVolumeInformationW, (LPCWSTR,LPWSTR,DWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD) )
310cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LONG, WINAPI, GetWindowLongA, (HWND,int) )
311cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LONG, WINAPI, GetWindowLongW, (HWND,int) )
312cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, UINT, WINAPI, GetWindowModuleFileNameW, (HWND,LPWSTR,UINT) )
313cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, GetWindowTextLengthW, (HWND) )
314cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, GetWindowTextW, (HWND,LPWSTR,int) )
315cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, UINT, WINAPI, GetWindowsDirectoryW, (LPWSTR,UINT) )
316cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, ATOM, WINAPI, GlobalAddAtomW, ( LPCWSTR) )
317cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, ATOM, WINAPI, GlobalFindAtomW, (LPCWSTR) )
318cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, UINT, WINAPI, GlobalGetAtomNameW, (ATOM,LPWSTR,int) )
319cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, GopherFindFirstFileW, (HANDLE,LPCWSTR,LPCWSTR,LPVOID,DWORD,DWORD) )
320cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, GrayStringW, (HDC,HBRUSH,GRAYSTRINGPROC,LPARAM,int,int,int,int,int) )
321cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HANDLE, WINAPI, ImageList_LoadImageW, (HINSTANCE,LPCWSTR,int,int,COLORREF,UINT,UINT) )
322cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, InsertMenuItemW, (HMENU,UINT,BOOL,LPCMENUITEMINFOW) )
323cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, InsertMenuW, (HMENU,UINT,UINT,UINT,LPCWSTR) )
324cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, InternetFindNextFileW, (HANDLE,PVOID) )
325cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, IsBadStringPtrW, (LPCWSTR,UINT) )
326cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, IsCharAlphaNumericW, (WCHAR) )
327cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, IsCharAlphaW, (WCHAR) )
328cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, IsCharLowerW, (WCHAR) )
329cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, IsCharUpperW, (WCHAR) )
330cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, IsClipboardFormatAvailable, (UINT) )
331cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( sensapi, BOOL, APIENTRY, IsDestinationReachableW, (LPCWSTR,LPVOID) )
332cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, IsDialogMessageW, (HWND,LPMSG) )
333cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, BOOL, WINAPI, IsTextUnicode, (PCVOID,int,LPINT) )
334cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, IsValidCodePage, (UINT) )
335cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, IsWindowUnicode, (HWND) )
336cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, LCMapStringW, (LCID,DWORD,LPCWSTR,int,LPWSTR,int) )
337cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HACCEL, WINAPI, LoadAcceleratorsW, (HINSTANCE,LPCWSTR) )
338cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HBITMAP, WINAPI, LoadBitmapW, (HINSTANCE,LPCWSTR) )
339cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HCURSOR, WINAPI, LoadCursorFromFileW, (LPCWSTR) )
340cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HCURSOR, WINAPI, LoadCursorW, (HINSTANCE,LPCWSTR) )
341cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HICON, WINAPI, LoadIconW, (HINSTANCE,LPCWSTR) )
342cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HANDLE, WINAPI, LoadImageW, (HINSTANCE,LPCWSTR,UINT,int,int,UINT) )
343cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HKL, WINAPI, LoadKeyboardLayoutW, (LPCWSTR,UINT) )
344cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HINSTANCE, WINAPI, LoadLibraryExW, (LPCWSTR,HANDLE,DWORD) )
345cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HINSTANCE, WINAPI, LoadLibraryW, (LPCWSTR) )
346cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HMENU, WINAPI, LoadMenuIndirectW, (const MENUTEMPLATE*) )
347cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HMENU, WINAPI, LoadMenuW, (HINSTANCE,LPCWSTR) )
348cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, LoadStringW, (HINSTANCE,UINT,LPWSTR,int) )
349cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HINSTANCE, WINAPI, MLLoadLibraryW, (LPCWSTR,HANDLE,DWORD,LPCWSTR,BOOL) )
350cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, UINT, WINAPI, MapVirtualKeyExW, (UINT,UINT,HKL) )
351cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, UINT, WINAPI, MapVirtualKeyW, (UINT,UINT) )
352cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, MessageBoxExW, (HWND,LPCWSTR,LPCWSTR,UINT,WORD) )
353cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, MessageBoxIndirectW, (CONST MSGBOXPARAMSW*) )
354cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, MessageBoxW, (HWND,LPCWSTR,LPCWSTR,UINT) )
355cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, ModifyMenuW, (HMENU,UINT,UINT,UINT,LPCWSTR) )
356cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, MoveFileW, (LPCWSTR,LPCWSTR) )
357cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, MultiByteToWideChar, (UINT,DWORD,LPCSTR,int,LPWSTR,int) )
358cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, MultinetGetConnectionPerformanceW, (LPNETRESOURCEW,LPNETCONNECTINFOSTRUCT) )
359cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, OemToCharBuffW, (LPCSTR,LPWSTR,DWORD) )
360cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, OemToCharW, (LPCSTR,LPWSTR) )
361cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, OpenEventW, (DWORD,BOOL,LPCWSTR) )
362cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, OpenFileMappingW, (DWORD,BOOL,LPCWSTR) )
363cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, OpenMutexW, (DWORD,BOOL,LPCWSTR) )
364cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, OpenPrinterW, (LPWSTR,PHANDLE,LPPRINTER_DEFAULTSW) )
365cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, OpenSemaphoreW, (DWORD,BOOL,LPCWSTR) )
366cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, HANDLE, WINAPI, OpenWaitableTimerW, (DWORD,BOOL,LPCWSTR) )
367cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, void, WINAPI, OutputDebugStringW, (LPCWSTR) )
368cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( comdlg32, BOOL, WINAPI, PageSetupDlgW, (LPPAGESETUPDLGW) )
369cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, PeekConsoleInputW, (HANDLE,PINPUT_RECORD,DWORD,PDWORD) )
370cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, PeekMessageW, (LPMSG,HWND,UINT,UINT,UINT) )
371cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winmm, BOOL, WINAPI, PlaySoundW, (LPCWSTR,HMODULE,DWORD) )
372cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, PolyTextOutW, (HDC,const POLYTEXTW*,int) )
373cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, PostMessageW, (HWND,UINT,WPARAM,LPARAM) )
374cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, PostThreadMessageW, (DWORD,UINT,WPARAM,LPARAM) )
375cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( comdlg32, BOOL, WINAPI, PrintDlgW, (LPPRINTDLGW) )
376cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( comdlg32, DWORD, WINAPI, PrinterMessageBoxW, (HANDLE,DWORD,HWND,LPWSTR,LPWSTR,DWORD) )
377cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, QueryDosDeviceW, (LPCWSTR,LPWSTR,DWORD) )
378cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasConnectionNotificationW, (HANDLE, HANDLE, DWORD) )
379cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasCreatePhonebookEntryW, (HWND, LPCWSTR) )
380cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasDeleteEntryW, (LPCWSTR, LPCWSTR) )
381cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasDeleteSubEntryW, (LPCWSTR, LPCWSTR, DWORD) )
382cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasEditPhonebookEntryW, (HWND, LPCWSTR, LPCWSTR) )
383cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasEnumConnectionsW, (LPVOID, LPDWORD, LPDWORD) )
384cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasEnumDevicesW, (LPVOID, LPDWORD, LPDWORD) )
385cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasEnumEntriesW, (LPCWSTR, LPCWSTR, LPVOID, LPDWORD, LPDWORD) )
386cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasGetConnectStatusW, (HANDLE, LPVOID) )
387cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasGetEntryDialParamsW, (LPCWSTR, LPVOID, LPBOOL) )
388cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasGetEntryPropertiesW, (LPCWSTR, LPCWSTR, LPVOID, LPDWORD, LPBYTE, LPDWORD) )
389cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasGetErrorStringW, (UINT, LPWSTR, DWORD) )
390cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasHangUpW, (HANDLE) )
391cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasRenameEntryW, (LPCWSTR, LPCWSTR, LPCWSTR) )
392cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasSetEntryDialParamsW, (LPCWSTR, LPVOID, BOOL) )
393cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasSetEntryPropertiesW, (LPCWSTR, LPCWSTR, LPVOID, DWORD, LPBYTE, DWORD) )
394cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasSetSubEntryPropertiesW, (LPCWSTR, LPCWSTR, DWORD, LPVOID, DWORD, LPBYTE, DWORD) )
395cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( rasapi32, DWORD, APIENTRY, RasValidateEntryNameW, (LPCWSTR, LPCWSTR) )
396cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, ReadConsoleInputW, (HANDLE,PINPUT_RECORD,DWORD,PDWORD) )
397cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, ReadConsoleOutputCharacterW, (HANDLE,LPWSTR,DWORD,COORD,PDWORD) )
398cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, ReadConsoleOutputW, (HANDLE,PCHAR_INFO,COORD,COORD,PSMALL_RECT) )
399cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, ReadConsoleW, (HANDLE,PVOID,DWORD,PDWORD,PVOID) )
400cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegConnectRegistryW, (LPCWSTR,HKEY,PHKEY) )
401cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegCreateKeyExW, (HKEY,LPCWSTR,DWORD,LPWSTR,DWORD,REGSAM,LPSECURITY_ATTRIBUTES,PHKEY,PDWORD) )
402cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegCreateKeyW, (HKEY,LPCWSTR,PHKEY) )
403cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegDeleteKeyW, (HKEY,LPCWSTR) )
404cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegDeleteValueW, (HKEY,LPCWSTR) )
405cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegEnumKeyExW, (HKEY,DWORD,LPWSTR,PDWORD,PDWORD,LPWSTR,PDWORD,PFILETIME) )
406cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegEnumKeyW, (HKEY,DWORD,LPWSTR,DWORD) )
407cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegEnumValueW, (HKEY,DWORD,LPWSTR,PDWORD,PDWORD,PDWORD,LPBYTE,PDWORD) )
408cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegLoadKeyW, (HKEY,LPCWSTR,LPCWSTR) )
409cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegOpenKeyExW, (HKEY,LPCWSTR,DWORD,REGSAM,PHKEY) )
410cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegOpenKeyW, (HKEY,LPCWSTR,PHKEY) )
411cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegQueryInfoKeyW, (HKEY,LPWSTR,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PFILETIME) )
412cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegQueryMultipleValuesW, (HKEY,PVALENTW,DWORD,LPWSTR,LPDWORD) )
413cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegQueryValueExW, (HKEY,LPCWSTR,LPDWORD,LPDWORD,LPBYTE,LPDWORD) )
414cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegQueryValueW, (HKEY,LPCWSTR,LPWSTR,PLONG) )
415cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegReplaceKeyW, (HKEY,LPCWSTR,LPCWSTR,LPCWSTR) )
416cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegSaveKeyW, (HKEY,LPCWSTR,LPSECURITY_ATTRIBUTES) )
417cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegSetValueExW, (HKEY,LPCWSTR,DWORD,DWORD,const BYTE*,DWORD) )
418cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegSetValueW, (HKEY,LPCWSTR,DWORD,LPCWSTR,DWORD) )
419cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( advapi32, LONG, WINAPI, RegUnLoadKeyW, (HKEY,LPCWSTR) )
420cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, ATOM, WINAPI, RegisterClassExW, (CONST WNDCLASSEXW*) )
421cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, ATOM, WINAPI, RegisterClassW, (CONST WNDCLASSW*) )
422cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, UINT, WINAPI, RegisterClipboardFormatW, (LPCWSTR) )
423cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HDEVNOTIFY, WINAPI, RegisterDeviceNotificationW, (HANDLE,LPVOID,DWORD) )
424cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, UINT, WINAPI, RegisterWindowMessageW, (LPCWSTR) )
425cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, RemoveDirectoryW, (LPCWSTR) )
426cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, RemoveFontResourceW, (LPCWSTR) )
427cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HANDLE, WINAPI, RemovePropA, (HWND,LPCSTR) )
428cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HANDLE, WINAPI, RemovePropW, (HWND,LPCWSTR) )
429cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( comdlg32, HWND, WINAPI, ReplaceTextW, (LPFINDREPLACEW) )
430cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, HDC, WINAPI, ResetDCW, (HDC,const DEVMODEW*) )
431cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, LPVOID, WINAPI, SHBrowseForFolderW, (LPVOID) )
432cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, void, WINAPI, SHChangeNotify, (LONG,UINT,PCVOID,PCVOID) )
433cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, INT, WINAPI, SHCreateDirectoryExW, (HWND,LPCWSTR,LPSECURITY_ATTRIBUTES) )
434cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, int, WINAPI, SHFileOperationW, (LPSHFILEOPSTRUCTW) )
435cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, DWORD, WINAPI, SHGetFileInfoW, (LPCWSTR,DWORD,SHFILEINFOW*,UINT,UINT) )
436cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, BOOL, WINAPI, SHGetNewLinkInfoW, (LPCWSTR,DWORD,SHFILEINFOW*,UINT,UINT) )
437cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, BOOL, WINAPI, SHGetPathFromIDListW, (LPVOID,LPWSTR) )
438cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, int, __stdcall, SQLGetPrivateProfileStringW, (LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,int,LPCWSTR) )
439cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, BOOL, __stdcall, SQLWritePrivateProfileStringW, (LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR) )
440cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, ScrollConsoleScreenBufferW, (HANDLE,const SMALL_RECT*,const SMALL_RECT*,COORD,const CHAR_INFO*) )
441cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, SearchPathW, (LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPWSTR,LPWSTR*) )
442cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LONG, WINAPI, SendDlgItemMessageW, (HWND,int,UINT,WPARAM,LPARAM) )
443cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, SendMessageCallbackW, (HWND,UINT,WPARAM,LPARAM,SENDASYNCPROC,DWORD) )
444cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LRESULT, WINAPI, SendMessageTimeoutW, (HWND,UINT,WPARAM,LPARAM,UINT,UINT,PDWORD) )
445cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LRESULT, WINAPI, SendMessageW, (HWND,UINT,WPARAM,LPARAM) )
446cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, SendNotifyMessageW, (HWND,UINT,WPARAM,LPARAM) )
447cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, SetCalendarInfoW, (LCID,CALID,CALTYPE,LPCWSTR) )
448cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, DWORD, WINAPI, SetClassLongW, (HWND,int,LONG) )
449cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, SetComputerNameW, (LPCWSTR) )
450cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, SetConsoleTitleW, (LPCWSTR) )
451cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, SetCurrentDirectoryW, (LPCWSTR) )
452cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, SetDefaultCommConfigW, (LPCWSTR,LPCOMMCONFIG,DWORD) )
453cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, SetDlgItemTextW, (HWND,int,LPCWSTR) )
454cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, SetEnvironmentVariableW, (LPCWSTR,LPCWSTR) )
455cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, SetFileAttributesW, (LPCWSTR,DWORD) )
456cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, SetICMProfileW, (HDC,LPWSTR) )
457cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, SetJobW, (HANDLE,DWORD,DWORD,PBYTE,DWORD) )
458cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, SetLocaleInfoW, (LCID,LCTYPE,LPCWSTR) )
459cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, SetMenuItemInfoW, ( HMENU,UINT,BOOL,LPCMENUITEMINFOW) )
460cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, SetPrinterDataW, (HANDLE,LPWSTR,DWORD,PBYTE,DWORD) )
461cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, BOOL, WINAPI, SetPrinterW, (HANDLE,DWORD,PBYTE,DWORD) )
462cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, SetPropA, (HWND,LPCSTR,HANDLE) )
463cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, SetPropW, (HWND,LPCWSTR,HANDLE) )
464cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, SetVolumeLabelW, (LPCWSTR,LPCWSTR) )
465cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LONG, WINAPI, SetWindowLongA, (HWND,int,LONG) )
466cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LONG, WINAPI, SetWindowLongW, (HWND,int,LONG) )
467cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, SetWindowTextW, (HWND,LPCWSTR) )
468cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HHOOK, WINAPI, SetWindowsHookExW, (int,HOOKPROC,HINSTANCE,DWORD) )
469cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, HHOOK, WINAPI, SetWindowsHookW, (int,HOOKPROC) )
470cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, int, WINAPI, ShellAboutW, (HWND,LPCWSTR,LPCWSTR,HICON) )
471cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, BOOL, WINAPI, ShellExecuteExW, (LPSHELLEXECUTEINFOW) )
472cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, HINSTANCE, WINAPI, ShellExecuteW, (HWND,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,INT) )
473cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( shell32, BOOL, WINAPI, Shell_NotifyIconW, (DWORD,PNOTIFYICONDATAW) )
474cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winspool, DWORD, WINAPI, StartDocPrinterW, (HANDLE,DWORD,PBYTE) )
475cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, int, WINAPI, StartDocW, (HDC,const DOCINFOW*) )
476cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, SystemParametersInfoW, (UINT,UINT,PVOID,UINT) )
477cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, LONG, WINAPI, TabbedTextOutW, (HDC,int,int,LPCWSTR,int,int,CONST INT*,int) )
478cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, TextOutW, (HDC,int,int,LPCWSTR,int) )
479cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, TranslateAcceleratorW, (HWND,HACCEL,LPMSG) )
480cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, UnregisterClassW, (LPCWSTR,HINSTANCE) )
481cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( gdi32, BOOL, WINAPI, UpdateICMRegKeyW, (DWORD,LPWSTR,LPWSTR,UINT) )
482cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, UpdateResourceW, (HANDLE,LPCWSTR,LPCWSTR,WORD,PVOID,DWORD) )
483cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( version, DWORD, WINAPI, VerFindFileW, (DWORD,LPWSTR,LPWSTR,LPWSTR,LPWSTR,PUINT,LPWSTR,PUINT) )
484cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( version, DWORD, WINAPI, VerInstallFileW, (DWORD,LPWSTR,LPWSTR,LPWSTR,LPWSTR,LPWSTR,LPWSTR,PUINT) )
485cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, DWORD, WINAPI, VerLanguageNameW, (DWORD,LPWSTR,DWORD) )
486cdf0e10cSrcweir #if ( __W32API_MAJOR_VERSION > 3 ) || ( __W32API_MAJOR_VERSION == 3 && __W32API_MINOR_VERSION > 13 )
487cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( version, BOOL, WINAPI, VerQueryValueW, (const LPVOID,LPCWSTR,LPVOID*,PUINT) )
488cdf0e10cSrcweir #else
489cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( version, BOOL, WINAPI, VerQueryValueW, (const LPVOID,LPWSTR,LPVOID*,PUINT) )
490cdf0e10cSrcweir #endif
491cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, SHORT, WINAPI, VkKeyScanExW, (WCHAR,HKL) )
492cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, SHORT, WINAPI, VkKeyScanW, (WCHAR) )
493cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, DWORD, WINAPI, SetupDecompressOrCopyFileW, (PCWSTR,PCWSTR,PUINT) )
494cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetAddConnection2W, (LPNETRESOURCEW,LPCWSTR,LPCWSTR,DWORD) )
495cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetAddConnection3W, (HWND,LPNETRESOURCEW,LPCWSTR,LPCWSTR,DWORD) )
496cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetAddConnectionW, (LPCWSTR,LPCWSTR,LPCWSTR) )
497cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetCancelConnection2W, (LPCWSTR,DWORD,BOOL) )
498cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetCancelConnectionW, (LPCWSTR,BOOL) )
499cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetConnectionDialog1W, (LPCONNECTDLGSTRUCTW) )
500cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetDisconnectDialog1W, (LPDISCDLGSTRUCTW) )
501cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetEnumResourceW, (HANDLE,PDWORD,PVOID,PDWORD) )
502cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetGetConnectionW, (LPCWSTR,LPWSTR,PDWORD) )
503cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetGetLastErrorW, (PDWORD,LPWSTR,DWORD,LPWSTR,DWORD) )
504cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetGetNetworkInformationW, (LPCWSTR,LPNETINFOSTRUCT) )
505cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetGetProviderNameW, (DWORD,LPWSTR,PDWORD) )
506cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetGetResourceInformationW, (LPNETRESOURCEW,LPVOID,LPDWORD,LPWSTR*) )
507cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetGetResourceParentW, (LPNETRESOURCEW,LPVOID,LPDWORD) )
508cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetGetUniversalNameW, (LPCWSTR,DWORD,PVOID,PDWORD) )
509cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetGetUserW, (LPCWSTR,LPWSTR,PDWORD) )
510cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetOpenEnumW, (DWORD,DWORD,DWORD,LPNETRESOURCEW,LPHANDLE) )
511cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( mpr, DWORD, APIENTRY, WNetUseConnectionW, (HWND,LPNETRESOURCEW,LPCWSTR,LPCWSTR,DWORD,LPWSTR,PDWORD,PDWORD) )
512cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, WaitNamedPipeW, (LPCWSTR,DWORD) )
513cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, WideCharToMultiByte, (UINT,DWORD,LPCWSTR,int,LPSTR,int,LPCSTR,LPBOOL) )
514cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, BOOL, WINAPI, WinHelpW, (HWND,LPCWSTR,UINT,DWORD) )
515cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, WriteConsoleInputW, (HANDLE,const INPUT_RECORD*,DWORD,PDWORD) )
516cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, WriteConsoleOutputCharacterW, (HANDLE,LPCWSTR,DWORD,COORD,PDWORD) )
517cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, WriteConsoleOutputW, (HANDLE,const CHAR_INFO*,COORD,COORD,PSMALL_RECT) )
518cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, WriteConsoleW, (HANDLE,PCVOID,DWORD,PDWORD,PVOID) )
519cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, WritePrivateProfileSectionW, (LPCWSTR,LPCWSTR,LPCWSTR) )
520cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, WritePrivateProfileStringW, (LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR) )
521cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, WritePrivateProfileStructW, (LPCWSTR,LPCWSTR,LPVOID,UINT,LPCWSTR) )
522cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, WriteProfileSectionW, (LPCWSTR,LPCWSTR) )
523cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, BOOL, WINAPI, WriteProfileStringW, (LPCWSTR,LPCWSTR,LPCWSTR) )
524cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( avicap32, HWND, WINAPI, capCreateCaptureWindowW, (LPCWSTR, DWORD, int, int, int, int, HWND, int) )
525cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( avicap32, BOOL, WINAPI, capGetDriverDescriptionW, (UINT, LPWSTR, int, LPWSTR, int) )
526cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, LPWSTR, WINAPI, lstrcatW, (LPWSTR,LPCWSTR) )
527cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, lstrcmpW, (LPCWSTR,LPCWSTR) )
528cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, lstrcmpiW, ( LPCWSTR,LPCWSTR) )
529cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, LPWSTR, WINAPI, lstrcpyW, (LPWSTR,LPCWSTR) )
530cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, LPWSTR, WINAPI, lstrcpynW, (LPWSTR,LPCWSTR,int) )
531cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( kernel32, int, WINAPI, lstrlenW, (LPCWSTR) )
532cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winmm, BOOL, WINAPI, sndPlaySoundW, (LPCWSTR,UINT) )
533cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( winmm, PROC, WINAPI, wglGetProcAddress, (LPCSTR) )
534cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPIV, wsprintfW, (LPWSTR,LPCWSTR,...) )
535cdf0e10cSrcweir DEFINE_UNICOWS_THUNK( user32, int, WINAPI, wvsprintfW, (LPWSTR,LPCWSTR,va_list arglist) )
536cdf0e10cSrcweir #endif
537