Moved everything out of windows.h.
diff --git a/include/dinput.h b/include/dinput.h
index 2ee382e..b9c0f77 100644
--- a/include/dinput.h
+++ b/include/dinput.h
@@ -3,6 +3,7 @@
#include "unknwn.h"
#include "mouse.h"
+#include "windef.h" /* for MAX_PATH */
#define STDMETHOD(xfn) HRESULT (CALLBACK *fn##xfn)
#define STDMETHOD_(ret,xfn) ret (CALLBACK *fn##xfn)
diff --git a/include/lzexpand.h b/include/lzexpand.h
index e518bc3..fb605ab 100644
--- a/include/lzexpand.h
+++ b/include/lzexpand.h
@@ -1,11 +1,14 @@
/* Includefile for the decompression library, lzexpand
*
* Copyright 1996 Marcus Meissner
+ * FIXME: Who's copyright are the prototypes?
*/
#ifndef __WINE_LZEXPAND_H
#define __WINE_LZEXPAND_H
+#include "winbase.h"
+
#define LZERROR_BADINHANDLE -1 /* -1 */
#define LZERROR_BADOUTHANDLE -2 /* -2 */
#define LZERROR_READ -3 /* -3 */
@@ -15,4 +18,35 @@
#define LZERROR_BADVALUE -7 /* -7 */
#define LZERROR_UNKNOWNALG -8 /* -8 */
+VOID WINAPI LZDone(void);
+LONG WINAPI CopyLZFile16(HFILE16,HFILE16);
+LONG WINAPI CopyLZFile32(HFILE32,HFILE32);
+#define CopyLZFile WINELIB_NAME(CopyLZFile)
+HFILE16 WINAPI LZOpenFile16(LPCSTR,LPOFSTRUCT,UINT16);
+HFILE32 WINAPI LZOpenFile32A(LPCSTR,LPOFSTRUCT,UINT32);
+HFILE32 WINAPI LZOpenFile32W(LPCWSTR,LPOFSTRUCT,UINT32);
+#define LZOpenFile WINELIB_NAME_AW(LZOpenFile)
+INT16 WINAPI LZRead16(HFILE16,LPVOID,UINT16);
+INT32 WINAPI LZRead32(HFILE32,LPVOID,UINT32);
+#define LZRead WINELIB_NAME(LZRead)
+INT16 WINAPI LZStart16(void);
+INT32 WINAPI LZStart32(void);
+#define LZStart WINELIB_NAME(LZStart)
+void WINAPI LZClose16(HFILE16);
+void WINAPI LZClose32(HFILE32);
+#define LZClose WINELIB_NAME(LZClose)
+LONG WINAPI LZCopy16(HFILE16,HFILE16);
+LONG WINAPI LZCopy32(HFILE32,HFILE32);
+#define LZCopy WINELIB_NAME(LZCopy)
+HFILE16 WINAPI LZInit16(HFILE16);
+HFILE32 WINAPI LZInit32(HFILE32);
+#define LZInit WINELIB_NAME(LZInit)
+LONG WINAPI LZSeek16(HFILE16,LONG,INT16);
+LONG WINAPI LZSeek32(HFILE32,LONG,INT32);
+#define LZSeek WINELIB_NAME(LZSeek)
+INT16 WINAPI GetExpandedName16(LPCSTR,LPSTR);
+INT32 WINAPI GetExpandedName32A(LPCSTR,LPSTR);
+INT32 WINAPI GetExpandedName32W(LPCWSTR,LPWSTR);
+#define GetExpandedName WINELIB_NAME_AW(GetExpandedName)
+
#endif /* __WINE_LZEXPAND_H */
diff --git a/include/ntdll.h b/include/ntdll.h
index f3fb24c..79328c8 100644
--- a/include/ntdll.h
+++ b/include/ntdll.h
@@ -7,6 +7,8 @@
* Copyright 1997 Marcus Meissner
*/
+#include "winbase.h"
+
/* assumes windows.h already included */
#ifdef __cplusplus
@@ -206,6 +208,8 @@
BOOL32 WINAPI LookupAccountSid32W(LPCWSTR,PSID,LPCWSTR,LPDWORD,LPCWSTR,LPDWORD,
PSID_NAME_USE);
LPSID_IDENTIFIER_AUTHORITY WINAPI GetSidIdentifierAuthority(LPSID);
+INT32 WINAPI AccessResource32(HMODULE32,HRSRC32);
+#define AccessResource WINELIB_NAME(AccessResource)
#ifdef __cplusplus
}
diff --git a/include/ole2.h b/include/ole2.h
index c91c9ae..4027d1d 100644
--- a/include/ole2.h
+++ b/include/ole2.h
@@ -5,6 +5,8 @@
#ifndef __WINE_OLE2_H
#define __WINE_OLE2_H
+#include "wintypes.h"
+
/* to be implemented */
/* FIXME: this should be defined somewhere in oleidl.h instead, should it be repeated here ? */
typedef LPVOID LPDROPTARGET;
@@ -23,4 +25,11 @@
typedef HGLOBAL32 HOLEMENU32;
+HRESULT WINAPI RegisterDragDrop16(HWND16,LPVOID);
+HRESULT WINAPI RegisterDragDrop32(HWND32,LPVOID);
+#define RegisterDragDrop WINELIB_NAME(RegisterDragDrop)
+HRESULT WINAPI RevokeDragDrop16(HWND16);
+HRESULT WINAPI RevokeDragDrop32(HWND32);
+#define RevokeDragDrop WINELIB_NAME(RevokeDragDrop)
+
#endif /* __WINE_OLE2_H */
diff --git a/include/shellapi.h b/include/shellapi.h
new file mode 100644
index 0000000..c91554f
--- /dev/null
+++ b/include/shellapi.h
@@ -0,0 +1,28 @@
+#ifndef _WINE_SHELLAPI_H
+#define _WINE_SHELLAPI_H
+
+#include "wintypes.h"
+
+HICON16 WINAPI ExtractIcon16(HINSTANCE16,LPCSTR,UINT16);
+HICON32 WINAPI ExtractIcon32A(HINSTANCE32,LPCSTR,UINT32);
+HICON32 WINAPI ExtractIcon32W(HINSTANCE32,LPCWSTR,UINT32);
+#define ExtractIcon WINELIB_NAME_AW(ExtractIcon)
+HICON16 WINAPI ExtractAssociatedIcon16(HINSTANCE16,LPSTR,LPWORD);
+HICON32 WINAPI ExtractAssociatedIcon32A(HINSTANCE32,LPSTR,LPWORD);
+HICON32 WINAPI ExtractAssociatedIcon32W(HINSTANCE32,LPWSTR,LPWORD);
+#define ExtractAssociatedIcon WINELIB_NAME_AW(ExtractAssociatedIcon)
+HINSTANCE16 WINAPI FindExecutable16(LPCSTR,LPCSTR,LPSTR);
+HINSTANCE32 WINAPI FindExecutable32A(LPCSTR,LPCSTR,LPSTR);
+HINSTANCE32 WINAPI FindExecutable32W(LPCWSTR,LPCWSTR,LPWSTR);
+#define FindExecutable WINELIB_NAME_AW(FindExecutable)
+BOOL16 WINAPI ShellAbout16(HWND16,LPCSTR,LPCSTR,HICON16);
+BOOL32 WINAPI ShellAbout32A(HWND32,LPCSTR,LPCSTR,HICON32);
+BOOL32 WINAPI ShellAbout32W(HWND32,LPCWSTR,LPCWSTR,HICON32);
+#define ShellAbout WINELIB_NAME_AW(ShellAbout)
+HINSTANCE16 WINAPI ShellExecute16(HWND16,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT16);
+HINSTANCE32 WINAPI ShellExecute32A(HWND32,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT32);
+HINSTANCE32 WINAPI ShellExecute32W(HWND32,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,INT32);
+#define ShellExecute WINELIB_NAME_AW(ShellExecute)
+
+
+#endif /* _WINE_SHELLAPI_H */
diff --git a/include/vga.h b/include/vga.h
index 62e9aeb..eea77cc 100644
--- a/include/vga.h
+++ b/include/vga.h
@@ -8,7 +8,7 @@
#ifndef __WINE_VGA_H
#define __WINE_VGA_H
-#include "wintypes.h"
+#include "wingdi.h"
int VGA_SetMode(unsigned Xres,unsigned Yres,unsigned Depth);
int VGA_GetMode(unsigned*Height,unsigned*Width,unsigned*Depth);
diff --git a/include/winbase.h b/include/winbase.h
index 2254b41..2828641 100644
--- a/include/winbase.h
+++ b/include/winbase.h
@@ -1,7 +1,7 @@
#ifndef __WINE_WINBASE_H
#define __WINE_WINBASE_H
-#include "wintypes.h"
+#include "winnt.h"
#pragma pack(1)
@@ -10,6 +10,981 @@
extern "C" {
#endif
+typedef struct tagCOORD {
+ INT16 x;
+ INT16 y;
+} COORD, *LPCOORD;
+
+
+ /* Windows Exit Procedure flag values */
+#define WEP_FREE_DLL 0
+#define WEP_SYSTEM_EXIT 1
+
+typedef DWORD (CALLBACK *LPTHREAD_START_ROUTINE)(LPVOID);
+
+/* This is also defined in winnt.h */
+/* typedef struct _EXCEPTION_RECORD {
+ DWORD ExceptionCode;
+ DWORD ExceptionFlags;
+ struct _EXCEPTION_RECORD *ExceptionRecord;
+ LPVOID ExceptionAddress;
+ DWORD NumberParameters;
+ DWORD ExceptionInformation[15];
+} EXCEPTION_RECORD; */
+
+typedef struct _EXCEPTION_DEBUG_INFO {
+/* EXCEPTION_RECORD ExceptionRecord; */
+ DWORD dwFirstChange;
+} EXCEPTION_DEBUG_INFO;
+
+typedef struct _CREATE_THREAD_DEBUG_INFO {
+ HANDLE32 hThread;
+ LPVOID lpThreadLocalBase;
+ LPTHREAD_START_ROUTINE lpStartAddress;
+} CREATE_THREAD_DEBUG_INFO;
+
+typedef struct _CREATE_PROCESS_DEBUG_INFO {
+ HANDLE32 hFile;
+ HANDLE32 hProcess;
+ HANDLE32 hThread;
+ LPVOID lpBaseOfImage;
+ DWORD dwDebugInfoFileOffset;
+ DWORD nDebugInfoSize;
+ LPVOID lpThreadLocalBase;
+ LPTHREAD_START_ROUTINE lpStartAddress;
+ LPVOID lpImageName;
+ WORD fUnicode;
+} CREATE_PROCESS_DEBUG_INFO;
+
+typedef struct _EXIT_THREAD_DEBUG_INFO {
+ DWORD dwExitCode;
+} EXIT_THREAD_DEBUG_INFO;
+
+typedef struct _EXIT_PROCESS_DEBUG_INFO {
+ DWORD dwExitCode;
+} EXIT_PROCESS_DEBUG_INFO;
+
+typedef struct _LOAD_DLL_DEBUG_INFO {
+ HANDLE32 hFile;
+ LPVOID lpBaseOfDll;
+ DWORD dwDebugInfoFileOffset;
+ DWORD nDebugInfoSize;
+ LPVOID lpImageName;
+ WORD fUnicode;
+} LOAD_DLL_DEBUG_INFO;
+
+typedef struct _UNLOAD_DLL_DEBUG_INFO {
+ LPVOID lpBaseOfDll;
+} UNLOAD_DLL_DEBUG_INFO;
+
+typedef struct _OUTPUT_DEBUG_STRING_INFO {
+ LPSTR lpDebugStringData;
+ WORD fUnicode;
+ WORD nDebugStringLength;
+} OUTPUT_DEBUG_STRING_INFO;
+
+typedef struct _RIP_INFO {
+ DWORD dwError;
+ DWORD dwType;
+} RIP_INFO;
+
+typedef struct _DEBUG_EVENT {
+ DWORD dwDebugEventCode;
+ DWORD dwProcessId;
+ DWORD dwThreadId;
+ union {
+ EXCEPTION_DEBUG_INFO Exception;
+ CREATE_THREAD_DEBUG_INFO CreateThread;
+ CREATE_PROCESS_DEBUG_INFO CreateProcessInfo;
+ EXIT_THREAD_DEBUG_INFO ExitThread;
+ EXIT_PROCESS_DEBUG_INFO ExitProcess;
+ LOAD_DLL_DEBUG_INFO LoadDll;
+ UNLOAD_DLL_DEBUG_INFO UnloadDll;
+ OUTPUT_DEBUG_STRING_INFO DebugString;
+ RIP_INFO RipInfo;
+ } u;
+} DEBUG_EVENT, *LPDEBUG_EVENT;
+
+#define OFS_MAXPATHNAME 128
+typedef struct
+{
+ BYTE cBytes;
+ BYTE fFixedDisk;
+ WORD nErrCode;
+ BYTE reserved[4];
+ BYTE szPathName[OFS_MAXPATHNAME];
+} OFSTRUCT, *LPOFSTRUCT;
+
+#define OF_READ 0x0000
+#define OF_WRITE 0x0001
+#define OF_READWRITE 0x0002
+#define OF_SHARE_COMPAT 0x0000
+#define OF_SHARE_EXCLUSIVE 0x0010
+#define OF_SHARE_DENY_WRITE 0x0020
+#define OF_SHARE_DENY_READ 0x0030
+#define OF_SHARE_DENY_NONE 0x0040
+#define OF_PARSE 0x0100
+#define OF_DELETE 0x0200
+#define OF_VERIFY 0x0400 /* Used with OF_REOPEN */
+#define OF_SEARCH 0x0400 /* Used without OF_REOPEN */
+#define OF_CANCEL 0x0800
+#define OF_CREATE 0x1000
+#define OF_PROMPT 0x2000
+#define OF_EXIST 0x4000
+#define OF_REOPEN 0x8000
+
+/* SetErrorMode values */
+#define SEM_FAILCRITICALERRORS 0x0001
+#define SEM_NOGPFAULTERRORBOX 0x0002
+#define SEM_NOALIGNMENTFAULTEXCEPT 0x0004
+#define SEM_NOOPENFILEERRORBOX 0x8000
+
+/* CopyFileEx flags */
+#define COPY_FILE_FAIL_IF_EXISTS 0x00000001
+#define COPY_FILE_RESTARTABLE 0x00000002
+#define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x00000004
+
+/* GetTempFileName() Flags */
+#define TF_FORCEDRIVE 0x80
+
+#define DRIVE_CANNOTDETERMINE 0
+#define DRIVE_DOESNOTEXIST 1
+#define DRIVE_REMOVABLE 2
+#define DRIVE_FIXED 3
+#define DRIVE_REMOTE 4
+/* Win32 additions */
+#define DRIVE_CDROM 5
+#define DRIVE_RAMDISK 6
+
+/* The security attributes structure */
+typedef struct
+{
+ DWORD nLength;
+ LPVOID lpSecurityDescriptor;
+ BOOL32 bInheritHandle;
+} SECURITY_ATTRIBUTES, *LPSECURITY_ATTRIBUTES;
+
+typedef WORD SECURITY_DESCRIPTOR_CONTROL;
+
+/* The security descriptor structure */
+typedef struct {
+ BYTE Revision;
+ BYTE Sbz1;
+ SECURITY_DESCRIPTOR_CONTROL Control;
+ LPSID Owner;
+ LPSID Group;
+ LPACL Sacl;
+ LPACL Dacl;
+} SECURITY_DESCRIPTOR, *PSECURITY_DESCRIPTOR, *LPSECURITY_DESCRIPTOR;
+
+typedef DWORD SECURITY_INFORMATION;
+
+
+/* 64 bit number of 100 nanoseconds intervals since January 1, 1601 */
+typedef struct
+{
+ DWORD dwLowDateTime;
+ DWORD dwHighDateTime;
+} FILETIME, *LPFILETIME;
+
+/* Find* structures */
+typedef struct
+{
+ DWORD dwFileAttributes;
+ FILETIME ftCreationTime;
+ FILETIME ftLastAccessTime;
+ FILETIME ftLastWriteTime;
+ DWORD nFileSizeHigh;
+ DWORD nFileSizeLow;
+ DWORD dwReserved0;
+ DWORD dwReserved1;
+ CHAR cFileName[260];
+ CHAR cAlternateFileName[14];
+} WIN32_FIND_DATA32A, *LPWIN32_FIND_DATA32A;
+
+typedef struct
+{
+ DWORD dwFileAttributes;
+ FILETIME ftCreationTime;
+ FILETIME ftLastAccessTime;
+ FILETIME ftLastWriteTime;
+ DWORD nFileSizeHigh;
+ DWORD nFileSizeLow;
+ DWORD dwReserved0;
+ DWORD dwReserved1;
+ WCHAR cFileName[260];
+ WCHAR cAlternateFileName[14];
+} WIN32_FIND_DATA32W, *LPWIN32_FIND_DATA32W;
+
+DECL_WINELIB_TYPE_AW(WIN32_FIND_DATA)
+DECL_WINELIB_TYPE_AW(LPWIN32_FIND_DATA)
+
+#define INVALID_HANDLE_VALUE16 ((HANDLE16) -1)
+#define INVALID_HANDLE_VALUE32 ((HANDLE32) -1)
+#define INVALID_HANDLE_VALUE WINELIB_NAME(INVALID_HANDLE_VALUE)
+
+/* comm */
+
+#define CBR_110 0xFF10
+#define CBR_300 0xFF11
+#define CBR_600 0xFF12
+#define CBR_1200 0xFF13
+#define CBR_2400 0xFF14
+#define CBR_4800 0xFF15
+#define CBR_9600 0xFF16
+#define CBR_14400 0xFF17
+#define CBR_19200 0xFF18
+#define CBR_38400 0xFF1B
+#define CBR_56000 0xFF1F
+#define CBR_128000 0xFF23
+#define CBR_256000 0xFF27
+
+#define NOPARITY 0
+#define ODDPARITY 1
+#define EVENPARITY 2
+#define MARKPARITY 3
+#define SPACEPARITY 4
+#define ONESTOPBIT 0
+#define ONE5STOPBITS 1
+#define TWOSTOPBITS 2
+
+#define IGNORE 0
+#define INFINITE16 0xFFFF
+#define INFINITE32 0xFFFFFFFF
+#define INFINITE WINELIB_NAME(INFINITE)
+
+#define CE_RXOVER 0x0001
+#define CE_OVERRUN 0x0002
+#define CE_RXPARITY 0x0004
+#define CE_FRAME 0x0008
+#define CE_BREAK 0x0010
+#define CE_CTSTO 0x0020
+#define CE_DSRTO 0x0040
+#define CE_RLSDTO 0x0080
+#define CE_TXFULL 0x0100
+#define CE_PTO 0x0200
+#define CE_IOE 0x0400
+#define CE_DNS 0x0800
+#define CE_OOP 0x1000
+#define CE_MODE 0x8000
+
+#define IE_BADID -1
+#define IE_OPEN -2
+#define IE_NOPEN -3
+#define IE_MEMORY -4
+#define IE_DEFAULT -5
+#define IE_HARDWARE -10
+#define IE_BYTESIZE -11
+#define IE_BAUDRATE -12
+
+#define EV_RXCHAR 0x0001
+#define EV_RXFLAG 0x0002
+#define EV_TXEMPTY 0x0004
+#define EV_CTS 0x0008
+#define EV_DSR 0x0010
+#define EV_RLSD 0x0020
+#define EV_BREAK 0x0040
+#define EV_ERR 0x0080
+#define EV_RING 0x0100
+#define EV_PERR 0x0200
+#define EV_CTSS 0x0400
+#define EV_DSRS 0x0800
+#define EV_RLSDS 0x1000
+#define EV_RINGTE 0x2000
+#define EV_RingTe EV_RINGTE
+
+#define SETXOFF 1
+#define SETXON 2
+#define SETRTS 3
+#define CLRRTS 4
+#define SETDTR 5
+#define CLRDTR 6
+#define RESETDEV 7
+#define SETBREAK 8
+#define CLRBREAK 9
+
+#define GETBASEIRQ 10
+
+/* Purge functions for Comm Port */
+#define PURGE_TXABORT 0x0001 /* Kill the pending/current writes to the
+ comm port */
+#define PURGE_RXABORT 0x0002 /*Kill the pending/current reads to
+ the comm port */
+#define PURGE_TXCLEAR 0x0004 /* Kill the transmit queue if there*/
+#define PURGE_RXCLEAR 0x0008 /* Kill the typeahead buffer if there*/
+
+
+/* Modem Status Flags */
+#define MS_CTS_ON ((DWORD)0x0010)
+#define MS_DSR_ON ((DWORD)0x0020)
+#define MS_RING_ON ((DWORD)0x0040)
+#define MS_RLSD_ON ((DWORD)0x0080)
+
+#define RTS_CONTROL_DISABLE 0
+#define RTS_CONTROL_ENABLE 1
+#define RTS_CONTROL_HANDSHAKE 2
+#define RTS_CONTROL_TOGGLE 3
+
+#define DTR_CONTROL_DISABLE 0
+#define DTR_CONTROL_ENABLE 1
+#define DTR_CONTROL_HANDSHAKE 2
+
+#define CSTF_CTSHOLD 0x01
+#define CSTF_DSRHOLD 0x02
+#define CSTF_RLSDHOLD 0x04
+#define CSTF_XOFFHOLD 0x08
+#define CSTF_XOFFSENT 0x10
+#define CSTF_EOF 0x20
+#define CSTF_TXIM 0x40
+
+#define MAKEINTRESOURCE32A(i) (LPSTR)((DWORD)((WORD)(i)))
+#define MAKEINTRESOURCE32W(i) (LPWSTR)((DWORD)((WORD)(i)))
+#define MAKEINTRESOURCE WINELIB_NAME_AW(MAKEINTRESOURCE)
+
+/* Predefined resource types */
+#define RT_CURSOR32A MAKEINTRESOURCE32A(1)
+#define RT_CURSOR32W MAKEINTRESOURCE32W(1)
+#define RT_CURSOR WINELIB_NAME_AW(RT_CURSOR)
+#define RT_BITMAP32A MAKEINTRESOURCE32A(2)
+#define RT_BITMAP32W MAKEINTRESOURCE32W(2)
+#define RT_BITMAP WINELIB_NAME_AW(RT_BITMAP)
+#define RT_ICON32A MAKEINTRESOURCE32A(3)
+#define RT_ICON32W MAKEINTRESOURCE32W(3)
+#define RT_ICON WINELIB_NAME_AW(RT_ICON)
+#define RT_MENU32A MAKEINTRESOURCE32A(4)
+#define RT_MENU32W MAKEINTRESOURCE32W(4)
+#define RT_MENU WINELIB_NAME_AW(RT_MENU)
+#define RT_DIALOG32A MAKEINTRESOURCE32A(5)
+#define RT_DIALOG32W MAKEINTRESOURCE32W(5)
+#define RT_DIALOG WINELIB_NAME_AW(RT_DIALOG)
+#define RT_STRING32A MAKEINTRESOURCE32A(6)
+#define RT_STRING32W MAKEINTRESOURCE32W(6)
+#define RT_STRING WINELIB_NAME_AW(RT_STRING)
+#define RT_FONTDIR32A MAKEINTRESOURCE32A(7)
+#define RT_FONTDIR32W MAKEINTRESOURCE32W(7)
+#define RT_FONTDIR WINELIB_NAME_AW(RT_FONTDIR)
+#define RT_FONT32A MAKEINTRESOURCE32A(8)
+#define RT_FONT32W MAKEINTRESOURCE32W(8)
+#define RT_FONT WINELIB_NAME_AW(RT_FONT)
+#define RT_ACCELERATOR32A MAKEINTRESOURCE32A(9)
+#define RT_ACCELERATOR32W MAKEINTRESOURCE32W(9)
+#define RT_ACCELERATOR WINELIB_NAME_AW(RT_ACCELERATOR)
+#define RT_RCDATA32A MAKEINTRESOURCE32A(10)
+#define RT_RCDATA32W MAKEINTRESOURCE32W(10)
+#define RT_RCDATA WINELIB_NAME_AW(RT_RCDATA)
+#define RT_MESSAGELIST32A MAKEINTRESOURCE32A(11)
+#define RT_MESSAGELIST32W MAKEINTRESOURCE32W(11)
+#define RT_MESSAGELIST WINELIB_NAME_AW(RT_MESSAGELIST)
+#define RT_GROUP_CURSOR32A MAKEINTRESOURCE32A(12)
+#define RT_GROUP_CURSOR32W MAKEINTRESOURCE32W(12)
+#define RT_GROUP_CURSOR WINELIB_NAME_AW(RT_GROUP_CURSOR)
+#define RT_GROUP_ICON32A MAKEINTRESOURCE32A(14)
+#define RT_GROUP_ICON32W MAKEINTRESOURCE32W(14)
+#define RT_GROUP_ICON WINELIB_NAME_AW(RT_GROUP_ICON)
+
+
+#define LMEM_FIXED 0
+#define LMEM_MOVEABLE 0x0002
+#define LMEM_NOCOMPACT 0x0010
+#define LMEM_NODISCARD 0x0020
+#define LMEM_ZEROINIT 0x0040
+#define LMEM_MODIFY 0x0080
+#define LMEM_DISCARDABLE 0x0F00
+#define LMEM_DISCARDED 0x4000
+#define LMEM_LOCKCOUNT 0x00FF
+
+#define LPTR (LMEM_FIXED | LMEM_ZEROINIT)
+
+#define GMEM_FIXED 0x0000
+#define GMEM_MOVEABLE 0x0002
+#define GMEM_NOCOMPACT 0x0010
+#define GMEM_NODISCARD 0x0020
+#define GMEM_ZEROINIT 0x0040
+#define GMEM_MODIFY 0x0080
+#define GMEM_DISCARDABLE 0x0100
+#define GMEM_NOT_BANKED 0x1000
+#define GMEM_SHARE 0x2000
+#define GMEM_DDESHARE 0x2000
+#define GMEM_NOTIFY 0x4000
+#define GMEM_LOWER GMEM_NOT_BANKED
+#define GMEM_DISCARDED 0x4000
+#define GMEM_LOCKCOUNT 0x00ff
+#define GMEM_INVALID_HANDLE 0x8000
+
+#define GHND (GMEM_MOVEABLE | GMEM_ZEROINIT)
+#define GPTR (GMEM_FIXED | GMEM_ZEROINIT)
+
+
+typedef struct tagMEMORYSTATUS
+{
+ DWORD dwLength;
+ DWORD dwMemoryLoad;
+ DWORD dwTotalPhys;
+ DWORD dwAvailPhys;
+ DWORD dwTotalPageFile;
+ DWORD dwAvailPageFile;
+ DWORD dwTotalVirtual;
+ DWORD dwAvailVirtual;
+} MEMORYSTATUS, *LPMEMORYSTATUS;
+
+
+#ifndef NOLOGERROR
+
+/* LogParamError and LogError values */
+
+/* Error modifier bits */
+#define ERR_WARNING 0x8000
+#define ERR_PARAM 0x4000
+
+#define ERR_SIZE_MASK 0x3000
+#define ERR_BYTE 0x1000
+#define ERR_WORD 0x2000
+#define ERR_DWORD 0x3000
+
+/* LogParamError() values */
+
+/* Generic parameter values */
+#define ERR_BAD_VALUE 0x6001
+#define ERR_BAD_FLAGS 0x6002
+#define ERR_BAD_INDEX 0x6003
+#define ERR_BAD_DVALUE 0x7004
+#define ERR_BAD_DFLAGS 0x7005
+#define ERR_BAD_DINDEX 0x7006
+#define ERR_BAD_PTR 0x7007
+#define ERR_BAD_FUNC_PTR 0x7008
+#define ERR_BAD_SELECTOR 0x6009
+#define ERR_BAD_STRING_PTR 0x700a
+#define ERR_BAD_HANDLE 0x600b
+
+/* KERNEL parameter errors */
+#define ERR_BAD_HINSTANCE 0x6020
+#define ERR_BAD_HMODULE 0x6021
+#define ERR_BAD_GLOBAL_HANDLE 0x6022
+#define ERR_BAD_LOCAL_HANDLE 0x6023
+#define ERR_BAD_ATOM 0x6024
+#define ERR_BAD_HFILE 0x6025
+
+/* USER parameter errors */
+#define ERR_BAD_HWND 0x6040
+#define ERR_BAD_HMENU 0x6041
+#define ERR_BAD_HCURSOR 0x6042
+#define ERR_BAD_HICON 0x6043
+#define ERR_BAD_HDWP 0x6044
+#define ERR_BAD_CID 0x6045
+#define ERR_BAD_HDRVR 0x6046
+
+/* GDI parameter errors */
+#define ERR_BAD_COORDS 0x7060
+#define ERR_BAD_GDI_OBJECT 0x6061
+#define ERR_BAD_HDC 0x6062
+#define ERR_BAD_HPEN 0x6063
+#define ERR_BAD_HFONT 0x6064
+#define ERR_BAD_HBRUSH 0x6065
+#define ERR_BAD_HBITMAP 0x6066
+#define ERR_BAD_HRGN 0x6067
+#define ERR_BAD_HPALETTE 0x6068
+#define ERR_BAD_HMETAFILE 0x6069
+
+
+/* LogError() values */
+
+/* KERNEL errors */
+#define ERR_GALLOC 0x0001
+#define ERR_GREALLOC 0x0002
+#define ERR_GLOCK 0x0003
+#define ERR_LALLOC 0x0004
+#define ERR_LREALLOC 0x0005
+#define ERR_LLOCK 0x0006
+#define ERR_ALLOCRES 0x0007
+#define ERR_LOCKRES 0x0008
+#define ERR_LOADMODULE 0x0009
+
+/* USER errors */
+#define ERR_CREATEDLG 0x0040
+#define ERR_CREATEDLG2 0x0041
+#define ERR_REGISTERCLASS 0x0042
+#define ERR_DCBUSY 0x0043
+#define ERR_CREATEWND 0x0044
+#define ERR_STRUCEXTRA 0x0045
+#define ERR_LOADSTR 0x0046
+#define ERR_LOADMENU 0x0047
+#define ERR_NESTEDBEGINPAINT 0x0048
+#define ERR_BADINDEX 0x0049
+#define ERR_CREATEMENU 0x004a
+
+/* GDI errors */
+#define ERR_CREATEDC 0x0080
+#define ERR_CREATEMETA 0x0081
+#define ERR_DELOBJSELECTED 0x0082
+#define ERR_SELBITMAP 0x0083
+
+
+
+/* Debugging support (DEBUG SYSTEM ONLY) */
+typedef struct
+{
+ UINT16 flags;
+ DWORD dwOptions WINE_PACKED;
+ DWORD dwFilter WINE_PACKED;
+ CHAR achAllocModule[8] WINE_PACKED;
+ DWORD dwAllocBreak WINE_PACKED;
+ DWORD dwAllocCount WINE_PACKED;
+} WINDEBUGINFO, *LPWINDEBUGINFO;
+
+/* WINDEBUGINFO flags values */
+#define WDI_OPTIONS 0x0001
+#define WDI_FILTER 0x0002
+#define WDI_ALLOCBREAK 0x0004
+
+/* dwOptions values */
+#define DBO_CHECKHEAP 0x0001
+#define DBO_BUFFERFILL 0x0004
+#define DBO_DISABLEGPTRAPPING 0x0010
+#define DBO_CHECKFREE 0x0020
+
+#define DBO_SILENT 0x8000
+
+#define DBO_TRACEBREAK 0x2000
+#define DBO_WARNINGBREAK 0x1000
+#define DBO_NOERRORBREAK 0x0800
+#define DBO_NOFATALBREAK 0x0400
+#define DBO_INT3BREAK 0x0100
+
+/* DebugOutput flags values */
+#define DBF_TRACE 0x0000
+#define DBF_WARNING 0x4000
+#define DBF_ERROR 0x8000
+#define DBF_FATAL 0xc000
+
+/* dwFilter values */
+#define DBF_KERNEL 0x1000
+#define DBF_KRN_MEMMAN 0x0001
+#define DBF_KRN_LOADMODULE 0x0002
+#define DBF_KRN_SEGMENTLOAD 0x0004
+#define DBF_USER 0x0800
+#define DBF_GDI 0x0400
+#define DBF_MMSYSTEM 0x0040
+#define DBF_PENWIN 0x0020
+#define DBF_APPLICATION 0x0008
+#define DBF_DRIVER 0x0010
+
+#endif /* NOLOGERROR */
+
+typedef struct {
+ WORD wYear;
+ WORD wMonth;
+ WORD wDayOfWeek;
+ WORD wDay;
+ WORD wHour;
+ WORD wMinute;
+ WORD wSecond;
+ WORD wMilliseconds;
+} SYSTEMTIME, *LPSYSTEMTIME;
+
+
+/* Code page information.
+ */
+#define MAX_LEADBYTES 12
+#define MAX_DEFAULTCHAR 2
+
+typedef struct
+{
+ UINT32 MaxCharSize;
+ BYTE DefaultChar[MAX_DEFAULTCHAR];
+ BYTE LeadByte[MAX_LEADBYTES];
+} CPINFO, *LPCPINFO;
+
+/* The 'overlapped' data structure used by async I/O functions.
+ */
+typedef struct {
+ DWORD Internal;
+ DWORD InternalHigh;
+ DWORD Offset;
+ DWORD OffsetHigh;
+ HANDLE32 hEvent;
+} OVERLAPPED, *LPOVERLAPPED;
+
+/* Process startup information.
+ */
+
+/* STARTUPINFO.dwFlags */
+#define STARTF_USESHOWWINDOW 0x00000001
+#define STARTF_USESIZE 0x00000002
+#define STARTF_USEPOSITION 0x00000004
+#define STARTF_USECOUNTCHARS 0x00000008
+#define STARTF_USEFILLATTRIBUTE 0x00000010
+#define STARTF_RUNFULLSCREEN 0x00000020
+#define STARTF_FORCEONFEEDBACK 0x00000040
+#define STARTF_FORCEOFFFEEDBACK 0x00000080
+#define STARTF_USESTDHANDLES 0x00000100
+#define STARTF_USEHOTKEY 0x00000200
+
+typedef struct {
+ DWORD cb; /* 00: size of struct */
+ LPSTR lpReserved; /* 04: */
+ LPSTR lpDesktop; /* 08: */
+ LPSTR lpTitle; /* 0c: */
+ DWORD dwX; /* 10: */
+ DWORD dwY; /* 14: */
+ DWORD dwXSize; /* 18: */
+ DWORD dwYSize; /* 1c: */
+ DWORD dwXCountChars; /* 20: */
+ DWORD dwYCountChars; /* 24: */
+ DWORD dwFillAttribute; /* 28: */
+ DWORD dwFlags; /* 2c: */
+ WORD wShowWindow; /* 30: */
+ WORD cbReserved2; /* 32: */
+ BYTE *lpReserved2; /* 34: */
+ HANDLE32 hStdInput; /* 38: */
+ HANDLE32 hStdOutput; /* 3c: */
+ HANDLE32 hStdError; /* 40: */
+} STARTUPINFO32A, *LPSTARTUPINFO32A;
+
+typedef struct {
+ DWORD cb;
+ LPWSTR lpReserved;
+ LPWSTR lpDesktop;
+ LPWSTR lpTitle;
+ DWORD dwX;
+ DWORD dwY;
+ DWORD dwXSize;
+ DWORD dwYSize;
+ DWORD dwXCountChars;
+ DWORD dwYCountChars;
+ DWORD dwFillAttribute;
+ DWORD dwFlags;
+ WORD wShowWindow;
+ WORD cbReserved2;
+ BYTE *lpReserved2;
+ HANDLE32 hStdInput;
+ HANDLE32 hStdOutput;
+ HANDLE32 hStdError;
+} STARTUPINFO32W, *LPSTARTUPINFO32W;
+
+DECL_WINELIB_TYPE_AW(STARTUPINFO)
+DECL_WINELIB_TYPE_AW(LPSTARTUPINFO)
+
+typedef struct {
+ HANDLE32 hProcess;
+ HANDLE32 hThread;
+ DWORD dwProcessId;
+ DWORD dwThreadId;
+} PROCESS_INFORMATION,*LPPROCESS_INFORMATION;
+
+typedef struct {
+ LONG Bias;
+ WCHAR StandardName[32];
+ SYSTEMTIME StandardDate;
+ LONG StandardBias;
+ WCHAR DaylightName[32];
+ SYSTEMTIME DaylightDate;
+ LONG DaylightBias;
+} TIME_ZONE_INFORMATION, *LPTIME_ZONE_INFORMATION;
+
+#define TIME_ZONE_ID_UNKNOWN 0
+#define TIME_ZONE_ID_STANDARD 1
+#define TIME_ZONE_ID_DAYLIGHT 2
+
+/* CreateProcess: dwCreationFlag values
+ */
+#define DEBUG_PROCESS 0x00000001
+#define DEBUG_ONLY_THIS_PROCESS 0x00000002
+#define CREATE_SUSPENDED 0x00000004
+#define DETACHED_PROCESS 0x00000008
+#define CREATE_NEW_CONSOLE 0x00000010
+#define NORMAL_PRIORITY_CLASS 0x00000020
+#define IDLE_PRIORITY_CLASS 0x00000040
+#define HIGH_PRIORITY_CLASS 0x00000080
+#define REALTIME_PRIORITY_CLASS 0x00000100
+#define CREATE_NEW_PROCESS_GROUP 0x00000200
+#define CREATE_UNICODE_ENVIRONMENT 0x00000400
+#define CREATE_SEPARATE_WOW_VDM 0x00000800
+#define CREATE_SHARED_WOW_VDM 0x00001000
+#define CREATE_DEFAULT_ERROR_MODE 0x04000000
+#define CREATE_NO_WINDOW 0x08000000
+#define PROFILE_USER 0x10000000
+#define PROFILE_KERNEL 0x20000000
+#define PROFILE_SERVER 0x40000000
+
+
+/* File object type definitions
+ */
+#define FILE_TYPE_UNKNOWN 0
+#define FILE_TYPE_DISK 1
+#define FILE_TYPE_CHAR 2
+#define FILE_TYPE_PIPE 3
+#define FILE_TYPE_REMOTE 32768
+
+/* File creation flags
+ */
+#define FILE_FLAG_WRITE_THROUGH 0x80000000UL
+#define FILE_FLAG_OVERLAPPED 0x40000000L
+#define FILE_FLAG_NO_BUFFERING 0x20000000L
+#define FILE_FLAG_RANDOM_ACCESS 0x10000000L
+#define FILE_FLAG_SEQUENTIAL_SCAN 0x08000000L
+#define FILE_FLAG_DELETE_ON_CLOSE 0x04000000L
+#define FILE_FLAG_BACKUP_SEMANTICS 0x02000000L
+#define FILE_FLAG_POSIX_SEMANTICS 0x01000000L
+#define CREATE_NEW 1
+#define CREATE_ALWAYS 2
+#define OPEN_EXISTING 3
+#define OPEN_ALWAYS 4
+#define TRUNCATE_EXISTING 5
+
+/* Standard handle identifiers
+ */
+#define STD_INPUT_HANDLE ((DWORD) -10)
+#define STD_OUTPUT_HANDLE ((DWORD) -11)
+#define STD_ERROR_HANDLE ((DWORD) -12)
+
+typedef struct
+{
+ int dwFileAttributes;
+ FILETIME ftCreationTime;
+ FILETIME ftLastAccessTime;
+ FILETIME ftLastWriteTime;
+ int dwVolumeSerialNumber;
+ int nFileSizeHigh;
+ int nFileSizeLow;
+ int nNumberOfLinks;
+ int nFileIndexHigh;
+ int nFileIndexLow;
+} BY_HANDLE_FILE_INFORMATION ;
+
+
+typedef struct _SYSTEM_POWER_STATUS
+{
+ BOOL16 ACLineStatus;
+ BYTE BatteryFlag;
+ BYTE BatteryLifePercent;
+ BYTE reserved;
+ DWORD BatteryLifeTime;
+ DWORD BatteryFullLifeTime;
+} SYSTEM_POWER_STATUS, *LPSYSTEM_POWER_STATUS;
+
+typedef struct _MEMORY_BASIC_INFORMATION
+{
+ LPVOID BaseAddress;
+ LPVOID AllocationBase;
+ DWORD AllocationProtect;
+ DWORD RegionSize;
+ DWORD State;
+ DWORD Protect;
+ DWORD Type;
+} MEMORY_BASIC_INFORMATION,*LPMEMORY_BASIC_INFORMATION;
+
+
+typedef BOOL32 (CALLBACK *CODEPAGE_ENUMPROC32A)(LPSTR);
+typedef BOOL32 (CALLBACK *CODEPAGE_ENUMPROC32W)(LPWSTR);
+DECL_WINELIB_TYPE_AW(CODEPAGE_ENUMPROC)
+typedef BOOL32 (CALLBACK *LOCALE_ENUMPROC32A)(LPSTR);
+typedef BOOL32 (CALLBACK *LOCALE_ENUMPROC32W)(LPWSTR);
+DECL_WINELIB_TYPE_AW(LOCALE_ENUMPROC)
+
+typedef struct tagSYSTEM_INFO
+{
+ union {
+ DWORD dwOemId;
+ struct {
+ WORD wProcessorArchitecture;
+ WORD wReserved;
+ } x;
+ } u;
+ DWORD dwPageSize;
+ LPVOID lpMinimumApplicationAddress;
+ LPVOID lpMaximumApplicationAddress;
+ DWORD dwActiveProcessorMask;
+ DWORD dwNumberOfProcessors;
+ DWORD dwProcessorType;
+ DWORD dwAllocationGranularity;
+ WORD wProcessorLevel;
+ WORD wProcessorRevision;
+} SYSTEM_INFO, *LPSYSTEM_INFO;
+
+/* service main function prototype */
+typedef VOID (CALLBACK *LPSERVICE_MAIN_FUNCTION32A)(DWORD,LPSTR);
+typedef VOID (CALLBACK *LPSERVICE_MAIN_FUNCTION32W)(DWORD,LPWSTR);
+DECL_WINELIB_TYPE_AW(LPSERVICE_MAIN_FUNCTION)
+
+/* service start table */
+typedef struct
+{
+ LPSTR lpServiceName;
+ LPSERVICE_MAIN_FUNCTION32A lpServiceProc;
+} *LPSERVICE_TABLE_ENTRY32A, SERVICE_TABLE_ENTRY32A;
+
+typedef struct
+{
+ LPWSTR lpServiceName;
+ LPSERVICE_MAIN_FUNCTION32W lpServiceProc;
+} *LPSERVICE_TABLE_ENTRY32W, SERVICE_TABLE_ENTRY32W;
+
+DECL_WINELIB_TYPE_AW(SERVICE_TABLE_ENTRY)
+DECL_WINELIB_TYPE_AW(LPSERVICE_TABLE_ENTRY)
+
+/* {G,S}etPriorityClass */
+#define NORMAL_PRIORITY_CLASS 0x00000020
+#define IDLE_PRIORITY_CLASS 0x00000040
+#define HIGH_PRIORITY_CLASS 0x00000080
+#define REALTIME_PRIORITY_CLASS 0x00000100
+
+typedef BOOL32 (CALLBACK *ENUMRESTYPEPROC32A)(HMODULE32,LPSTR,LONG);
+typedef BOOL32 (CALLBACK *ENUMRESTYPEPROC32W)(HMODULE32,LPWSTR,LONG);
+typedef BOOL32 (CALLBACK *ENUMRESNAMEPROC32A)(HMODULE32,LPCSTR,LPSTR,LONG);
+typedef BOOL32 (CALLBACK *ENUMRESNAMEPROC32W)(HMODULE32,LPCWSTR,LPWSTR,LONG);
+typedef BOOL32 (CALLBACK *ENUMRESLANGPROC32A)(HMODULE32,LPCSTR,LPCSTR,WORD,LONG);
+typedef BOOL32 (CALLBACK *ENUMRESLANGPROC32W)(HMODULE32,LPCWSTR,LPCWSTR,WORD,LONG);
+
+DECL_WINELIB_TYPE_AW(ENUMRESTYPEPROC)
+DECL_WINELIB_TYPE_AW(ENUMRESNAMEPROC)
+DECL_WINELIB_TYPE_AW(ENUMRESLANGPROC)
+
+/* flags that can be passed to LoadLibraryEx */
+#define DONT_RESOLVE_DLL_REFERENCES 0x00000001
+#define LOAD_LIBRARY_AS_DATAFILE 0x00000002
+#define LOAD_WITH_ALTERED_SEARCH_PATH 0x00000008
+
+/* ifdef _x86_ ... */
+typedef struct _LDT_ENTRY {
+ WORD LimitLow;
+ WORD BaseLow;
+ union {
+ struct {
+ BYTE BaseMid;
+ BYTE Flags1;/*Declare as bytes to avoid alignment problems */
+ BYTE Flags2;
+ BYTE BaseHi;
+ } Bytes;
+ struct {
+ DWORD BaseMid : 8;
+ DWORD Type : 5;
+ DWORD Dpl : 2;
+ DWORD Pres : 1;
+ DWORD LimitHi : 4;
+ DWORD Sys : 1;
+ DWORD Reserved_0 : 1;
+ DWORD Default_Big : 1;
+ DWORD Granularity : 1;
+ DWORD BaseHi : 8;
+ } Bits;
+ } HighWord;
+} LDT_ENTRY, *LPLDT_ENTRY;
+
+/* for WOWHandle{16,32} */
+typedef enum _WOW_HANDLE_TYPE { /* WOW */
+ WOW_TYPE_HWND,
+ WOW_TYPE_HMENU,
+ WOW_TYPE_HDWP,
+ WOW_TYPE_HDROP,
+ WOW_TYPE_HDC,
+ WOW_TYPE_HFONT,
+ WOW_TYPE_HMETAFILE,
+ WOW_TYPE_HRGN,
+ WOW_TYPE_HBITMAP,
+ WOW_TYPE_HBRUSH,
+ WOW_TYPE_HPALETTE,
+ WOW_TYPE_HPEN,
+ WOW_TYPE_HACCEL,
+ WOW_TYPE_HTASK,
+ WOW_TYPE_FULLHWND
+} WOW_HANDLE_TYPE;
+
+/* WOWCallback16Ex defines */
+#define WCB16_MAX_CBARGS 16
+/* ... dwFlags */
+#define WCB16_PASCAL 0x0
+#define WCB16_CDECL 0x1
+
+typedef enum _GET_FILEEX_INFO_LEVELS {
+ GetFileExInfoStandard
+} GET_FILEEX_INFO_LEVELS;
+
+typedef struct _WIN32_FILE_ATTRIBUTES_DATA {
+ DWORD dwFileAttributes;
+ FILETIME ftCreationTime;
+ FILETIME ftLastAccessTime;
+ FILETIME ftLastWriteTime;
+ DWORD nFileSizeHigh;
+ DWORD nFileSizeLow;
+} WIN32_FILE_ATTRIBUTE_DATA, *LPWIN32_FILE_ATTRIBUTE_DATA;
+
+typedef struct _DllVersionInfo {
+ DWORD cbSize;
+ DWORD dwMajorVersion;
+ DWORD dwMinorVersion;
+ DWORD dwBuildNumber;
+ DWORD dwPlatformID;
+} DLLVERSIONINFO;
+
+/*
+ * This one seems to be a Win32 only definition. It also is defined with
+ * WINAPI instead of CALLBACK in the windows headers.
+ */
+typedef DWORD (WINAPI *LPPROGRESS_ROUTINE)(LARGE_INTEGER, LARGE_INTEGER, LARGE_INTEGER,
+ LARGE_INTEGER, DWORD, DWORD, HANDLE32,
+ HANDLE32, LPVOID);
+
+#define DM_UPDATE 1
+#define DM_COPY 2
+#define DM_PROMPT 4
+#define DM_MODIFY 8
+
+#define DM_IN_BUFFER DM_MODIFY
+#define DM_IN_PROMPT DM_PROMPT
+#define DM_OUT_BUFFER DM_COPY
+#define DM_OUT_DEFAULT DM_UPDATE
+
+#define DM_ORIENTATION 0x00000001L
+#define DM_PAPERSIZE 0x00000002L
+#define DM_PAPERLENGTH 0x00000004L
+#define DM_PAPERWIDTH 0x00000008L
+#define DM_SCALE 0x00000010L
+#define DM_COPIES 0x00000100L
+#define DM_DEFAULTSOURCE 0x00000200L
+#define DM_PRINTQUALITY 0x00000400L
+#define DM_COLOR 0x00000800L
+#define DM_DUPLEX 0x00001000L
+#define DM_YRESOLUTION 0x00002000L
+#define DM_TTOPTION 0x00004000L
+#define DM_BITSPERPEL 0x00040000L
+#define DM_PELSWIDTH 0x00080000L
+#define DM_PELSHEIGHT 0x00100000L
+#define DM_DISPLAYFLAGS 0x00200000L
+#define DM_DISPLAYFREQUENCY 0x00400000L
+
+/* etc.... */
+
+#define DMORIENT_PORTRAIT 1
+#define DMORIENT_LANDSCAPE 2
+
+#define DMPAPER_LETTER 1
+#define DMPAPER_LEGAL 5
+#define DMPAPER_EXECUTIVE 7
+#define DMPAPER_A3 8
+#define DMPAPER_A4 9
+#define DMPAPER_A5 11
+#define DMPAPER_ENV_10 20
+#define DMPAPER_ENV_DL 27
+#define DMPAPER_ENV_C5 28
+#define DMPAPER_ENV_B5 34
+#define DMPAPER_ENV_MONARCH 37
+
+#define DMBIN_UPPER 1
+#define DMBIN_LOWER 2
+#define DMBIN_MIDDLE 3
+#define DMBIN_MANUAL 4
+#define DMBIN_ENVELOPE 5
+#define DMBIN_ENVMANUAL 6
+#define DMBIN_AUTO 7
+#define DMBIN_LARGECAPACITY 11
+
+#define DMCOLOR_MONOCHROME 1
+#define DMCOLOR_COLOR 2
+
+#define DMTT_BITMAP 1
+#define DMTT_DOWNLOAD 2
+#define DMTT_SUBDEV 3
+
#define WAIT_FAILED 0xffffffff
#define WAIT_OBJECT_0 0
#define WAIT_ABANDONED STATUS_ABANDONED_WAIT_0
@@ -328,6 +1303,608 @@
BOOL32 WINAPI GetBinaryType32W( LPCWSTR lpApplicationName, LPDWORD lpBinaryType );
#define GetBinaryType WINELIB_NAME_AW(GetBinaryType)
+BOOL16 WINAPI GetWinDebugInfo(LPWINDEBUGINFO,UINT16);
+BOOL16 WINAPI SetWinDebugInfo(LPWINDEBUGINFO);
+/* Declarations for functions that exist only in Win32 */
+
+BOOL32 WINAPI AllocConsole(void);
+BOOL32 WINAPI AreFileApisANSI(void);
+BOOL32 WINAPI Beep(DWORD,DWORD);
+BOOL32 WINAPI CloseHandle(HANDLE32);
+HANDLE32 WINAPI ConvertToGlobalHandle(HANDLE32 hSrc);
+BOOL32 WINAPI CopyFile32A(LPCSTR,LPCSTR,BOOL32);
+BOOL32 WINAPI CopyFile32W(LPCWSTR,LPCWSTR,BOOL32);
+#define CopyFile WINELIB_NAME_AW(CopyFile)
+BOOL32 WINAPI CopyFileEx32A(LPCSTR, LPCSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL32, DWORD);
+BOOL32 WINAPI CopyFileEx32W(LPCWSTR, LPCWSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL32, DWORD);
+#define CopyFileEx WINELIB_NAME_AW(CopyFileEx)
+INT32 WINAPI CompareFileTime(LPFILETIME,LPFILETIME);
+HANDLE32 WINAPI CreateEvent32A(LPSECURITY_ATTRIBUTES,BOOL32,BOOL32,LPCSTR);
+HANDLE32 WINAPI CreateEvent32W(LPSECURITY_ATTRIBUTES,BOOL32,BOOL32,LPCWSTR);
+#define CreateEvent WINELIB_NAME_AW(CreateEvent)
+HFILE32 WINAPI CreateFile32A(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,
+ DWORD,DWORD,HANDLE32);
+HFILE32 WINAPI CreateFile32W(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,
+ DWORD,DWORD,HANDLE32);
+#define CreateFile WINELIB_NAME_AW(CreateFile)
+HANDLE32 WINAPI CreateFileMapping32A(HANDLE32,LPSECURITY_ATTRIBUTES,DWORD,
+ DWORD,DWORD,LPCSTR);
+HANDLE32 WINAPI CreateFileMapping32W(HANDLE32,LPSECURITY_ATTRIBUTES,DWORD,
+ DWORD,DWORD,LPCWSTR);
+#define CreateFileMapping WINELIB_NAME_AW(CreateFileMapping)
+HANDLE32 WINAPI CreateMutex32A(LPSECURITY_ATTRIBUTES,BOOL32,LPCSTR);
+HANDLE32 WINAPI CreateMutex32W(LPSECURITY_ATTRIBUTES,BOOL32,LPCWSTR);
+#define CreateMutex WINELIB_NAME_AW(CreateMutex)
+BOOL32 WINAPI CreateProcess32A(LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,
+ LPSECURITY_ATTRIBUTES,BOOL32,DWORD,LPVOID,LPCSTR,
+ LPSTARTUPINFO32A,LPPROCESS_INFORMATION);
+BOOL32 WINAPI CreateProcess32W(LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,
+ LPSECURITY_ATTRIBUTES,BOOL32,DWORD,LPVOID,LPCWSTR,
+ LPSTARTUPINFO32W,LPPROCESS_INFORMATION);
+#define CreateProcess WINELIB_NAME_AW(CreateProcess)
+HANDLE32 WINAPI CreateSemaphore32A(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCSTR);
+HANDLE32 WINAPI CreateSemaphore32W(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR);
+#define CreateSemaphore WINELIB_NAME_AW(CreateSemaphore)
+HANDLE32 WINAPI CreateThread(LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD);
+BOOL32 WINAPI DisableThreadLibraryCalls(HMODULE32);
+BOOL32 WINAPI DosDateTimeToFileTime(WORD,WORD,LPFILETIME);
+BOOL32 WINAPI DuplicateHandle(HANDLE32,HANDLE32,HANDLE32,HANDLE32*,DWORD,BOOL32,DWORD);
+BOOL32 WINAPI EnumDateFormats32A(DATEFMT_ENUMPROC32A lpDateFmtEnumProc, LCID Locale, DWORD dwFlags);
+BOOL32 WINAPI EnumDateFormats32W(DATEFMT_ENUMPROC32W lpDateFmtEnumProc, LCID Locale, DWORD dwFlags);
+#define EnumDateFormats WINELIB_NAME_AW(EnumDateFormats)
+BOOL32 WINAPI EnumResourceLanguages32A(HMODULE32,LPCSTR,LPCSTR,
+ ENUMRESLANGPROC32A,LONG);
+BOOL32 WINAPI EnumResourceLanguages32W(HMODULE32,LPCWSTR,LPCWSTR,
+ ENUMRESLANGPROC32W,LONG);
+#define EnumResourceLanguages WINELIB_NAME_AW(EnumResourceLanguages)
+BOOL32 WINAPI EnumResourceNames32A(HMODULE32,LPCSTR,ENUMRESNAMEPROC32A,
+ LONG);
+BOOL32 WINAPI EnumResourceNames32W(HMODULE32,LPCWSTR,ENUMRESNAMEPROC32W,
+ LONG);
+#define EnumResourceNames WINELIB_NAME_AW(EnumResourceNames)
+BOOL32 WINAPI EnumResourceTypes32A(HMODULE32,ENUMRESTYPEPROC32A,LONG);
+BOOL32 WINAPI EnumResourceTypes32W(HMODULE32,ENUMRESTYPEPROC32W,LONG);
+#define EnumResourceTypes WINELIB_NAME_AW(EnumResourceTypes)
+BOOL32 WINAPI EnumSystemCodePages32A(CODEPAGE_ENUMPROC32A,DWORD);
+BOOL32 WINAPI EnumSystemCodePages32W(CODEPAGE_ENUMPROC32W,DWORD);
+#define EnumSystemCodePages WINELIB_NAME_AW(EnumSystemCodePages)
+BOOL32 WINAPI EnumSystemLocales32A(LOCALE_ENUMPROC32A,DWORD);
+BOOL32 WINAPI EnumSystemLocales32W(LOCALE_ENUMPROC32W,DWORD);
+#define EnumSystemLocales WINELIB_NAME_AW(EnumSystemLocales)
+BOOL32 WINAPI EnumTimeFormats32A(TIMEFMT_ENUMPROC32A lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags);
+BOOL32 WINAPI EnumTimeFormats32W(TIMEFMT_ENUMPROC32W lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags);
+#define EnumTimeFormats WINELIB_NAME_AW(EnumTimeFormats)
+VOID WINAPI ExitProcess(DWORD);
+VOID WINAPI ExitThread(DWORD);
+DWORD WINAPI ExpandEnvironmentStrings32A(LPCSTR,LPSTR,DWORD);
+DWORD WINAPI ExpandEnvironmentStrings32W(LPCWSTR,LPWSTR,DWORD);
+#define ExpandEnvironmentStrings WINELIB_NAME_AW(ExpandEnvironmentStrings)
+BOOL32 WINAPI FileTimeToDosDateTime(const FILETIME*,LPWORD,LPWORD);
+BOOL32 WINAPI FileTimeToLocalFileTime(const FILETIME*,LPFILETIME);
+BOOL32 WINAPI FileTimeToSystemTime(const FILETIME*,LPSYSTEMTIME);
+HANDLE32 WINAPI FindFirstChangeNotification32A(LPCSTR,BOOL32,DWORD);
+HANDLE32 WINAPI FindFirstChangeNotification32W(LPCWSTR,BOOL32,DWORD);
+#define FindFirstChangeNotification WINELIB_NAME_AW(FindFirstChangeNotification)
+BOOL32 WINAPI FindNextChangeNotification(HANDLE32);
+BOOL32 WINAPI FindCloseChangeNotification(HANDLE32);
+HRSRC32 WINAPI FindResourceEx32A(HMODULE32,LPCSTR,LPCSTR,WORD);
+HRSRC32 WINAPI FindResourceEx32W(HMODULE32,LPCWSTR,LPCWSTR,WORD);
+#define FindResourceEx WINELIB_NAME_AW(FindResourceEx)
+BOOL32 WINAPI FlushConsoleInputBuffer(HANDLE32);
+BOOL32 WINAPI FlushFileBuffers(HFILE32);
+BOOL32 WINAPI FlushViewOfFile(LPCVOID, DWORD);
+DWORD WINAPI FormatMessage32A(DWORD,LPCVOID,DWORD,DWORD,LPSTR,
+ DWORD,LPDWORD);
+#define FormatMessage WINELIB_NAME_AW(FormatMessage)
+BOOL32 WINAPI FreeConsole(void);
+BOOL32 WINAPI FreeEnvironmentStrings32A(LPSTR);
+BOOL32 WINAPI FreeEnvironmentStrings32W(LPWSTR);
+#define FreeEnvironmentStrings WINELIB_NAME_AW(FreeEnvironmentStrings)
+UINT32 WINAPI GetACP(void);
+LPCSTR WINAPI GetCommandLine32A(void);
+LPCWSTR WINAPI GetCommandLine32W(void);
+#define GetCommandLine WINELIB_NAME_AW(GetCommandLine)
+BOOL32 WINAPI GetComputerName32A(LPSTR,LPDWORD);
+BOOL32 WINAPI GetComputerName32W(LPWSTR,LPDWORD);
+#define GetComputerName WINELIB_NAME_AW(GetComputerName)
+UINT32 WINAPI GetConsoleCP(void);
+BOOL32 WINAPI GetConsoleMode(HANDLE32,LPDWORD);
+UINT32 WINAPI GetConsoleOutputCP(void);
+DWORD WINAPI GetConsoleTitle32A(LPSTR,DWORD);
+DWORD WINAPI GetConsoleTitle32W(LPWSTR,DWORD);
+#define GetConsoleTitle WINELIB_NAME_AW(GetConsoleTitle)
+BOOL32 WINAPI GetCPInfo(UINT32,LPCPINFO);
+BOOL32 WINAPI GetCommMask(HANDLE32, LPDWORD);
+BOOL32 WINAPI GetCommModemStatus(HANDLE32, LPDWORD);
+HANDLE32 WINAPI GetCurrentProcess(void);
+DWORD WINAPI GetCurrentProcessId(void);
+HANDLE32 WINAPI GetCurrentThread(void);
+DWORD WINAPI GetCurrentThreadId(void);
+INT32 WINAPI GetDateFormat32A(LCID,DWORD,LPSYSTEMTIME,LPCSTR,LPSTR,INT32);
+INT32 WINAPI GetDateFormat32W(LCID,DWORD,LPSYSTEMTIME,LPCWSTR,LPWSTR,INT32);
+#define GetDateFormat WINELIB_NAME_AW(GetDateFormat)
+LPSTR WINAPI GetEnvironmentStrings32A(void);
+LPWSTR WINAPI GetEnvironmentStrings32W(void);
+#define GetEnvironmentStrings WINELIB_NAME_AW(GetEnvironmentStrings)
+DWORD WINAPI GetEnvironmentVariable32A(LPCSTR,LPSTR,DWORD);
+DWORD WINAPI GetEnvironmentVariable32W(LPCWSTR,LPWSTR,DWORD);
+#define GetEnvironmentVariable WINELIB_NAME_AW(GetEnvironmentVariable)
+BOOL32 WINAPI GetFileAttributesEx32A(LPCSTR,GET_FILEEX_INFO_LEVELS,LPVOID);
+BOOL32 WINAPI GetFileAttributesEx32W(LPCWSTR,GET_FILEEX_INFO_LEVELS,LPVOID);
+#define GetFileattributesEx WINELIB_NAME_AW(GetFileAttributesEx)
+DWORD WINAPI GetFileInformationByHandle(HFILE32,BY_HANDLE_FILE_INFORMATION*);
+DWORD WINAPI GetFileSize(HFILE32,LPDWORD);
+BOOL32 WINAPI GetFileTime(HFILE32,LPFILETIME,LPFILETIME,LPFILETIME);
+DWORD WINAPI GetFileType(HFILE32);
+DWORD WINAPI GetFullPathName32A(LPCSTR,DWORD,LPSTR,LPSTR*);
+DWORD WINAPI GetFullPathName32W(LPCWSTR,DWORD,LPWSTR,LPWSTR*);
+#define GetFullPathName WINELIB_NAME_AW(GetFullPathName)
+BOOL32 WINAPI GetHandleInformation(HANDLE32,LPDWORD);
+DWORD WINAPI GetLargestConsoleWindowSize(HANDLE32);
+VOID WINAPI GetLocalTime(LPSYSTEMTIME);
+DWORD WINAPI GetLogicalDrives(void);
+DWORD WINAPI GetLongPathName32A(LPCSTR,LPSTR,DWORD);
+DWORD WINAPI GetLongPathName32W(LPCWSTR,LPWSTR,DWORD);
+#define GetLongPathName WINELIB_NAME_AW(GetLongPathName)
+BOOL32 WINAPI GetNumberOfConsoleInputEvents(HANDLE32,LPDWORD);
+BOOL32 WINAPI GetNumberOfConsoleMouseButtons(LPDWORD);
+UINT32 WINAPI GetOEMCP(void);
+DWORD WINAPI GetPriorityClass(HANDLE32);
+HANDLE32 WINAPI GetProcessHeap(void);
+DWORD WINAPI GetProcessVersion(DWORD);
+DWORD WINAPI GetShortPathName32A(LPCSTR,LPSTR,DWORD);
+DWORD WINAPI GetShortPathName32W(LPCWSTR,LPWSTR,DWORD);
+#define GetShortPathName WINELIB_NAME_AW(GetShortPathName)
+HFILE32 WINAPI GetStdHandle(DWORD);
+BOOL32 WINAPI GetStringTypeEx32A(LCID,DWORD,LPCSTR,INT32,LPWORD);
+BOOL32 WINAPI GetStringTypeEx32W(LCID,DWORD,LPCWSTR,INT32,LPWORD);
+#define GetStringTypeEx WINELIB_NAME_AW(GetStringTypeEx)
+VOID WINAPI GetSystemInfo(LPSYSTEM_INFO);
+BOOL32 WINAPI GetSystemPowerStatus(LPSYSTEM_POWER_STATUS);
+VOID WINAPI GetSystemTime(LPSYSTEMTIME);
+INT32 WINAPI GetTimeFormat32A(LCID,DWORD,LPSYSTEMTIME,LPCSTR,LPSTR,INT32);
+INT32 WINAPI GetTimeFormat32W(LCID,DWORD,LPSYSTEMTIME,LPCWSTR,LPWSTR,INT32);
+#define GetTimeFormat WINELIB_NAME_AW(GetTimeFormat)
+LCID WINAPI GetThreadLocale(void);
+INT32 WINAPI GetThreadPriority(HANDLE32);
+BOOL32 WINAPI GetThreadSelectorEntry(HANDLE32,DWORD,LPLDT_ENTRY);
+VOID WINAPI GlobalMemoryStatus(LPMEMORYSTATUS);
+LPVOID WINAPI HeapAlloc(HANDLE32,DWORD,DWORD);
+DWORD WINAPI HeapCompact(HANDLE32,DWORD);
+HANDLE32 WINAPI HeapCreate(DWORD,DWORD,DWORD);
+BOOL32 WINAPI HeapDestroy(HANDLE32);
+BOOL32 WINAPI HeapFree(HANDLE32,DWORD,LPVOID);
+BOOL32 WINAPI HeapLock(HANDLE32);
+LPVOID WINAPI HeapReAlloc(HANDLE32,DWORD,LPVOID,DWORD);
+DWORD WINAPI HeapSize(HANDLE32,DWORD,LPVOID);
+BOOL32 WINAPI HeapUnlock(HANDLE32);
+BOOL32 WINAPI HeapValidate(HANDLE32,DWORD,LPCVOID);
+LONG WINAPI InterlockedDecrement(LPLONG);
+LONG WINAPI InterlockedExchange(LPLONG,LONG);
+LONG WINAPI InterlockedIncrement(LPLONG);
+BOOL32 WINAPI IsDBCSLeadByteEx(UINT32,BYTE);
+BOOL32 WINAPI IsProcessorFeaturePresent(DWORD);
+BOOL32 WINAPI IsValidLocale(DWORD,DWORD);
+BOOL32 WINAPI LocalFileTimeToFileTime(const FILETIME*,LPFILETIME);
+BOOL32 WINAPI LockFile(HFILE32,DWORD,DWORD,DWORD,DWORD);
+HMODULE32 WINAPI MapHModuleSL(HMODULE16);
+HMODULE16 WINAPI MapHModuleLS(HMODULE32);
+SEGPTR WINAPI MapLS(LPVOID);
+LPVOID WINAPI MapSL(SEGPTR);
+LPVOID WINAPI MapViewOfFile(HANDLE32,DWORD,DWORD,DWORD,DWORD);
+LPVOID WINAPI MapViewOfFileEx(HANDLE32,DWORD,DWORD,DWORD,DWORD,LPVOID);
+BOOL32 WINAPI MoveFile32A(LPCSTR,LPCSTR);
+BOOL32 WINAPI MoveFile32W(LPCWSTR,LPCWSTR);
+#define MoveFile WINELIB_NAME_AW(MoveFile)
+BOOL32 WINAPI MoveFileEx32A(LPCSTR,LPCSTR,DWORD);
+BOOL32 WINAPI MoveFileEx32W(LPCWSTR,LPCWSTR,DWORD);
+#define MoveFileEx WINELIB_NAME_AW(MoveFileEx)
+INT32 WINAPI MultiByteToWideChar(UINT32,DWORD,LPCSTR,INT32,LPWSTR,INT32);
+INT32 WINAPI WideCharToMultiByte(UINT32,DWORD,LPCWSTR,INT32,LPSTR,INT32,LPCSTR,BOOL32*);
+HANDLE32 WINAPI OpenEvent32A(DWORD,BOOL32,LPCSTR);
+HANDLE32 WINAPI OpenEvent32W(DWORD,BOOL32,LPCWSTR);
+#define OpenEvent WINELIB_NAME_AW(OpenEvent)
+HANDLE32 WINAPI OpenFileMapping32A(DWORD,BOOL32,LPCSTR);
+HANDLE32 WINAPI OpenFileMapping32W(DWORD,BOOL32,LPCWSTR);
+#define OpenFileMapping WINELIB_NAME_AW(OpenFileMapping)
+HANDLE32 WINAPI OpenMutex32A(DWORD,BOOL32,LPCSTR);
+HANDLE32 WINAPI OpenMutex32W(DWORD,BOOL32,LPCWSTR);
+#define OpenMutex WINELIB_NAME_AW(OpenMutex)
+HANDLE32 WINAPI OpenProcess(DWORD,BOOL32,DWORD);
+HANDLE32 WINAPI OpenSemaphore32A(DWORD,BOOL32,LPCSTR);
+HANDLE32 WINAPI OpenSemaphore32W(DWORD,BOOL32,LPCWSTR);
+#define OpenSemaphore WINELIB_NAME_AW(OpenSemaphore)
+BOOL32 WINAPI PulseEvent(HANDLE32);
+BOOL32 WINAPI PurgeComm(HANDLE32,DWORD);
+DWORD WINAPI QueryDosDevice32A(LPCSTR,LPSTR,DWORD);
+DWORD WINAPI QueryDosDevice32W(LPCWSTR,LPWSTR,DWORD);
+#define QueryDosDevice WINELIB_NAME_AW(QueryDosDevice)
+BOOL32 WINAPI QueryPerformanceCounter(LPLARGE_INTEGER);
+BOOL32 WINAPI ReadConsole32A(HANDLE32,LPVOID,DWORD,LPDWORD,LPVOID);
+BOOL32 WINAPI ReadConsole32W(HANDLE32,LPVOID,DWORD,LPDWORD,LPVOID);
+#define ReadConsole WINELIB_NAME_AW(ReadConsole)
+BOOL32 WINAPI ReadConsoleOutputCharacter32A(HANDLE32,LPSTR,DWORD,
+ COORD,LPDWORD);
+#define ReadConsoleOutputCharacter WINELIB_NAME_AW(ReadConsoleOutputCharacter)
+BOOL32 WINAPI ReadFile(HANDLE32,LPVOID,DWORD,LPDWORD,LPOVERLAPPED);
+BOOL32 WINAPI ReleaseMutex(HANDLE32);
+BOOL32 WINAPI ReleaseSemaphore(HANDLE32,LONG,LPLONG);
+BOOL32 WINAPI ResetEvent(HANDLE32);
+DWORD WINAPI ResumeThread(HANDLE32);
+VOID WINAPI RtlFillMemory(LPVOID,UINT32,UINT32);
+VOID WINAPI RtlMoveMemory(LPVOID,LPCVOID,UINT32);
+VOID WINAPI RtlZeroMemory(LPVOID,UINT32);
+DWORD WINAPI SearchPath32A(LPCSTR,LPCSTR,LPCSTR,DWORD,LPSTR,LPSTR*);
+DWORD WINAPI SearchPath32W(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPWSTR,LPWSTR*);
+#define SearchPath WINELIB_NAME(SearchPath)
+BOOL32 WINAPI SetCommMask(INT32,DWORD);
+BOOL32 WINAPI SetComputerName32A(LPCSTR);
+BOOL32 WINAPI SetComputerName32W(LPCWSTR);
+#define SetComputerName WINELIB_NAME_AW(SetComputerName)
+BOOL32 WINAPI SetConsoleCursorPosition(HANDLE32,COORD);
+BOOL32 WINAPI SetConsoleMode(HANDLE32,DWORD);
+BOOL32 WINAPI SetConsoleTitle32A(LPCSTR);
+BOOL32 WINAPI SetConsoleTitle32W(LPCWSTR);
+#define SetConsoleTitle WINELIB_NAME_AW(SetConsoleTitle)
+BOOL32 WINAPI SetEndOfFile(HFILE32);
+BOOL32 WINAPI SetEnvironmentVariable32A(LPCSTR,LPCSTR);
+BOOL32 WINAPI SetEnvironmentVariable32W(LPCWSTR,LPCWSTR);
+#define SetEnvironmentVariable WINELIB_NAME_AW(SetEnvironmentVariable)
+BOOL32 WINAPI SetEvent(HANDLE32);
+VOID WINAPI SetFileApisToANSI(void);
+VOID WINAPI SetFileApisToOEM(void);
+DWORD WINAPI SetFilePointer(HFILE32,LONG,LPLONG,DWORD);
+BOOL32 WINAPI SetFileTime(HFILE32,const FILETIME*,const FILETIME*,
+ const FILETIME*);
+BOOL32 WINAPI SetHandleInformation(HANDLE32,DWORD,DWORD);
+BOOL32 WINAPI SetPriorityClass(HANDLE32,DWORD);
+BOOL32 WINAPI SetStdHandle(DWORD,HANDLE32);
+BOOL32 WINAPI SetSystemPowerState(BOOL32,BOOL32);
+BOOL32 WINAPI SetSystemTime(const SYSTEMTIME*);
+DWORD WINAPI SetThreadAffinityMask(HANDLE32,DWORD);
+BOOL32 WINAPI SetThreadLocale(LCID);
+BOOL32 WINAPI SetThreadPriority(HANDLE32,INT32);
+BOOL32 WINAPI SetTimeZoneInformation(const LPTIME_ZONE_INFORMATION);
+VOID WINAPI Sleep(DWORD);
+DWORD WINAPI SleepEx(DWORD,BOOL32);
+DWORD WINAPI SuspendThread(HANDLE32);
+BOOL32 WINAPI SystemTimeToFileTime(const SYSTEMTIME*,LPFILETIME);
+DWORD WINAPI TlsAlloc(void);
+BOOL32 WINAPI TlsFree(DWORD);
+LPVOID WINAPI TlsGetValue(DWORD);
+BOOL32 WINAPI TlsSetValue(DWORD,LPVOID);
+VOID WINAPI UnMapLS(SEGPTR);
+BOOL32 WINAPI UnlockFile(HFILE32,DWORD,DWORD,DWORD,DWORD);
+BOOL32 WINAPI UnmapViewOfFile(LPVOID);
+LPVOID WINAPI VirtualAlloc(LPVOID,DWORD,DWORD,DWORD);
+BOOL32 WINAPI VirtualFree(LPVOID,DWORD,DWORD);
+BOOL32 WINAPI VirtualLock(LPVOID,DWORD);
+BOOL32 WINAPI VirtualProtect(LPVOID,DWORD,DWORD,LPDWORD);
+BOOL32 WINAPI VirtualProtectEx(HANDLE32,LPVOID,DWORD,DWORD,LPDWORD);
+DWORD WINAPI VirtualQuery(LPCVOID,LPMEMORY_BASIC_INFORMATION,DWORD);
+DWORD WINAPI VirtualQueryEx(HANDLE32,LPCVOID,LPMEMORY_BASIC_INFORMATION,DWORD);
+BOOL32 WINAPI VirtualUnlock(LPVOID,DWORD);
+BOOL32 WINAPI WaitCommEvent(HANDLE32,LPDWORD,LPOVERLAPPED);
+BOOL32 WINAPI WaitForDebugEvent(LPDEBUG_EVENT,DWORD);
+DWORD WINAPI WaitForMultipleObjects(DWORD,const HANDLE32*,BOOL32,DWORD);
+DWORD WINAPI WaitForMultipleObjectsEx(DWORD,const HANDLE32*,BOOL32,DWORD,BOOL32);
+DWORD WINAPI WaitForSingleObject(HANDLE32,DWORD);
+DWORD WINAPI WaitForSingleObjectEx(HANDLE32,DWORD,BOOL32);
+SEGPTR WINAPI WOWGlobalAllocLock16(DWORD,DWORD,HGLOBAL16*);
+DWORD WINAPI WOWCallback16(FARPROC16,DWORD);
+BOOL32 WINAPI WOWCallback16Ex(FARPROC16,DWORD,DWORD,LPVOID,LPDWORD);
+HANDLE32 WINAPI WOWHandle32(WORD,WOW_HANDLE_TYPE);
+BOOL32 WINAPI WriteConsole32A(HANDLE32,LPCVOID,DWORD,LPDWORD,LPVOID);
+BOOL32 WINAPI WriteConsole32W(HANDLE32,LPCVOID,DWORD,LPDWORD,LPVOID);
+#define WriteConsole WINELIB_NAME_AW(WriteConsole)
+BOOL32 WINAPI WriteFile(HANDLE32,LPCVOID,DWORD,LPDWORD,LPOVERLAPPED);
+VOID WINAPI ZeroMemory(LPVOID,UINT32);
+#define ZeroMemory RtlZeroMemory
+DWORD WINAPI GetLastError(void);
+LANGID WINAPI GetSystemDefaultLangID(void);
+LCID WINAPI GetSystemDefaultLCID(void);
+LANGID WINAPI GetUserDefaultLangID(void);
+LCID WINAPI GetUserDefaultLCID(void);
+VOID WINAPI SetLastError(DWORD);
+ATOM WINAPI AddAtom32A(LPCSTR);
+ATOM WINAPI AddAtom32W(LPCWSTR);
+#define AddAtom WINELIB_NAME_AW(AddAtom)
+UINT32 WINAPI CompareString32A(DWORD,DWORD,LPCSTR,DWORD,LPCSTR,DWORD);
+UINT32 WINAPI CompareString32W(DWORD,DWORD,LPCWSTR,DWORD,LPCWSTR,DWORD);
+#define CompareString WINELIB_NAME_AW(CompareString)
+BOOL32 WINAPI CreateDirectory32A(LPCSTR,LPSECURITY_ATTRIBUTES);
+BOOL32 WINAPI CreateDirectory32W(LPCWSTR,LPSECURITY_ATTRIBUTES);
+#define CreateDirectory WINELIB_NAME_AW(CreateDirectory)
+BOOL32 WINAPI CreateDirectoryEx32A(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES);
+BOOL32 WINAPI CreateDirectoryEx32W(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES);
+#define CreateDirectoryEx WINELIB_NAME_AW(CreateDirectoryEx)
+#define DefineHandleTable32(w) ((w),TRUE)
+#define DefineHandleTable WINELIB_NAME(DefineHandleTable)
+ATOM WINAPI DeleteAtom32(ATOM);
+#define DeleteAtom WINELIB_NAME(DeleteAtom)
+BOOL32 WINAPI DeleteFile32A(LPCSTR);
+BOOL32 WINAPI DeleteFile32W(LPCWSTR);
+#define DeleteFile WINELIB_NAME_AW(DeleteFile)
+void WINAPI FatalAppExit32A(UINT32,LPCSTR);
+void WINAPI FatalAppExit32W(UINT32,LPCWSTR);
+#define FatalAppExit WINELIB_NAME_AW(FatalAppExit)
+ATOM WINAPI FindAtom32A(LPCSTR);
+ATOM WINAPI FindAtom32W(LPCWSTR);
+#define FindAtom WINELIB_NAME_AW(FindAtom)
+BOOL32 WINAPI FindClose32(HANDLE32);
+#define FindClose WINELIB_NAME(FindClose)
+HANDLE16 WINAPI FindFirstFile16(LPCSTR,LPWIN32_FIND_DATA32A);
+HANDLE32 WINAPI FindFirstFile32A(LPCSTR,LPWIN32_FIND_DATA32A);
+HANDLE32 WINAPI FindFirstFile32W(LPCWSTR,LPWIN32_FIND_DATA32W);
+#define FindFirstFile WINELIB_NAME_AW(FindFirstFile)
+BOOL16 WINAPI FindNextFile16(HANDLE16,LPWIN32_FIND_DATA32A);
+BOOL32 WINAPI FindNextFile32A(HANDLE32,LPWIN32_FIND_DATA32A);
+BOOL32 WINAPI FindNextFile32W(HANDLE32,LPWIN32_FIND_DATA32W);
+#define FindNextFile WINELIB_NAME_AW(FindNextFile)
+HRSRC32 WINAPI FindResource32A(HMODULE32,LPCSTR,LPCSTR);
+HRSRC32 WINAPI FindResource32W(HMODULE32,LPCWSTR,LPCWSTR);
+#define FindResource WINELIB_NAME_AW(FindResource)
+VOID WINAPI FreeLibrary16(HINSTANCE16);
+BOOL32 WINAPI FreeLibrary32(HMODULE32);
+#define FreeLibrary WINELIB_NAME(FreeLibrary)
+#define FreeModule32(handle) FreeLibrary32(handle)
+#define FreeProcInstance32(proc) /*nothing*/
+#define FreeProcInstance WINELIB_NAME(FreeProcInstance)
+BOOL32 WINAPI FreeResource32(HGLOBAL32);
+#define FreeResource WINELIB_NAME(FreeResource)
+UINT32 WINAPI GetAtomName32A(ATOM,LPSTR,INT32);
+UINT32 WINAPI GetAtomName32W(ATOM,LPWSTR,INT32);
+#define GetAtomName WINELIB_NAME_AW(GetAtomName)
+UINT32 WINAPI GetCurrentDirectory32A(UINT32,LPSTR);
+UINT32 WINAPI GetCurrentDirectory32W(UINT32,LPWSTR);
+#define GetCurrentDirectory WINELIB_NAME_AW(GetCurrentDirectory)
+BOOL32 WINAPI GetDiskFreeSpace32A(LPCSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
+BOOL32 WINAPI GetDiskFreeSpace32W(LPCWSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
+#define GetDiskFreeSpace WINELIB_NAME_AW(GetDiskFreeSpace)
+BOOL32 WINAPI GetDiskFreeSpaceEx32A(LPCSTR,LPULARGE_INTEGER,LPULARGE_INTEGER,LPULARGE_INTEGER);
+BOOL32 WINAPI GetDiskFreeSpaceEx32W(LPCWSTR,LPULARGE_INTEGER,LPULARGE_INTEGER,LPULARGE_INTEGER);
+#define GetDiskFreeSpaceEx WINELIB_NAME_AW(GetDiskFreeSpaceEx)
+UINT32 WINAPI GetDriveType32A(LPCSTR);
+UINT32 WINAPI GetDriveType32W(LPCWSTR);
+#define GetDriveType WINELIB_NAME_AW(GetDriveType)
+DWORD WINAPI GetFileAttributes32A(LPCSTR);
+DWORD WINAPI GetFileAttributes32W(LPCWSTR);
+#define GetFileAttributes WINELIB_NAME_AW(GetFileAttributes)
+#define GetFreeSpace32(w) (0x100000L)
+#define GetFreeSpace WINELIB_NAME(GetFreeSpace)
+UINT32 WINAPI GetLogicalDriveStrings32A(UINT32,LPSTR);
+UINT32 WINAPI GetLogicalDriveStrings32W(UINT32,LPWSTR);
+#define GetLogicalDriveStrings WINELIB_NAME_AW(GetLogicalDriveStrings)
+INT32 WINAPI GetLocaleInfo32A(LCID,LCTYPE,LPSTR,INT32);
+INT32 WINAPI GetLocaleInfo32W(LCID,LCTYPE,LPWSTR,INT32);
+#define GetLocaleInfo WINELIB_NAME_AW(GetLocaleInfo)
+DWORD WINAPI GetModuleFileName32A(HMODULE32,LPSTR,DWORD);
+DWORD WINAPI GetModuleFileName32W(HMODULE32,LPWSTR,DWORD);
+#define GetModuleFileName WINELIB_NAME_AW(GetModuleFileName)
+HMODULE32 WINAPI GetModuleHandle32A(LPCSTR);
+HMODULE32 WINAPI GetModuleHandle32W(LPCWSTR);
+#define GetModuleHandle WINELIB_NAME_AW(GetModuleHandle)
+UINT32 WINAPI GetPrivateProfileInt32A(LPCSTR,LPCSTR,INT32,LPCSTR);
+UINT32 WINAPI GetPrivateProfileInt32W(LPCWSTR,LPCWSTR,INT32,LPCWSTR);
+#define GetPrivateProfileInt WINELIB_NAME_AW(GetPrivateProfileInt)
+INT32 WINAPI GetPrivateProfileSection32A(LPCSTR,LPSTR,DWORD,LPCSTR);
+INT32 WINAPI GetPrivateProfileSection32W(LPCWSTR,LPWSTR,DWORD,LPCWSTR);
+#define GetPrivateProfileSection WINELIB_NAME_AW(GetPrivateProfileSection)
+DWORD WINAPI GetPrivateProfileSectionNames32A(LPSTR,DWORD,LPCSTR);
+DWORD WINAPI GetPrivateProfileSectionNames32W(LPWSTR,DWORD,LPCWSTR);
+#define GetPrivateProfileSectionNames WINELIB_NAME_AW(GetPrivateProfileSectionNames)
+INT32 WINAPI GetPrivateProfileString32A(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT32,LPCSTR);
+INT32 WINAPI GetPrivateProfileString32W(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT32,LPCWSTR);
+#define GetPrivateProfileString WINELIB_NAME_AW(GetPrivateProfileString)
+BOOL32 WINAPI GetPrivateProfileStruct32A(LPCSTR,LPCSTR,LPVOID,UINT32,LPCSTR);
+BOOL32 WINAPI GetPrivateProfileStruct32W(LPCWSTR,LPCWSTR,LPVOID,UINT32,LPCWSTR);
+#define GetPrivateProfileStruct WINELIB_NAME_AW(GetPrivateProfileStruct)
+FARPROC32 WINAPI GetProcAddress32(HMODULE32,LPCSTR);
+#define GetProcAddress WINELIB_NAME(GetProcAddress)
+UINT32 WINAPI GetProfileInt32A(LPCSTR,LPCSTR,INT32);
+UINT32 WINAPI GetProfileInt32W(LPCWSTR,LPCWSTR,INT32);
+#define GetProfileInt WINELIB_NAME_AW(GetProfileInt)
+INT32 WINAPI GetProfileSection32A(LPCSTR,LPSTR,DWORD);
+INT32 WINAPI GetProfileSection32W(LPCWSTR,LPWSTR,DWORD);
+#define GetProfileSection WINELIB_NAME_AW(GetProfileSection)
+INT32 WINAPI GetProfileString32A(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT32);
+INT32 WINAPI GetProfileString32W(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT32);
+#define GetProfileString WINELIB_NAME_AW(GetProfileString)
+BOOL32 WINAPI GetStringType32A(LCID,DWORD,LPCSTR,INT32,LPWORD);
+BOOL32 WINAPI GetStringType32W(DWORD,LPCWSTR,INT32,LPWORD);
+#define GetStringType WINELIB_NAME_AW(GetStringType)
+UINT32 WINAPI GetSystemDirectory32A(LPSTR,UINT32);
+UINT32 WINAPI GetSystemDirectory32W(LPWSTR,UINT32);
+#define GetSystemDirectory WINELIB_NAME_AW(GetSystemDirectory)
+UINT32 WINAPI GetTempFileName32A(LPCSTR,LPCSTR,UINT32,LPSTR);
+UINT32 WINAPI GetTempFileName32W(LPCWSTR,LPCWSTR,UINT32,LPWSTR);
+#define GetTempFileName WINELIB_NAME_AW(GetTempFileName)
+UINT32 WINAPI GetTempPath32A(UINT32,LPSTR);
+UINT32 WINAPI GetTempPath32W(UINT32,LPWSTR);
+#define GetTempPath WINELIB_NAME_AW(GetTempPath)
+LONG WINAPI GetVersion32(void);
+#define GetVersion WINELIB_NAME(GetVersion)
+BOOL32 WINAPI GetExitCodeProcess(HANDLE32,LPDWORD);
+BOOL32 WINAPI GetVolumeInformation32A(LPCSTR,LPSTR,DWORD,LPDWORD,LPDWORD,LPDWORD,LPSTR,DWORD);
+BOOL32 WINAPI GetVolumeInformation32W(LPCWSTR,LPWSTR,DWORD,LPDWORD,LPDWORD,LPDWORD,LPWSTR,DWORD);
+#define GetVolumeInformation WINELIB_NAME_AW(GetVolumeInformation)
+UINT32 WINAPI GetWindowsDirectory32A(LPSTR,UINT32);
+UINT32 WINAPI GetWindowsDirectory32W(LPWSTR,UINT32);
+#define GetWindowsDirectory WINELIB_NAME_AW(GetWindowsDirectory)
+HGLOBAL16 WINAPI GlobalAlloc16(UINT16,DWORD);
+HGLOBAL32 WINAPI GlobalAlloc32(UINT32,DWORD);
+#define GlobalAlloc WINELIB_NAME(GlobalAlloc)
+DWORD WINAPI GlobalCompact32(DWORD);
+#define GlobalCompact WINELIB_NAME(GlobalCompact)
+UINT32 WINAPI GlobalFlags32(HGLOBAL32);
+#define GlobalFlags WINELIB_NAME(GlobalFlags)
+HGLOBAL16 WINAPI GlobalFree16(HGLOBAL16);
+HGLOBAL32 WINAPI GlobalFree32(HGLOBAL32);
+#define GlobalFree WINELIB_NAME(GlobalFree)
+HGLOBAL32 WINAPI GlobalHandle32(LPCVOID);
+#define GlobalHandle WINELIB_NAME(GlobalHandle)
+WORD WINAPI GlobalFix16(HGLOBAL16);
+VOID WINAPI GlobalFix32(HGLOBAL32);
+#define GlobalFix WINELIB_NAME(GlobalFix)
+LPVOID WINAPI GlobalLock16(HGLOBAL16);
+LPVOID WINAPI GlobalLock32(HGLOBAL32);
+#define GlobalLock WINELIB_NAME(GlobalLock)
+HGLOBAL32 WINAPI GlobalReAlloc32(HGLOBAL32,DWORD,UINT32);
+#define GlobalReAlloc WINELIB_NAME(GlobalReAlloc)
+DWORD WINAPI GlobalSize16(HGLOBAL16);
+DWORD WINAPI GlobalSize32(HGLOBAL32);
+#define GlobalSize WINELIB_NAME(GlobalSize)
+VOID WINAPI GlobalUnfix16(HGLOBAL16);
+VOID WINAPI GlobalUnfix32(HGLOBAL32);
+#define GlobalUnfix WINELIB_NAME(GlobalUnfix)
+BOOL16 WINAPI GlobalUnlock16(HGLOBAL16);
+BOOL32 WINAPI GlobalUnlock32(HGLOBAL32);
+#define GlobalUnlock WINELIB_NAME(GlobalUnlock)
+BOOL16 WINAPI GlobalUnWire16(HGLOBAL16);
+BOOL32 WINAPI GlobalUnWire32(HGLOBAL32);
+#define GlobalUnWire WINELIB_NAME(GlobalUnWire)
+SEGPTR WINAPI GlobalWire16(HGLOBAL16);
+LPVOID WINAPI GlobalWire32(HGLOBAL32);
+#define GlobalWire WINELIB_NAME(GlobalWire)
+BOOL32 WINAPI InitAtomTable32(DWORD);
+#define InitAtomTable WINELIB_NAME(InitAtomTable)
+BOOL32 WINAPI IsBadCodePtr32(FARPROC32);
+#define IsBadCodePtr WINELIB_NAME(IsBadCodePtr)
+BOOL32 WINAPI IsBadHugeReadPtr32(LPCVOID,UINT32);
+#define IsBadHugeReadPtr WINELIB_NAME(IsBadHugeReadPtr)
+BOOL32 WINAPI IsBadHugeWritePtr32(LPVOID,UINT32);
+#define IsBadHugeWritePtr WINELIB_NAME(IsBadHugeWritePtr)
+BOOL32 WINAPI IsBadReadPtr32(LPCVOID,UINT32);
+#define IsBadReadPtr WINELIB_NAME(IsBadReadPtr)
+BOOL32 WINAPI IsBadStringPtr32A(LPCSTR,UINT32);
+BOOL32 WINAPI IsBadStringPtr32W(LPCWSTR,UINT32);
+#define IsBadStringPtr WINELIB_NAME_AW(IsBadStringPtr)
+BOOL32 WINAPI IsBadWritePtr32(LPVOID,UINT32);
+#define IsBadWritePtr WINELIB_NAME(IsBadWritePtr)
+BOOL32 WINAPI IsDBCSLeadByte32(BYTE);
+#define IsDBCSLeadByte WINELIB_NAME(IsDBCSLeadByte)
+HINSTANCE16 WINAPI LoadLibrary16(LPCSTR);
+HMODULE32 WINAPI LoadLibrary32A(LPCSTR);
+HMODULE32 WINAPI LoadLibrary32W(LPCWSTR);
+#define LoadLibrary WINELIB_NAME_AW(LoadLibrary)
+HMODULE32 WINAPI LoadLibraryEx32A(LPCSTR,HFILE32,DWORD);
+HMODULE32 WINAPI LoadLibraryEx32W(LPCWSTR,HFILE32,DWORD);
+#define LoadLibraryEx WINELIB_NAME_AW(LoadLibraryEx)
+HINSTANCE16 WINAPI LoadModule16(LPCSTR,LPVOID);
+HINSTANCE32 WINAPI LoadModule32(LPCSTR,LPVOID);
+#define LoadModule WINELIB_NAME(LoadModule)
+HGLOBAL32 WINAPI LoadResource32(HMODULE32,HRSRC32);
+#define LoadResource WINELIB_NAME(LoadResource)
+HLOCAL32 WINAPI LocalAlloc32(UINT32,DWORD);
+#define LocalAlloc WINELIB_NAME(LocalAlloc)
+UINT32 WINAPI LocalCompact32(UINT32);
+#define LocalCompact WINELIB_NAME(LocalCompact)
+UINT32 WINAPI LocalFlags32(HLOCAL32);
+#define LocalFlags WINELIB_NAME(LocalFlags)
+HLOCAL32 WINAPI LocalFree32(HLOCAL32);
+#define LocalFree WINELIB_NAME(LocalFree)
+HLOCAL32 WINAPI LocalHandle32(LPCVOID);
+#define LocalHandle WINELIB_NAME(LocalHandle)
+LPVOID WINAPI LocalLock32(HLOCAL32);
+#define LocalLock WINELIB_NAME(LocalLock)
+HLOCAL32 WINAPI LocalReAlloc32(HLOCAL32,DWORD,UINT32);
+#define LocalReAlloc WINELIB_NAME(LocalReAlloc)
+UINT32 WINAPI LocalShrink32(HGLOBAL32,UINT32);
+#define LocalShrink WINELIB_NAME(LocalShrink)
+UINT32 WINAPI LocalSize32(HLOCAL32);
+#define LocalSize WINELIB_NAME(LocalSize)
+BOOL32 WINAPI LocalUnlock32(HLOCAL32);
+#define LocalUnlock WINELIB_NAME(LocalUnlock)
+LPVOID WINAPI LockResource32(HGLOBAL32);
+#define LockResource WINELIB_NAME(LockResource)
+#define LockSegment32(handle) GlobalFix32((HANDLE32)(handle))
+#define LockSegment WINELIB_NAME(LockSegment)
+#define MakeProcInstance32(proc,inst) (proc)
+#define MakeProcInstance WINELIB_NAME(MakeProcInstance)
+HFILE16 WINAPI OpenFile16(LPCSTR,OFSTRUCT*,UINT16);
+HFILE32 WINAPI OpenFile32(LPCSTR,OFSTRUCT*,UINT32);
+#define OpenFile WINELIB_NAME(OpenFile)
+VOID WINAPI OutputDebugString32A(LPCSTR);
+VOID WINAPI OutputDebugString32W(LPCWSTR);
+#define OutputDebugString WINELIB_NAME_AW(OutputDebugString)
+BOOL32 WINAPI RemoveDirectory32A(LPCSTR);
+BOOL32 WINAPI RemoveDirectory32W(LPCWSTR);
+#define RemoveDirectory WINELIB_NAME_AW(RemoveDirectory)
+BOOL32 WINAPI SetCurrentDirectory32A(LPCSTR);
+BOOL32 WINAPI SetCurrentDirectory32W(LPCWSTR);
+#define SetCurrentDirectory WINELIB_NAME_AW(SetCurrentDirectory)
+UINT32 WINAPI SetErrorMode32(UINT32);
+#define SetErrorMode WINELIB_NAME(SetErrorMode)
+BOOL32 WINAPI SetFileAttributes32A(LPCSTR,DWORD);
+BOOL32 WINAPI SetFileAttributes32W(LPCWSTR,DWORD);
+#define SetFileAttributes WINELIB_NAME_AW(SetFileAttributes)
+UINT32 WINAPI SetHandleCount32(UINT32);
+#define SetHandleCount WINELIB_NAME(SetHandleCount)
+#define SetSwapAreaSize32(w) (w)
+#define SetSwapAreaSize WINELIB_NAME(SetSwapAreaSize)
+DWORD WINAPI SizeofResource32(HMODULE32,HRSRC32);
+#define SizeofResource WINELIB_NAME(SizeofResource)
+#define UnlockSegment32(handle) GlobalUnfix((HANDLE32)(handle))
+#define UnlockSegment WINELIB_NAME(UnlockSegment)
+DWORD WINAPI VerLanguageName32A(UINT32,LPSTR,UINT32);
+DWORD WINAPI VerLanguageName32W(UINT32,LPWSTR,UINT32);
+#define VerLanguageName WINELIB_NAME_AW(VerLanguageName)
+BOOL32 WINAPI WritePrivateProfileSection32A(LPCSTR,LPCSTR,LPCSTR);
+BOOL32 WINAPI WritePrivateProfileSection32W(LPCWSTR,LPCWSTR,LPCWSTR);
+#define WritePrivateProfileSection WINELIB_NAME_AW(WritePrivateProfileSection)
+BOOL32 WINAPI WritePrivateProfileString32A(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
+BOOL32 WINAPI WritePrivateProfileString32W(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR);
+BOOL32 WINAPI WriteProfileSection32A(LPCSTR,LPCSTR);
+BOOL32 WINAPI WriteProfileSection32W(LPCWSTR,LPCWSTR);
+#define WritePrivateProfileString WINELIB_NAME_AW(WritePrivateProfileString)
+BOOL32 WINAPI WritePrivateProfileStruct32A(LPCSTR,LPCSTR,LPVOID,UINT32,LPCSTR);
+BOOL32 WINAPI WritePrivateProfileStruct32W(LPCWSTR,LPCWSTR,LPVOID,UINT32,LPCWSTR);
+#define WritePrivateProfileStruct WINELIB_NAME_AW(WritePrivateProfileStruct)
+BOOL32 WINAPI WriteProfileString32A(LPCSTR,LPCSTR,LPCSTR);
+BOOL32 WINAPI WriteProfileString32W(LPCWSTR,LPCWSTR,LPCWSTR);
+#define WriteProfileString WINELIB_NAME_AW(WriteProfileString)
+#define Yield32()
+#define Yield WINELIB_NAME(Yield)
+LPSTR WINAPI lstrcat32A(LPSTR,LPCSTR);
+LPWSTR WINAPI lstrcat32W(LPWSTR,LPCWSTR);
+#define lstrcat WINELIB_NAME_AW(lstrcat)
+LPSTR WINAPI lstrcatn32A(LPSTR,LPCSTR,INT32);
+LPWSTR WINAPI lstrcatn32W(LPWSTR,LPCWSTR,INT32);
+#define lstrcatn WINELIB_NAME_AW(lstrcatn)
+LPSTR WINAPI lstrcpy32A(LPSTR,LPCSTR);
+LPWSTR WINAPI lstrcpy32W(LPWSTR,LPCWSTR);
+#define lstrcpy WINELIB_NAME_AW(lstrcpy)
+LPSTR WINAPI lstrcpyn32A(LPSTR,LPCSTR,INT32);
+LPWSTR WINAPI lstrcpyn32W(LPWSTR,LPCWSTR,INT32);
+#define lstrcpyn WINELIB_NAME_AW(lstrcpyn)
+INT32 WINAPI lstrlen32A(LPCSTR);
+INT32 WINAPI lstrlen32W(LPCWSTR);
+#define lstrlen WINELIB_NAME_AW(lstrlen)
+HINSTANCE32 WINAPI WinExec32(LPCSTR,UINT32);
+#define WinExec WINELIB_NAME(WinExec)
+LONG WINAPI _hread32(HFILE32,LPVOID,LONG);
+#define _hread WINELIB_NAME(_hread)
+LONG WINAPI _hwrite32(HFILE32,LPCSTR,LONG);
+#define _hwrite WINELIB_NAME(_hwrite)
+HFILE32 WINAPI _lcreat32(LPCSTR,INT32);
+#define _lcreat WINELIB_NAME(_lcreat)
+HFILE32 WINAPI _lclose32(HFILE32);
+#define _lclose WINELIB_NAME(_lclose)
+LONG WINAPI _llseek32(HFILE32,LONG,INT32);
+#define _llseek WINELIB_NAME(_llseek)
+HFILE32 WINAPI _lopen32(LPCSTR,INT32);
+#define _lopen WINELIB_NAME(_lopen)
+UINT32 WINAPI _lread32(HFILE32,LPVOID,UINT32);
+#define _lread WINELIB_NAME(_lread)
+UINT32 WINAPI _lwrite32(HFILE32,LPCSTR,UINT32);
+#define _lwrite WINELIB_NAME(_lwrite)
+SEGPTR WINAPI WIN16_GlobalLock16(HGLOBAL16);
+INT32 WINAPI lstrcmp32A(LPCSTR,LPCSTR);
+INT32 WINAPI lstrcmp32W(LPCWSTR,LPCWSTR);
+#define lstrcmp WINELIB_NAME_AW(lstrcmp)
+INT32 WINAPI lstrcmpi32A(LPCSTR,LPCSTR);
+INT32 WINAPI lstrcmpi32W(LPCWSTR,LPCWSTR);
+#define lstrcmpi WINELIB_NAME_AW(lstrcmpi)
#ifdef __cplusplus
diff --git a/include/wincon.h b/include/wincon.h
index af07b33..a32a71a 100644
--- a/include/wincon.h
+++ b/include/wincon.h
@@ -1,6 +1,8 @@
#ifndef __WINE_WINCON_H
#define __WINE_WINCON_H
+#include "winbase.h" /* for COORD */
+
#define CTRL_C_EVENT 0
#define CTRL_BREAK_EVENT 1
#define CTRL_CLOSE_EVENT 2
diff --git a/include/windef.h b/include/windef.h
new file mode 100644
index 0000000..5ec07f3
--- /dev/null
+++ b/include/windef.h
@@ -0,0 +1,19 @@
+#ifndef __INCLUDE_WINDEF_H
+#define __INCLUDE_WINDEF_H
+
+#include "wintypes.h"
+
+#pragma pack(1)
+
+/* FIXME: _MAX_PATH should be defined in stdlib.h and MAX_PATH in windef.h
+ * and mapiwin.h
+ */
+#define MAX_PATH 260
+
+#define HFILE_ERROR16 ((HFILE16)-1)
+#define HFILE_ERROR32 ((HFILE32)-1)
+#define HFILE_ERROR WINELIB_NAME(HFILE_ERROR)
+
+#pragma pack(4)
+
+#endif /* __INCLUDE_WINDEF_H */
diff --git a/include/windows.h b/include/windows.h
index 5738f10..4e84d74 100644
--- a/include/windows.h
+++ b/include/windows.h
@@ -5,723 +5,33 @@
extern "C" {
#endif
-#ifndef RC_INVOKED
-#include <stdarg.h>
-#endif
-
-#include "wintypes.h"
-#include "winbase.h"
-
-/* FIXME: _MAX_PATH should be defined in stdlib.h and MAX_PATH in windef.h
- * and mapiwin.h
- */
-#define MAX_PATH 260
-
-#ifndef DONT_INCLUDE_WINGDI
#include "winbase.h"
#include "wingdi.h"
#include "winuser.h"
-#endif /* DONT_INCLUDE_WINGDI */
+#include "windef.h"
+#include "shell.h"
+#include "winreg.h"
+#include "winnetwk.h"
+#include "winver.h"
+#include "winreg.h"
+#include "lzexpand.h"
+#include "shellapi.h"
+#include "ole2.h"
+#include "winnls.h"
-#pragma pack(1)
+/* FIXME: remove the following includes which are not in SDK */
+#include "ntdll.h"
+#include "wine/keyboard16.h"
+#include "wine/shell16.h"
+#include "wine/w32skrnl.h"
+#include "wine/winbase16.h"
+#include "wine/winesound.h"
+#include "wine/winestring.h"
+#include "wine/winuser16.h"
-typedef struct tagCOORD {
- INT16 x;
- INT16 y;
-} COORD, *LPCOORD;
-
- /* Windows */
-
-typedef struct
-{
- LPVOID lpCreateParams;
- HINSTANCE16 hInstance;
- HMENU16 hMenu;
- HWND16 hwndParent;
- INT16 cy;
- INT16 cx;
- INT16 y;
- INT16 x;
- LONG style WINE_PACKED;
- SEGPTR lpszName WINE_PACKED;
- SEGPTR lpszClass WINE_PACKED;
- DWORD dwExStyle WINE_PACKED;
-} CREATESTRUCT16, *LPCREATESTRUCT16;
-
-typedef struct
-{
- LPVOID lpCreateParams;
- HINSTANCE32 hInstance;
- HMENU32 hMenu;
- HWND32 hwndParent;
- INT32 cy;
- INT32 cx;
- INT32 y;
- INT32 x;
- LONG style;
- LPCSTR lpszName;
- LPCSTR lpszClass;
- DWORD dwExStyle;
-} CREATESTRUCT32A, *LPCREATESTRUCT32A;
-
-typedef struct
-{
- LPVOID lpCreateParams;
- HINSTANCE32 hInstance;
- HMENU32 hMenu;
- HWND32 hwndParent;
- INT32 cy;
- INT32 cx;
- INT32 y;
- INT32 x;
- LONG style;
- LPCWSTR lpszName;
- LPCWSTR lpszClass;
- DWORD dwExStyle;
-} CREATESTRUCT32W, *LPCREATESTRUCT32W;
-
-DECL_WINELIB_TYPE_AW(CREATESTRUCT)
-DECL_WINELIB_TYPE_AW(LPCREATESTRUCT)
-
-typedef struct
-{
- HMENU16 hWindowMenu;
- UINT16 idFirstChild;
-} CLIENTCREATESTRUCT16, *LPCLIENTCREATESTRUCT16;
-
-typedef struct
-{
- HMENU32 hWindowMenu;
- UINT32 idFirstChild;
-} CLIENTCREATESTRUCT32, *LPCLIENTCREATESTRUCT32;
-
-DECL_WINELIB_TYPE(CLIENTCREATESTRUCT)
-DECL_WINELIB_TYPE(LPCLIENTCREATESTRUCT)
-
-typedef struct
-{
- SEGPTR szClass;
- SEGPTR szTitle;
- HINSTANCE16 hOwner;
- INT16 x;
- INT16 y;
- INT16 cx;
- INT16 cy;
- DWORD style WINE_PACKED;
- LPARAM lParam WINE_PACKED;
-} MDICREATESTRUCT16, *LPMDICREATESTRUCT16;
-
-typedef struct
-{
- LPCSTR szClass;
- LPCSTR szTitle;
- HINSTANCE32 hOwner;
- INT32 x;
- INT32 y;
- INT32 cx;
- INT32 cy;
- DWORD style;
- LPARAM lParam;
-} MDICREATESTRUCT32A, *LPMDICREATESTRUCT32A;
-
-typedef struct
-{
- LPCWSTR szClass;
- LPCWSTR szTitle;
- HINSTANCE32 hOwner;
- INT32 x;
- INT32 y;
- INT32 cx;
- INT32 cy;
- DWORD style;
- LPARAM lParam;
-} MDICREATESTRUCT32W, *LPMDICREATESTRUCT32W;
-
-DECL_WINELIB_TYPE_AW(MDICREATESTRUCT)
-DECL_WINELIB_TYPE_AW(LPMDICREATESTRUCT)
-
-#define MDITILE_VERTICAL 0x0000
-#define MDITILE_HORIZONTAL 0x0001
-#define MDITILE_SKIPDISABLED 0x0002
-
-#define MDIS_ALLCHILDSTYLES 0x0001
-
-typedef struct {
- DWORD styleOld;
- DWORD styleNew;
-} STYLESTRUCT, *LPSTYLESTRUCT;
-
- /* Offsets for GetWindowLong() and GetWindowWord() */
-#define GWL_USERDATA (-21)
-#define GWL_EXSTYLE (-20)
-#define GWL_STYLE (-16)
-#define GWW_ID (-12)
-#define GWL_ID GWW_ID
-#define GWW_HWNDPARENT (-8)
-#define GWL_HWNDPARENT GWW_HWNDPARENT
-#define GWW_HINSTANCE (-6)
-#define GWL_HINSTANCE GWW_HINSTANCE
-#define GWL_WNDPROC (-4)
-#define DWL_MSGRESULT 0
-#define DWL_DLGPROC 4
-#define DWL_USER 8
-
- /* GetWindow() constants */
-#define GW_HWNDFIRST 0
-#define GW_HWNDLAST 1
-#define GW_HWNDNEXT 2
-#define GW_HWNDPREV 3
-#define GW_OWNER 4
-#define GW_CHILD 5
-
- /* WM_GETMINMAXINFO struct */
-typedef struct
-{
- POINT16 ptReserved;
- POINT16 ptMaxSize;
- POINT16 ptMaxPosition;
- POINT16 ptMinTrackSize;
- POINT16 ptMaxTrackSize;
-} MINMAXINFO16;
-
-typedef struct
-{
- POINT32 ptReserved;
- POINT32 ptMaxSize;
- POINT32 ptMaxPosition;
- POINT32 ptMinTrackSize;
- POINT32 ptMaxTrackSize;
-} MINMAXINFO32;
-
-DECL_WINELIB_TYPE(MINMAXINFO)
-
- /* RedrawWindow() flags */
-#define RDW_INVALIDATE 0x0001
-#define RDW_INTERNALPAINT 0x0002
-#define RDW_ERASE 0x0004
-#define RDW_VALIDATE 0x0008
-#define RDW_NOINTERNALPAINT 0x0010
-#define RDW_NOERASE 0x0020
-#define RDW_NOCHILDREN 0x0040
-#define RDW_ALLCHILDREN 0x0080
-#define RDW_UPDATENOW 0x0100
-#define RDW_ERASENOW 0x0200
-#define RDW_FRAME 0x0400
-#define RDW_NOFRAME 0x0800
-
-/* debug flags */
-#define DBGFILL_ALLOC 0xfd
-#define DBGFILL_FREE 0xfb
-#define DBGFILL_BUFFER 0xf9
-#define DBGFILL_STACK 0xf7
-
- /* WM_WINDOWPOSCHANGING/CHANGED struct */
-typedef struct
-{
- HWND16 hwnd;
- HWND16 hwndInsertAfter;
- INT16 x;
- INT16 y;
- INT16 cx;
- INT16 cy;
- UINT16 flags;
-} WINDOWPOS16, *LPWINDOWPOS16;
-
-typedef struct
-{
- HWND32 hwnd;
- HWND32 hwndInsertAfter;
- INT32 x;
- INT32 y;
- INT32 cx;
- INT32 cy;
- UINT32 flags;
-} WINDOWPOS32, *LPWINDOWPOS32;
-
-DECL_WINELIB_TYPE(WINDOWPOS)
-DECL_WINELIB_TYPE(LPWINDOWPOS)
-
- /* WM_MOUSEACTIVATE return values */
-#define MA_ACTIVATE 1
-#define MA_ACTIVATEANDEAT 2
-#define MA_NOACTIVATE 3
-#define MA_NOACTIVATEANDEAT 4
-
- /* WM_ACTIVATE wParam values */
-#define WA_INACTIVE 0
-#define WA_ACTIVE 1
-#define WA_CLICKACTIVE 2
-
- /* WM_NCCALCSIZE parameter structure */
-typedef struct
-{
- RECT16 rgrc[3];
- SEGPTR lppos;
-} NCCALCSIZE_PARAMS16, *LPNCCALCSIZE_PARAMS16;
-
-typedef struct
-{
- RECT32 rgrc[3];
- WINDOWPOS32 *lppos;
-} NCCALCSIZE_PARAMS32, *LPNCCALCSIZE_PARAMS32;
-
-DECL_WINELIB_TYPE(NCCALCSIZE_PARAMS)
-DECL_WINELIB_TYPE(LPNCCALCSIZE_PARAMS)
-
- /* WM_NCCALCSIZE return flags */
-#define WVR_ALIGNTOP 0x0010
-#define WVR_ALIGNLEFT 0x0020
-#define WVR_ALIGNBOTTOM 0x0040
-#define WVR_ALIGNRIGHT 0x0080
-#define WVR_HREDRAW 0x0100
-#define WVR_VREDRAW 0x0200
-#define WVR_REDRAW (WVR_HREDRAW | WVR_VREDRAW)
-#define WVR_VALIDRECTS 0x0400
-
- /* WM_NCHITTEST return codes */
-#define HTERROR (-2)
-#define HTTRANSPARENT (-1)
-#define HTNOWHERE 0
-#define HTCLIENT 1
-#define HTCAPTION 2
-#define HTSYSMENU 3
-#define HTSIZE 4
-#define HTMENU 5
-#define HTHSCROLL 6
-#define HTVSCROLL 7
-#define HTMINBUTTON 8
-#define HTMAXBUTTON 9
-#define HTLEFT 10
-#define HTRIGHT 11
-#define HTTOP 12
-#define HTTOPLEFT 13
-#define HTTOPRIGHT 14
-#define HTBOTTOM 15
-#define HTBOTTOMLEFT 16
-#define HTBOTTOMRIGHT 17
-#define HTBORDER 18
-#define HTGROWBOX HTSIZE
-#define HTREDUCE HTMINBUTTON
-#define HTZOOM HTMAXBUTTON
-#define HTOBJECT 19
-#define HTCLOSE 20
-#define HTHELP 21
-#define HTSIZEFIRST HTLEFT
-#define HTSIZELAST HTBOTTOMRIGHT
-
- /* WM_SYSCOMMAND parameters */
-#ifdef SC_SIZE /* at least HP-UX: already defined in /usr/include/sys/signal.h */
-#undef SC_SIZE
-#endif
-#define SC_SIZE 0xf000
-#define SC_MOVE 0xf010
-#define SC_MINIMIZE 0xf020
-#define SC_MAXIMIZE 0xf030
-#define SC_NEXTWINDOW 0xf040
-#define SC_PREVWINDOW 0xf050
-#define SC_CLOSE 0xf060
-#define SC_VSCROLL 0xf070
-#define SC_HSCROLL 0xf080
-#define SC_MOUSEMENU 0xf090
-#define SC_KEYMENU 0xf100
-#define SC_ARRANGE 0xf110
-#define SC_RESTORE 0xf120
-#define SC_TASKLIST 0xf130
-#define SC_SCREENSAVE 0xf140
-#define SC_HOTKEY 0xf150
-
-#define CS_VREDRAW 0x0001
-#define CS_HREDRAW 0x0002
-#define CS_KEYCVTWINDOW 0x0004
-#define CS_DBLCLKS 0x0008
-#define CS_OWNDC 0x0020
-#define CS_CLASSDC 0x0040
-#define CS_PARENTDC 0x0080
-#define CS_NOKEYCVT 0x0100
-#define CS_NOCLOSE 0x0200
-#define CS_SAVEBITS 0x0800
-#define CS_BYTEALIGNCLIENT 0x1000
-#define CS_BYTEALIGNWINDOW 0x2000
-#define CS_GLOBALCLASS 0x4000
-
- /* Offsets for GetClassLong() and GetClassWord() */
-#define GCL_MENUNAME (-8)
-#define GCW_HBRBACKGROUND (-10)
-#define GCL_HBRBACKGROUND GCW_HBRBACKGROUND
-#define GCW_HCURSOR (-12)
-#define GCL_HCURSOR GCW_HCURSOR
-#define GCW_HICON (-14)
-#define GCL_HICON GCW_HICON
-#define GCW_HMODULE (-16)
-#define GCL_HMODULE GCW_HMODULE
-#define GCW_CBWNDEXTRA (-18)
-#define GCL_CBWNDEXTRA GCW_CBWNDEXTRA
-#define GCW_CBCLSEXTRA (-20)
-#define GCL_CBCLSEXTRA GCW_CBCLSEXTRA
-#define GCL_WNDPROC (-24)
-#define GCW_STYLE (-26)
-#define GCL_STYLE GCW_STYLE
-#define GCW_ATOM (-32)
-#define GCW_HICONSM (-34)
-#define GCL_HICONSM GCW_HICONSM
-
-/***** Window hooks *****/
-
- /* Hook values */
-#define WH_MIN (-1)
-#define WH_MSGFILTER (-1)
-#define WH_JOURNALRECORD 0
-#define WH_JOURNALPLAYBACK 1
-#define WH_KEYBOARD 2
-#define WH_GETMESSAGE 3
-#define WH_CALLWNDPROC 4
-#define WH_CBT 5
-#define WH_SYSMSGFILTER 6
-#define WH_MOUSE 7
-#define WH_HARDWARE 8
-#define WH_DEBUG 9
-#define WH_SHELL 10
-#define WH_FOREGROUNDIDLE 11
-#define WH_CALLWNDPROCRET 12
-#define WH_MAX 12
-
-#define WH_MINHOOK WH_MIN
-#define WH_MAXHOOK WH_MAX
-#define WH_NB_HOOKS (WH_MAXHOOK-WH_MINHOOK+1)
-
- /* Hook action codes */
-#define HC_ACTION 0
-#define HC_GETNEXT 1
-#define HC_SKIP 2
-#define HC_NOREMOVE 3
-#define HC_NOREM HC_NOREMOVE
-#define HC_SYSMODALON 4
-#define HC_SYSMODALOFF 5
-
- /* CallMsgFilter() values */
-#define MSGF_DIALOGBOX 0
-#define MSGF_MESSAGEBOX 1
-#define MSGF_MENU 2
-#define MSGF_MOVE 3
-#define MSGF_SIZE 4
-#define MSGF_SCROLLBAR 5
-#define MSGF_NEXTWINDOW 6
-#define MSGF_MAINLOOP 8
-#define MSGF_USER 4096
-
- /* Windows Exit Procedure flag values */
-#define WEP_FREE_DLL 0
-#define WEP_SYSTEM_EXIT 1
-
- /* Journalling hook structure */
-
-typedef struct
-{
- UINT16 message;
- UINT16 paramL;
- UINT16 paramH;
- DWORD time WINE_PACKED;
-} EVENTMSG16, *LPEVENTMSG16;
-
-typedef struct
-{
- UINT32 message;
- UINT32 paramL;
- UINT32 paramH;
- DWORD time;
- HWND32 hwnd;
-} EVENTMSG32, *LPEVENTMSG32;
-
-DECL_WINELIB_TYPE(EVENTMSG)
-DECL_WINELIB_TYPE(LPEVENTMSG)
-
- /* Mouse hook structure */
-
-typedef struct
-{
- POINT16 pt;
- HWND16 hwnd;
- UINT16 wHitTestCode;
- DWORD dwExtraInfo;
-} MOUSEHOOKSTRUCT16, *LPMOUSEHOOKSTRUCT16;
-
-typedef struct
-{
- POINT32 pt;
- HWND32 hwnd;
- UINT32 wHitTestCode;
- DWORD dwExtraInfo;
-} MOUSEHOOKSTRUCT32, *LPMOUSEHOOKSTRUCT32;
-
-DECL_WINELIB_TYPE(MOUSEHOOKSTRUCT)
-DECL_WINELIB_TYPE(LPMOUSEHOOKSTRUCT)
-
- /* Hardware hook structure */
-
-typedef struct
-{
- HWND16 hWnd;
- UINT16 wMessage;
- WPARAM16 wParam;
- LPARAM lParam WINE_PACKED;
-} HARDWAREHOOKSTRUCT16, *LPHARDWAREHOOKSTRUCT16;
-
-typedef struct
-{
- HWND32 hWnd;
- UINT32 wMessage;
- WPARAM32 wParam;
- LPARAM lParam;
-} HARDWAREHOOKSTRUCT32, *LPHARDWAREHOOKSTRUCT32;
-
-DECL_WINELIB_TYPE(HARDWAREHOOKSTRUCT)
-DECL_WINELIB_TYPE(LPHARDWAREHOOKSTRUCT)
-
- /* CBT hook values */
-#define HCBT_MOVESIZE 0
-#define HCBT_MINMAX 1
-#define HCBT_QS 2
-#define HCBT_CREATEWND 3
-#define HCBT_DESTROYWND 4
-#define HCBT_ACTIVATE 5
-#define HCBT_CLICKSKIPPED 6
-#define HCBT_KEYSKIPPED 7
-#define HCBT_SYSCOMMAND 8
-#define HCBT_SETFOCUS 9
-
- /* CBT hook structures */
-
-typedef struct
-{
- CREATESTRUCT16 *lpcs;
- HWND16 hwndInsertAfter;
-} CBT_CREATEWND16, *LPCBT_CREATEWND16;
-
-typedef struct
-{
- CREATESTRUCT32A *lpcs;
- HWND32 hwndInsertAfter;
-} CBT_CREATEWND32A, *LPCBT_CREATEWND32A;
-
-typedef struct
-{
- CREATESTRUCT32W *lpcs;
- HWND32 hwndInsertAfter;
-} CBT_CREATEWND32W, *LPCBT_CREATEWND32W;
-
-DECL_WINELIB_TYPE_AW(CBT_CREATEWND)
-DECL_WINELIB_TYPE_AW(LPCBT_CREATEWND)
-
-typedef struct
-{
- BOOL16 fMouse;
- HWND16 hWndActive;
-} CBTACTIVATESTRUCT16, *LPCBTACTIVATESTRUCT16;
-
-typedef struct
-{
- BOOL32 fMouse;
- HWND32 hWndActive;
-} CBTACTIVATESTRUCT32, *LPCBTACTIVATESTRUCT32;
-
-DECL_WINELIB_TYPE(CBTACTIVATESTRUCT)
-DECL_WINELIB_TYPE(LPCBTACTIVATESTRUCT)
-
- /* Shell hook values */
-#define HSHELL_WINDOWCREATED 1
-#define HSHELL_WINDOWDESTROYED 2
-#define HSHELL_ACTIVATESHELLWINDOW 3
-
- /* Debug hook structure */
-
-typedef struct
-{
- HMODULE16 hModuleHook;
- LPARAM reserved WINE_PACKED;
- LPARAM lParam WINE_PACKED;
- WPARAM16 wParam;
- INT16 code;
-} DEBUGHOOKINFO16, *LPDEBUGHOOKINFO16;
-
-typedef struct
-{
- DWORD idThread;
- DWORD idThreadInstaller;
- LPARAM lParam;
- WPARAM32 wParam;
- INT32 code;
-} DEBUGHOOKINFO32, *LPDEBUGHOOKINFO32;
-
-DECL_WINELIB_TYPE(DEBUGHOOKINFO)
-DECL_WINELIB_TYPE(LPDEBUGHOOKINFO)
-
-typedef DWORD (CALLBACK *LPTHREAD_START_ROUTINE)(LPVOID);
-
-/* This is also defined in winnt.h */
-/* typedef struct _EXCEPTION_RECORD {
- DWORD ExceptionCode;
- DWORD ExceptionFlags;
- struct _EXCEPTION_RECORD *ExceptionRecord;
- LPVOID ExceptionAddress;
- DWORD NumberParameters;
- DWORD ExceptionInformation[15];
-} EXCEPTION_RECORD; */
-
-typedef struct _EXCEPTION_DEBUG_INFO {
-/* EXCEPTION_RECORD ExceptionRecord; */
- DWORD dwFirstChange;
-} EXCEPTION_DEBUG_INFO;
-
-typedef struct _CREATE_THREAD_DEBUG_INFO {
- HANDLE32 hThread;
- LPVOID lpThreadLocalBase;
- LPTHREAD_START_ROUTINE lpStartAddress;
-} CREATE_THREAD_DEBUG_INFO;
-
-typedef struct _CREATE_PROCESS_DEBUG_INFO {
- HANDLE32 hFile;
- HANDLE32 hProcess;
- HANDLE32 hThread;
- LPVOID lpBaseOfImage;
- DWORD dwDebugInfoFileOffset;
- DWORD nDebugInfoSize;
- LPVOID lpThreadLocalBase;
- LPTHREAD_START_ROUTINE lpStartAddress;
- LPVOID lpImageName;
- WORD fUnicode;
-} CREATE_PROCESS_DEBUG_INFO;
-
-typedef struct _EXIT_THREAD_DEBUG_INFO {
- DWORD dwExitCode;
-} EXIT_THREAD_DEBUG_INFO;
-
-typedef struct _EXIT_PROCESS_DEBUG_INFO {
- DWORD dwExitCode;
-} EXIT_PROCESS_DEBUG_INFO;
-
-typedef struct _LOAD_DLL_DEBUG_INFO {
- HANDLE32 hFile;
- LPVOID lpBaseOfDll;
- DWORD dwDebugInfoFileOffset;
- DWORD nDebugInfoSize;
- LPVOID lpImageName;
- WORD fUnicode;
-} LOAD_DLL_DEBUG_INFO;
-
-typedef struct _UNLOAD_DLL_DEBUG_INFO {
- LPVOID lpBaseOfDll;
-} UNLOAD_DLL_DEBUG_INFO;
-
-typedef struct _OUTPUT_DEBUG_STRING_INFO {
- LPSTR lpDebugStringData;
- WORD fUnicode;
- WORD nDebugStringLength;
-} OUTPUT_DEBUG_STRING_INFO;
-
-typedef struct _RIP_INFO {
- DWORD dwError;
- DWORD dwType;
-} RIP_INFO;
-
-typedef struct _DEBUG_EVENT {
- DWORD dwDebugEventCode;
- DWORD dwProcessId;
- DWORD dwThreadId;
- union {
- EXCEPTION_DEBUG_INFO Exception;
- CREATE_THREAD_DEBUG_INFO CreateThread;
- CREATE_PROCESS_DEBUG_INFO CreateProcessInfo;
- EXIT_THREAD_DEBUG_INFO ExitThread;
- EXIT_PROCESS_DEBUG_INFO ExitProcess;
- LOAD_DLL_DEBUG_INFO LoadDll;
- UNLOAD_DLL_DEBUG_INFO UnloadDll;
- OUTPUT_DEBUG_STRING_INFO DebugString;
- RIP_INFO RipInfo;
- } u;
-} DEBUG_EVENT, *LPDEBUG_EVENT;
-
-
-/***** Dialogs *****/
-
- /* cbWndExtra bytes for dialog class */
-#define DLGWINDOWEXTRA 30
-
- /* Dialog styles */
-#define DS_ABSALIGN 0x0001
-#define DS_SYSMODAL 0x0002
-#define DS_3DLOOK 0x0004 /* win95 */
-#define DS_FIXEDSYS 0x0008 /* win95 */
-#define DS_NOFAILCREATE 0x0010 /* win95 */
-#define DS_LOCALEDIT 0x0020
-#define DS_SETFONT 0x0040
-#define DS_MODALFRAME 0x0080
-#define DS_NOIDLEMSG 0x0100
-#define DS_SETFOREGROUND 0x0200 /* win95 */
-#define DS_CONTROL 0x0400 /* win95 */
-#define DS_CENTER 0x0800 /* win95 */
-#define DS_CENTERMOUSE 0x1000 /* win95 */
-#define DS_CONTEXTHELP 0x2000 /* win95 */
-
-
- /* Dialog messages */
-#define DM_GETDEFID (WM_USER+0)
-#define DM_SETDEFID (WM_USER+1)
-
-#define DC_HASDEFID 0x534b
-
- /* WM_GETDLGCODE values */
-#define DLGC_WANTARROWS 0x0001
-#define DLGC_WANTTAB 0x0002
-#define DLGC_WANTALLKEYS 0x0004
-#define DLGC_WANTMESSAGE 0x0004
-#define DLGC_HASSETSEL 0x0008
-#define DLGC_DEFPUSHBUTTON 0x0010
-#define DLGC_UNDEFPUSHBUTTON 0x0020
-#define DLGC_RADIOBUTTON 0x0040
-#define DLGC_WANTCHARS 0x0080
-#define DLGC_STATIC 0x0100
-#define DLGC_BUTTON 0x2000
-
-/* Standard dialog button IDs */
-#define IDOK 1
-#define IDCANCEL 2
-#define IDABORT 3
-#define IDRETRY 4
-#define IDIGNORE 5
-#define IDYES 6
-#define IDNO 7
-#define IDCLOSE 8
-#define IDHELP 9
-
-#ifdef FSHIFT
-/* Gcc on Solaris has a version of this that we don't care about. */
-#undef FSHIFT
-#endif
-
-#define FVIRTKEY TRUE /* Assumed to be == TRUE */
-#define FNOINVERT 0x02
-#define FSHIFT 0x04
-#define FCONTROL 0x08
-#define FALT 0x10
-
-/* modifiers for RegisterHotKey */
-#define MOD_ALT 0x0001
-#define MOD_CONTROL 0x0002
-#define MOD_SHIFT 0x0004
-#define MOD_WIN 0x0008
-
-/* ids for RegisterHotKey */
-#define IDHOT_SNAPWINDOW (-1) /* SHIFT-PRINTSCRN */
-#define IDHOT_SNAPDESKTOP (-2) /* PRINTSCRN */
-
-/* Flags for DrawIconEx. */
-#define DI_MASK 1
-#define DI_IMAGE 2
-#define DI_NORMAL (DI_MASK | DI_IMAGE)
-#define DI_COMPAT 4
-#define DI_DEFAULTSIZE 8
-
+#if 0
+ Where does this belong? Nobody uses this stuff anyway.
typedef struct {
BYTE i; /* much more .... */
} KANJISTRUCT;
@@ -729,4142 +39,14 @@
typedef KANJISTRUCT *NPKANJISTRUCT;
typedef KANJISTRUCT *PKANJISTRUCT;
-#define OFS_MAXPATHNAME 128
-typedef struct
-{
- BYTE cBytes;
- BYTE fFixedDisk;
- WORD nErrCode;
- BYTE reserved[4];
- BYTE szPathName[OFS_MAXPATHNAME];
-} OFSTRUCT, *LPOFSTRUCT;
-
-#define OF_READ 0x0000
-#define OF_WRITE 0x0001
-#define OF_READWRITE 0x0002
-#define OF_SHARE_COMPAT 0x0000
-#define OF_SHARE_EXCLUSIVE 0x0010
-#define OF_SHARE_DENY_WRITE 0x0020
-#define OF_SHARE_DENY_READ 0x0030
-#define OF_SHARE_DENY_NONE 0x0040
-#define OF_PARSE 0x0100
-#define OF_DELETE 0x0200
-#define OF_VERIFY 0x0400 /* Used with OF_REOPEN */
-#define OF_SEARCH 0x0400 /* Used without OF_REOPEN */
-#define OF_CANCEL 0x0800
-#define OF_CREATE 0x1000
-#define OF_PROMPT 0x2000
-#define OF_EXIST 0x4000
-#define OF_REOPEN 0x8000
-
-/* SetErrorMode values */
-#define SEM_FAILCRITICALERRORS 0x0001
-#define SEM_NOGPFAULTERRORBOX 0x0002
-#define SEM_NOALIGNMENTFAULTEXCEPT 0x0004
-#define SEM_NOOPENFILEERRORBOX 0x8000
-
-/* CopyFileEx flags */
-#define COPY_FILE_FAIL_IF_EXISTS 0x00000001
-#define COPY_FILE_RESTARTABLE 0x00000002
-#define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x00000004
-
-/* GetTempFileName() Flags */
-#define TF_FORCEDRIVE 0x80
-
-#define DRIVE_CANNOTDETERMINE 0
-#define DRIVE_DOESNOTEXIST 1
-#define DRIVE_REMOVABLE 2
-#define DRIVE_FIXED 3
-#define DRIVE_REMOTE 4
-/* Win32 additions */
-#define DRIVE_CDROM 5
-#define DRIVE_RAMDISK 6
-
-#define HFILE_ERROR16 ((HFILE16)-1)
-#define HFILE_ERROR32 ((HFILE32)-1)
-#define HFILE_ERROR WINELIB_NAME(HFILE_ERROR)
-
-#define DDL_READWRITE 0x0000
-#define DDL_READONLY 0x0001
-#define DDL_HIDDEN 0x0002
-#define DDL_SYSTEM 0x0004
-#define DDL_DIRECTORY 0x0010
-#define DDL_ARCHIVE 0x0020
-
-#define DDL_POSTMSGS 0x2000
-#define DDL_DRIVES 0x4000
-#define DDL_EXCLUSIVE 0x8000
-
-typedef struct _ACL {
- BYTE AclRevision;
- BYTE Sbz1;
- WORD AclSize;
- WORD AceCount;
- WORD Sbz2;
-} ACL, *LPACL;
-
-typedef struct {
- BYTE Value[6];
-} SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY,*LPSID_IDENTIFIER_AUTHORITY;
-
-typedef struct _SID {
- BYTE Revision;
- BYTE SubAuthorityCount;
- SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
- DWORD SubAuthority[1];
-} SID,*PSID,*LPSID;
-
-/* The security attributes structure */
-typedef struct
-{
- DWORD nLength;
- LPVOID lpSecurityDescriptor;
- BOOL32 bInheritHandle;
-} SECURITY_ATTRIBUTES, *LPSECURITY_ATTRIBUTES;
-
-typedef WORD SECURITY_DESCRIPTOR_CONTROL;
-
-/* The security descriptor structure */
-typedef struct {
- BYTE Revision;
- BYTE Sbz1;
- SECURITY_DESCRIPTOR_CONTROL Control;
- LPSID Owner;
- LPSID Group;
- LPACL Sacl;
- LPACL Dacl;
-} SECURITY_DESCRIPTOR, *PSECURITY_DESCRIPTOR, *LPSECURITY_DESCRIPTOR;
-
-typedef DWORD SECURITY_INFORMATION;
-
-
-/* 64 bit number of 100 nanoseconds intervals since January 1, 1601 */
-typedef struct
-{
- DWORD dwLowDateTime;
- DWORD dwHighDateTime;
-} FILETIME, *LPFILETIME;
-
-/* Find* structures */
-typedef struct
-{
- DWORD dwFileAttributes;
- FILETIME ftCreationTime;
- FILETIME ftLastAccessTime;
- FILETIME ftLastWriteTime;
- DWORD nFileSizeHigh;
- DWORD nFileSizeLow;
- DWORD dwReserved0;
- DWORD dwReserved1;
- CHAR cFileName[260];
- CHAR cAlternateFileName[14];
-} WIN32_FIND_DATA32A, *LPWIN32_FIND_DATA32A;
-
-typedef struct
-{
- DWORD dwFileAttributes;
- FILETIME ftCreationTime;
- FILETIME ftLastAccessTime;
- FILETIME ftLastWriteTime;
- DWORD nFileSizeHigh;
- DWORD nFileSizeLow;
- DWORD dwReserved0;
- DWORD dwReserved1;
- WCHAR cFileName[260];
- WCHAR cAlternateFileName[14];
-} WIN32_FIND_DATA32W, *LPWIN32_FIND_DATA32W;
-
-DECL_WINELIB_TYPE_AW(WIN32_FIND_DATA)
-DECL_WINELIB_TYPE_AW(LPWIN32_FIND_DATA)
-
-#define INVALID_HANDLE_VALUE16 ((HANDLE16) -1)
-#define INVALID_HANDLE_VALUE32 ((HANDLE32) -1)
-#define INVALID_HANDLE_VALUE WINELIB_NAME(INVALID_HANDLE_VALUE)
-
-/* comm */
-
-#define CBR_110 0xFF10
-#define CBR_300 0xFF11
-#define CBR_600 0xFF12
-#define CBR_1200 0xFF13
-#define CBR_2400 0xFF14
-#define CBR_4800 0xFF15
-#define CBR_9600 0xFF16
-#define CBR_14400 0xFF17
-#define CBR_19200 0xFF18
-#define CBR_38400 0xFF1B
-#define CBR_56000 0xFF1F
-#define CBR_128000 0xFF23
-#define CBR_256000 0xFF27
-
-#define NOPARITY 0
-#define ODDPARITY 1
-#define EVENPARITY 2
-#define MARKPARITY 3
-#define SPACEPARITY 4
-#define ONESTOPBIT 0
-#define ONE5STOPBITS 1
-#define TWOSTOPBITS 2
-
-#define IGNORE 0
-#define INFINITE16 0xFFFF
-#define INFINITE32 0xFFFFFFFF
-#define INFINITE WINELIB_NAME(INFINITE)
-
-#define CE_RXOVER 0x0001
-#define CE_OVERRUN 0x0002
-#define CE_RXPARITY 0x0004
-#define CE_FRAME 0x0008
-#define CE_BREAK 0x0010
-#define CE_CTSTO 0x0020
-#define CE_DSRTO 0x0040
-#define CE_RLSDTO 0x0080
-#define CE_TXFULL 0x0100
-#define CE_PTO 0x0200
-#define CE_IOE 0x0400
-#define CE_DNS 0x0800
-#define CE_OOP 0x1000
-#define CE_MODE 0x8000
-
-#define IE_BADID -1
-#define IE_OPEN -2
-#define IE_NOPEN -3
-#define IE_MEMORY -4
-#define IE_DEFAULT -5
-#define IE_HARDWARE -10
-#define IE_BYTESIZE -11
-#define IE_BAUDRATE -12
-
-#define EV_RXCHAR 0x0001
-#define EV_RXFLAG 0x0002
-#define EV_TXEMPTY 0x0004
-#define EV_CTS 0x0008
-#define EV_DSR 0x0010
-#define EV_RLSD 0x0020
-#define EV_BREAK 0x0040
-#define EV_ERR 0x0080
-#define EV_RING 0x0100
-#define EV_PERR 0x0200
-#define EV_CTSS 0x0400
-#define EV_DSRS 0x0800
-#define EV_RLSDS 0x1000
-#define EV_RINGTE 0x2000
-#define EV_RingTe EV_RINGTE
-
-#define SETXOFF 1
-#define SETXON 2
-#define SETRTS 3
-#define CLRRTS 4
-#define SETDTR 5
-#define CLRDTR 6
-#define RESETDEV 7
-/* win16 only */
-#define GETMAXLPT 8
-#define GETMAXCOM 9
-/* win32 only */
-#define SETBREAK 8
-#define CLRBREAK 9
-
-#define GETBASEIRQ 10
-
-/* Purge functions for Comm Port */
-#define PURGE_TXABORT 0x0001 /* Kill the pending/current writes to the
- comm port */
-#define PURGE_RXABORT 0x0002 /*Kill the pending/current reads to
- the comm port */
-#define PURGE_TXCLEAR 0x0004 /* Kill the transmit queue if there*/
-#define PURGE_RXCLEAR 0x0008 /* Kill the typeahead buffer if there*/
-
-
-/* Modem Status Flags */
-#define MS_CTS_ON ((DWORD)0x0010)
-#define MS_DSR_ON ((DWORD)0x0020)
-#define MS_RING_ON ((DWORD)0x0040)
-#define MS_RLSD_ON ((DWORD)0x0080)
-
-#define RTS_CONTROL_DISABLE 0
-#define RTS_CONTROL_ENABLE 1
-#define RTS_CONTROL_HANDSHAKE 2
-#define RTS_CONTROL_TOGGLE 3
-
-#define DTR_CONTROL_DISABLE 0
-#define DTR_CONTROL_ENABLE 1
-#define DTR_CONTROL_HANDSHAKE 2
-
-#define CSTF_CTSHOLD 0x01
-#define CSTF_DSRHOLD 0x02
-#define CSTF_RLSDHOLD 0x04
-#define CSTF_XOFFHOLD 0x08
-#define CSTF_XOFFSENT 0x10
-#define CSTF_EOF 0x20
-#define CSTF_TXIM 0x40
-
-/* SystemParametersInfo */
-/* defines below are for all win versions */
-#define SPI_GETBEEP 1
-#define SPI_SETBEEP 2
-#define SPI_GETMOUSE 3
-#define SPI_SETMOUSE 4
-#define SPI_GETBORDER 5
-#define SPI_SETBORDER 6
-#define SPI_GETKEYBOARDSPEED 10
-#define SPI_SETKEYBOARDSPEED 11
-#define SPI_LANGDRIVER 12
-#define SPI_ICONHORIZONTALSPACING 13
-#define SPI_GETSCREENSAVETIMEOUT 14
-#define SPI_SETSCREENSAVETIMEOUT 15
-#define SPI_GETSCREENSAVEACTIVE 16
-#define SPI_SETSCREENSAVEACTIVE 17
-#define SPI_GETGRIDGRANULARITY 18
-#define SPI_SETGRIDGRANULARITY 19
-#define SPI_SETDESKWALLPAPER 20
-#define SPI_SETDESKPATTERN 21
-#define SPI_GETKEYBOARDDELAY 22
-#define SPI_SETKEYBOARDDELAY 23
-#define SPI_ICONVERTICALSPACING 24
-#define SPI_GETICONTITLEWRAP 25
-#define SPI_SETICONTITLEWRAP 26
-#define SPI_GETMENUDROPALIGNMENT 27
-#define SPI_SETMENUDROPALIGNMENT 28
-#define SPI_SETDOUBLECLKWIDTH 29
-#define SPI_SETDOUBLECLKHEIGHT 30
-#define SPI_GETICONTITLELOGFONT 31
-#define SPI_SETDOUBLECLICKTIME 32
-#define SPI_SETMOUSEBUTTONSWAP 33
-#define SPI_SETICONTITLELOGFONT 34
-#define SPI_GETFASTTASKSWITCH 35
-#define SPI_SETFASTTASKSWITCH 36
-#define SPI_SETDRAGFULLWINDOWS 37
-#define SPI_GETDRAGFULLWINDOWS 38
-
-#define SPI_GETFILTERKEYS 50
-#define SPI_SETFILTERKEYS 51
-#define SPI_GETTOGGLEKEYS 52
-#define SPI_SETTOGGLEKEYS 53
-#define SPI_GETMOUSEKEYS 54
-#define SPI_SETMOUSEKEYS 55
-#define SPI_GETSHOWSOUNDS 56
-#define SPI_SETSHOWSOUNDS 57
-#define SPI_GETSTICKYKEYS 58
-#define SPI_SETSTICKYKEYS 59
-#define SPI_GETACCESSTIMEOUT 60
-#define SPI_SETACCESSTIMEOUT 61
-
-#define SPI_GETSOUNDSENTRY 64
-#define SPI_SETSOUNDSENTRY 65
-
-/* defines below are for all win versions WINVER >= 0x0400 */
-#define SPI_SETDRAGFULLWINDOWS 37
-#define SPI_GETDRAGFULLWINDOWS 38
-#define SPI_GETNONCLIENTMETRICS 41
-#define SPI_SETNONCLIENTMETRICS 42
-#define SPI_GETMINIMIZEDMETRICS 43
-#define SPI_SETMINIMIZEDMETRICS 44
-#define SPI_GETICONMETRICS 45
-#define SPI_SETICONMETRICS 46
-#define SPI_SETWORKAREA 47
-#define SPI_GETWORKAREA 48
-#define SPI_SETPENWINDOWS 49
-
-#define SPI_GETSERIALKEYS 62
-#define SPI_SETSERIALKEYS 63
-#define SPI_GETHIGHCONTRAST 66
-#define SPI_SETHIGHCONTRAST 67
-#define SPI_GETKEYBOARDPREF 68
-#define SPI_SETKEYBOARDPREF 69
-#define SPI_GETSCREENREADER 70
-#define SPI_SETSCREENREADER 71
-#define SPI_GETANIMATION 72
-#define SPI_SETANIMATION 73
-#define SPI_GETFONTSMOOTHING 74
-#define SPI_SETFONTSMOOTHING 75
-#define SPI_SETDRAGWIDTH 76
-#define SPI_SETDRAGHEIGHT 77
-#define SPI_SETHANDHELD 78
-#define SPI_GETLOWPOWERTIMEOUT 79
-#define SPI_GETPOWEROFFTIMEOUT 80
-#define SPI_SETLOWPOWERTIMEOUT 81
-#define SPI_SETPOWEROFFTIMEOUT 82
-#define SPI_GETLOWPOWERACTIVE 83
-#define SPI_GETPOWEROFFACTIVE 84
-#define SPI_SETLOWPOWERACTIVE 85
-#define SPI_SETPOWEROFFACTIVE 86
-#define SPI_SETCURSORS 87
-#define SPI_SETICONS 88
-#define SPI_GETDEFAULTINPUTLANG 89
-#define SPI_SETDEFAULTINPUTLANG 90
-#define SPI_SETLANGTOGGLE 91
-#define SPI_GETWINDOWSEXTENSION 92
-#define SPI_SETMOUSETRAILS 93
-#define SPI_GETMOUSETRAILS 94
-#define SPI_SETSCREENSAVERRUNNING 97
-#define SPI_SCREENSAVERRUNNING SPI_SETSCREENSAVERRUNNING
-
-/* defines below are for all win versions (_WIN32_WINNT >= 0x0400) ||
- * (_WIN32_WINDOWS > 0x0400) */
-#define SPI_GETMOUSEHOVERWIDTH 98
-#define SPI_SETMOUSEHOVERWIDTH 99
-#define SPI_GETMOUSEHOVERHEIGHT 100
-#define SPI_SETMOUSEHOVERHEIGHT 101
-#define SPI_GETMOUSEHOVERTIME 102
-#define SPI_SETMOUSEHOVERTIME 103
-#define SPI_GETWHEELSCROLLLINES 104
-#define SPI_SETWHEELSCROLLLINES 105
-
-#define SPI_GETSHOWIMEUI 110
-#define SPI_SETSHOWIMEUI 111
-
-/* defines below are for all win versions WINVER >= 0x0500 */
-#define SPI_GETMOUSESPEED 112
-#define SPI_SETMOUSESPEED 113
-#define SPI_GETSCREENSAVERRUNNING 114
-
-#define SPI_GETACTIVEWINDOWTRACKING 0x1000
-#define SPI_SETACTIVEWINDOWTRACKING 0x1001
-#define SPI_GETMENUANIMATION 0x1002
-#define SPI_SETMENUANIMATION 0x1003
-#define SPI_GETCOMBOBOXANIMATION 0x1004
-#define SPI_SETCOMBOBOXANIMATION 0x1005
-#define SPI_GETLISTBOXSMOOTHSCROLLING 0x1006
-#define SPI_SETLISTBOXSMOOTHSCROLLING 0x1007
-#define SPI_GETGRADIENTCAPTIONS 0x1008
-#define SPI_SETGRADIENTCAPTIONS 0x1009
-#define SPI_GETMENUUNDERLINES 0x100A
-#define SPI_SETMENUUNDERLINES 0x100B
-#define SPI_GETACTIVEWNDTRKZORDER 0x100C
-#define SPI_SETACTIVEWNDTRKZORDER 0x100D
-#define SPI_GETHOTTRACKING 0x100E
-#define SPI_SETHOTTRACKING 0x100F
-#define SPI_GETFOREGROUNDLOCKTIMEOUT 0x2000
-#define SPI_SETFOREGROUNDLOCKTIMEOUT 0x2001
-#define SPI_GETACTIVEWNDTRKTIMEOUT 0x2002
-#define SPI_SETACTIVEWNDTRKTIMEOUT 0x2003
-#define SPI_GETFOREGROUNDFLASHCOUNT 0x2004
-#define SPI_SETFOREGROUNDFLASHCOUNT 0x2005
-
-/* SystemParametersInfo flags */
-
-#define SPIF_UPDATEINIFILE 1
-#define SPIF_SENDWININICHANGE 2
-#define SPIF_SENDCHANGE SPIF_SENDWININICHANGE
-
-/* flags for HIGHCONTRAST dwFlags field */
-#define HCF_HIGHCONTRASTON 0x00000001
-#define HCF_AVAILABLE 0x00000002
-#define HCF_HOTKEYACTIVE 0x00000004
-#define HCF_CONFIRMHOTKEY 0x00000008
-#define HCF_HOTKEYSOUND 0x00000010
-#define HCF_INDICATOR 0x00000020
-#define HCF_HOTKEYAVAILABLE 0x00000040
-typedef struct tagHIGHCONTRASTA
-{
- UINT32 cbSize;
- DWORD dwFlags;
- LPSTR lpszDefaultScheme;
-} HIGHCONTRASTA, *LPHIGHCONTRASTA;
-
-typedef struct tagHIGHCONTRASTW
-{
- UINT32 cbSize;
- DWORD dwFlags;
- LPWSTR lpszDefaultScheme;
-} HIGHCONTRASTW, *LPHIGHCONTRASTW;
-
-/* GetFreeSystemResources() parameters */
-
-#define GFSR_SYSTEMRESOURCES 0x0000
-#define GFSR_GDIRESOURCES 0x0001
-#define GFSR_USERRESOURCES 0x0002
-
-/* GetWinFlags */
-
-#define WF_PMODE 0x0001
-#define WF_CPU286 0x0002
-#define WF_CPU386 0x0004
-#define WF_CPU486 0x0008
-#define WF_STANDARD 0x0010
-#define WF_WIN286 0x0010
-#define WF_ENHANCED 0x0020
-#define WF_WIN386 0x0020
-#define WF_CPU086 0x0040
-#define WF_CPU186 0x0080
-#define WF_LARGEFRAME 0x0100
-#define WF_SMALLFRAME 0x0200
-#define WF_80x87 0x0400
-#define WF_PAGING 0x0800
-#define WF_HASCPUID 0x2000
-#define WF_WIN32WOW 0x4000 /* undoc */
-#define WF_WLO 0x8000
-
-#define MAKEINTRESOURCE16(i) (SEGPTR)((DWORD)((WORD)(i)))
-#define MAKEINTRESOURCE32A(i) (LPSTR)((DWORD)((WORD)(i)))
-#define MAKEINTRESOURCE32W(i) (LPWSTR)((DWORD)((WORD)(i)))
-#define MAKEINTRESOURCE WINELIB_NAME_AW(MAKEINTRESOURCE)
-
-/* Predefined resource types */
-#define RT_CURSOR16 MAKEINTRESOURCE16(1)
-#define RT_CURSOR32A MAKEINTRESOURCE32A(1)
-#define RT_CURSOR32W MAKEINTRESOURCE32W(1)
-#define RT_CURSOR WINELIB_NAME_AW(RT_CURSOR)
-#define RT_BITMAP16 MAKEINTRESOURCE16(2)
-#define RT_BITMAP32A MAKEINTRESOURCE32A(2)
-#define RT_BITMAP32W MAKEINTRESOURCE32W(2)
-#define RT_BITMAP WINELIB_NAME_AW(RT_BITMAP)
-#define RT_ICON16 MAKEINTRESOURCE16(3)
-#define RT_ICON32A MAKEINTRESOURCE32A(3)
-#define RT_ICON32W MAKEINTRESOURCE32W(3)
-#define RT_ICON WINELIB_NAME_AW(RT_ICON)
-#define RT_MENU16 MAKEINTRESOURCE16(4)
-#define RT_MENU32A MAKEINTRESOURCE32A(4)
-#define RT_MENU32W MAKEINTRESOURCE32W(4)
-#define RT_MENU WINELIB_NAME_AW(RT_MENU)
-#define RT_DIALOG16 MAKEINTRESOURCE16(5)
-#define RT_DIALOG32A MAKEINTRESOURCE32A(5)
-#define RT_DIALOG32W MAKEINTRESOURCE32W(5)
-#define RT_DIALOG WINELIB_NAME_AW(RT_DIALOG)
-#define RT_STRING16 MAKEINTRESOURCE16(6)
-#define RT_STRING32A MAKEINTRESOURCE32A(6)
-#define RT_STRING32W MAKEINTRESOURCE32W(6)
-#define RT_STRING WINELIB_NAME_AW(RT_STRING)
-#define RT_FONTDIR16 MAKEINTRESOURCE16(7)
-#define RT_FONTDIR32A MAKEINTRESOURCE32A(7)
-#define RT_FONTDIR32W MAKEINTRESOURCE32W(7)
-#define RT_FONTDIR WINELIB_NAME_AW(RT_FONTDIR)
-#define RT_FONT16 MAKEINTRESOURCE16(8)
-#define RT_FONT32A MAKEINTRESOURCE32A(8)
-#define RT_FONT32W MAKEINTRESOURCE32W(8)
-#define RT_FONT WINELIB_NAME_AW(RT_FONT)
-#define RT_ACCELERATOR16 MAKEINTRESOURCE16(9)
-#define RT_ACCELERATOR32A MAKEINTRESOURCE32A(9)
-#define RT_ACCELERATOR32W MAKEINTRESOURCE32W(9)
-#define RT_ACCELERATOR WINELIB_NAME_AW(RT_ACCELERATOR)
-#define RT_RCDATA16 MAKEINTRESOURCE16(10)
-#define RT_RCDATA32A MAKEINTRESOURCE32A(10)
-#define RT_RCDATA32W MAKEINTRESOURCE32W(10)
-#define RT_RCDATA WINELIB_NAME_AW(RT_RCDATA)
-#define RT_MESSAGELIST16 MAKEINTRESOURCE16(11)
-#define RT_MESSAGELIST32A MAKEINTRESOURCE32A(11)
-#define RT_MESSAGELIST32W MAKEINTRESOURCE32W(11)
-#define RT_MESSAGELIST WINELIB_NAME_AW(RT_MESSAGELIST)
-#define RT_GROUP_CURSOR16 MAKEINTRESOURCE16(12)
-#define RT_GROUP_CURSOR32A MAKEINTRESOURCE32A(12)
-#define RT_GROUP_CURSOR32W MAKEINTRESOURCE32W(12)
-#define RT_GROUP_CURSOR WINELIB_NAME_AW(RT_GROUP_CURSOR)
-#define RT_GROUP_ICON16 MAKEINTRESOURCE16(14)
-#define RT_GROUP_ICON32A MAKEINTRESOURCE32A(14)
-#define RT_GROUP_ICON32W MAKEINTRESOURCE32W(14)
-#define RT_GROUP_ICON WINELIB_NAME_AW(RT_GROUP_ICON)
-
-/* Predefined resources */
-#define IDI_APPLICATION16 MAKEINTRESOURCE16(32512)
-#define IDI_APPLICATION32A MAKEINTRESOURCE32A(32512)
-#define IDI_APPLICATION32W MAKEINTRESOURCE32W(32512)
-#define IDI_APPLICATION WINELIB_NAME_AW(IDI_APPLICATION)
-#define IDI_HAND16 MAKEINTRESOURCE16(32513)
-#define IDI_HAND32A MAKEINTRESOURCE32A(32513)
-#define IDI_HAND32W MAKEINTRESOURCE32W(32513)
-#define IDI_HAND WINELIB_NAME_AW(IDI_HAND)
-#define IDI_QUESTION16 MAKEINTRESOURCE16(32514)
-#define IDI_QUESTION32A MAKEINTRESOURCE32A(32514)
-#define IDI_QUESTION32W MAKEINTRESOURCE32W(32514)
-#define IDI_QUESTION WINELIB_NAME_AW(IDI_QUESTION)
-#define IDI_EXCLAMATION16 MAKEINTRESOURCE16(32515)
-#define IDI_EXCLAMATION32A MAKEINTRESOURCE32A(32515)
-#define IDI_EXCLAMATION32W MAKEINTRESOURCE32W(32515)
-#define IDI_EXCLAMATION WINELIB_NAME_AW(IDI_EXCLAMATION)
-#define IDI_ASTERISK16 MAKEINTRESOURCE16(32516)
-#define IDI_ASTERISK32A MAKEINTRESOURCE32A(32516)
-#define IDI_ASTERISK32W MAKEINTRESOURCE32W(32516)
-#define IDI_ASTERISK WINELIB_NAME_AW(IDI_ASTERISK)
-
-#define IDC_BUMMER16 MAKEINTRESOURCE16(100)
-#define IDC_BUMMER32A MAKEINTRESOURCE32A(100)
-#define IDC_BUMMER32W MAKEINTRESOURCE32W(100)
-#define IDC_BUMMER WINELIB_NAME_AW(IDC_BUMMER)
-#define IDC_ARROW16 MAKEINTRESOURCE16(32512)
-#define IDC_ARROW32A MAKEINTRESOURCE32A(32512)
-#define IDC_ARROW32W MAKEINTRESOURCE32W(32512)
-#define IDC_ARROW WINELIB_NAME_AW(IDC_ARROW)
-#define IDC_IBEAM16 MAKEINTRESOURCE16(32513)
-#define IDC_IBEAM32A MAKEINTRESOURCE32A(32513)
-#define IDC_IBEAM32W MAKEINTRESOURCE32W(32513)
-#define IDC_IBEAM WINELIB_NAME_AW(IDC_IBEAM)
-#define IDC_WAIT16 MAKEINTRESOURCE16(32514)
-#define IDC_WAIT32A MAKEINTRESOURCE32A(32514)
-#define IDC_WAIT32W MAKEINTRESOURCE32W(32514)
-#define IDC_WAIT WINELIB_NAME_AW(IDC_WAIT)
-#define IDC_CROSS16 MAKEINTRESOURCE16(32515)
-#define IDC_CROSS32A MAKEINTRESOURCE32A(32515)
-#define IDC_CROSS32W MAKEINTRESOURCE32W(32515)
-#define IDC_CROSS WINELIB_NAME_AW(IDC_CROSS)
-#define IDC_UPARROW16 MAKEINTRESOURCE16(32516)
-#define IDC_UPARROW32A MAKEINTRESOURCE32A(32516)
-#define IDC_UPARROW32W MAKEINTRESOURCE32W(32516)
-#define IDC_UPARROW WINELIB_NAME_AW(IDC_UPARROW)
-#define IDC_SIZE16 MAKEINTRESOURCE16(32640)
-#define IDC_SIZE32A MAKEINTRESOURCE32A(32640)
-#define IDC_SIZE32W MAKEINTRESOURCE32W(32640)
-#define IDC_SIZE WINELIB_NAME_AW(IDC_SIZE)
-#define IDC_ICON16 MAKEINTRESOURCE16(32641)
-#define IDC_ICON32A MAKEINTRESOURCE32A(32641)
-#define IDC_ICON32W MAKEINTRESOURCE32W(32641)
-#define IDC_ICON WINELIB_NAME_AW(IDC_ICON)
-#define IDC_SIZENWSE16 MAKEINTRESOURCE16(32642)
-#define IDC_SIZENWSE32A MAKEINTRESOURCE32A(32642)
-#define IDC_SIZENWSE32W MAKEINTRESOURCE32W(32642)
-#define IDC_SIZENWSE WINELIB_NAME_AW(IDC_SIZENWSE)
-#define IDC_SIZENESW16 MAKEINTRESOURCE16(32643)
-#define IDC_SIZENESW32A MAKEINTRESOURCE32A(32643)
-#define IDC_SIZENESW32W MAKEINTRESOURCE32W(32643)
-#define IDC_SIZENESW WINELIB_NAME_AW(IDC_SIZENESW)
-#define IDC_SIZEWE16 MAKEINTRESOURCE16(32644)
-#define IDC_SIZEWE32A MAKEINTRESOURCE32A(32644)
-#define IDC_SIZEWE32W MAKEINTRESOURCE32W(32644)
-#define IDC_SIZEWE WINELIB_NAME_AW(IDC_SIZEWE)
-#define IDC_SIZENS16 MAKEINTRESOURCE16(32645)
-#define IDC_SIZENS32A MAKEINTRESOURCE32A(32645)
-#define IDC_SIZENS32W MAKEINTRESOURCE32W(32645)
-#define IDC_SIZENS WINELIB_NAME_AW(IDC_SIZENS)
-#define IDC_SIZEALL16 MAKEINTRESOURCE16(32646)
-#define IDC_SIZEALL32A MAKEINTRESOURCE32A(32646)
-#define IDC_SIZEALL32W MAKEINTRESOURCE32W(32646)
-#define IDC_SIZEALL WINELIB_NAME_AW(IDC_SIZEALL)
-#define IDC_NO16 MAKEINTRESOURCE16(32648)
-#define IDC_NO32A MAKEINTRESOURCE32A(32648)
-#define IDC_NO32W MAKEINTRESOURCE32W(32648)
-#define IDC_NO WINELIB_NAME_AW(IDC_NO)
-#define IDC_APPSTARTING16 MAKEINTRESOURCE16(32650)
-#define IDC_APPSTARTING32A MAKEINTRESOURCE32A(32650)
-#define IDC_APPSTARTING32W MAKEINTRESOURCE32W(32650)
-#define IDC_APPSTARTING WINELIB_NAME_AW(IDC_APPSTARTING)
-#define IDC_HELP16 MAKEINTRESOURCE16(32651)
-#define IDC_HELP32A MAKEINTRESOURCE32A(32651)
-#define IDC_HELP32W MAKEINTRESOURCE32W(32651)
-#define IDC_HELP WINELIB_NAME_AW(IDC_HELP)
-
-/* OEM Resource Ordinal Numbers */
-#define OBM_CLOSE 32754
-#define OBM_UPARROW 32753
-#define OBM_DNARROW 32752
-#define OBM_RGARROW 32751
-#define OBM_LFARROW 32750
-#define OBM_REDUCE 32749
-#define OBM_ZOOM 32748
-#define OBM_RESTORE 32747
-#define OBM_REDUCED 32746
-#define OBM_ZOOMD 32745
-#define OBM_RESTORED 32744
-#define OBM_UPARROWD 32743
-#define OBM_DNARROWD 32742
-#define OBM_RGARROWD 32741
-#define OBM_LFARROWD 32740
-#define OBM_MNARROW 32739
-#define OBM_COMBO 32738
-#define OBM_UPARROWI 32737
-#define OBM_DNARROWI 32736
-#define OBM_RGARROWI 32735
-#define OBM_LFARROWI 32734
-
-#define OBM_FOLDER 32733
-#define OBM_FOLDER2 32732
-#define OBM_FLOPPY 32731
-#define OBM_HDISK 32730
-#define OBM_CDROM 32729
-#define OBM_TRTYPE 32728
-
-/* Wine extension, I think. */
-#define OBM_RADIOCHECK 32727
-
-#define OBM_OLD_CLOSE 32767
-#define OBM_SIZE 32766
-#define OBM_OLD_UPARROW 32765
-#define OBM_OLD_DNARROW 32764
-#define OBM_OLD_RGARROW 32763
-#define OBM_OLD_LFARROW 32762
-#define OBM_BTSIZE 32761
-#define OBM_CHECK 32760
-#define OBM_CHECKBOXES 32759
-#define OBM_BTNCORNERS 32758
-#define OBM_OLD_REDUCE 32757
-#define OBM_OLD_ZOOM 32756
-#define OBM_OLD_RESTORE 32755
-
-#define OCR_BUMMER 100
-#define OCR_DRAGOBJECT 101
-
-#define OCR_NORMAL 32512
-#define OCR_IBEAM 32513
-#define OCR_WAIT 32514
-#define OCR_CROSS 32515
-#define OCR_UP 32516
-#define OCR_SIZE 32640
-#define OCR_ICON 32641
-#define OCR_SIZENWSE 32642
-#define OCR_SIZENESW 32643
-#define OCR_SIZEWE 32644
-#define OCR_SIZENS 32645
-#define OCR_SIZEALL 32646
-#define OCR_ICOCUR 32647
-#define OCR_NO 32648
-#define OCR_APPSTARTING 32650
-#define OCR_HELP 32651 /* only defined in wine */
-
-#define OIC_SAMPLE 32512
-#define OIC_HAND 32513
-#define OIC_QUES 32514
-#define OIC_BANG 32515
-#define OIC_NOTE 32516
-#define OIC_PORTRAIT 32517
-#define OIC_LANDSCAPE 32518
-#define OIC_WINEICON 32519
-
-
-/* DragObject stuff */
-
-typedef struct
-{
- HWND16 hWnd;
- HANDLE16 hScope;
- WORD wFlags;
- HANDLE16 hList;
- HANDLE16 hOfStruct;
- POINT16 pt WINE_PACKED;
- LONG l WINE_PACKED;
-} DRAGINFO, *LPDRAGINFO;
-
-#define DRAGOBJ_PROGRAM 0x0001
-#define DRAGOBJ_DATA 0x0002
-#define DRAGOBJ_DIRECTORY 0x0004
-#define DRAGOBJ_MULTIPLE 0x0008
-#define DRAGOBJ_EXTERNAL 0x8000
-
-#define DRAG_PRINT 0x544E5250
-#define DRAG_FILE 0x454C4946
-
-/* Messages */
-
-#define WM_NULL 0x0000
-#define WM_CREATE 0x0001
-#define WM_DESTROY 0x0002
-#define WM_MOVE 0x0003
-#define WM_SIZEWAIT 0x0004
-#define WM_SIZE 0x0005
-#define WM_ACTIVATE 0x0006
-#define WM_SETFOCUS 0x0007
-#define WM_KILLFOCUS 0x0008
-#define WM_SETVISIBLE 0x0009
-#define WM_ENABLE 0x000a
-#define WM_SETREDRAW 0x000b
-#define WM_SETTEXT 0x000c
-#define WM_GETTEXT 0x000d
-#define WM_GETTEXTLENGTH 0x000e
-#define WM_PAINT 0x000f
-#define WM_CLOSE 0x0010
-#define WM_QUERYENDSESSION 0x0011
-#define WM_QUIT 0x0012
-#define WM_QUERYOPEN 0x0013
-#define WM_ERASEBKGND 0x0014
-#define WM_SYSCOLORCHANGE 0x0015
-#define WM_ENDSESSION 0x0016
-#define WM_SYSTEMERROR 0x0017
-#define WM_SHOWWINDOW 0x0018
-#define WM_CTLCOLOR 0x0019
-#define WM_WININICHANGE 0x001a
-#define WM_SETTINGCHANGE WM_WININICHANGE
-#define WM_DEVMODECHANGE 0x001b
-#define WM_ACTIVATEAPP 0x001c
-#define WM_FONTCHANGE 0x001d
-#define WM_TIMECHANGE 0x001e
-#define WM_CANCELMODE 0x001f
-#define WM_SETCURSOR 0x0020
-#define WM_MOUSEACTIVATE 0x0021
-#define WM_CHILDACTIVATE 0x0022
-#define WM_QUEUESYNC 0x0023
-#define WM_GETMINMAXINFO 0x0024
-
-#define WM_PAINTICON 0x0026
-#define WM_ICONERASEBKGND 0x0027
-#define WM_NEXTDLGCTL 0x0028
-#define WM_ALTTABACTIVE 0x0029
-#define WM_SPOOLERSTATUS 0x002a
-#define WM_DRAWITEM 0x002b
-#define WM_MEASUREITEM 0x002c
-#define WM_DELETEITEM 0x002d
-#define WM_VKEYTOITEM 0x002e
-#define WM_CHARTOITEM 0x002f
-#define WM_SETFONT 0x0030
-#define WM_GETFONT 0x0031
-#define WM_SETHOTKEY 0x0032
-#define WM_GETHOTKEY 0x0033
-#define WM_FILESYSCHANGE 0x0034
-#define WM_ISACTIVEICON 0x0035
-#define WM_QUERYPARKICON 0x0036
-#define WM_QUERYDRAGICON 0x0037
-#define WM_QUERYSAVESTATE 0x0038
-#define WM_COMPAREITEM 0x0039
-#define WM_TESTING 0x003a
-
-#define WM_OTHERWINDOWCREATED 0x003c
-#define WM_OTHERWINDOWDESTROYED 0x003d
-#define WM_ACTIVATESHELLWINDOW 0x003e
-
-#define WM_COMPACTING 0x0041
-
-#define WM_COMMNOTIFY 0x0044
-#define WM_WINDOWPOSCHANGING 0x0046
-#define WM_WINDOWPOSCHANGED 0x0047
-#define WM_POWER 0x0048
-
- /* Win32 4.0 messages */
-#define WM_COPYDATA 0x004a
-#define WM_CANCELJOURNAL 0x004b
-#define WM_NOTIFY 0x004e
-#define WM_HELP 0x0053
-#define WM_NOTIFYFORMAT 0x0055
-
-#define WM_CONTEXTMENU 0x007b
-#define WM_STYLECHANGING 0x007c
-#define WM_STYLECHANGED 0x007d
-#define WM_DISPLAYCHANGE 0x007e
-#define WM_GETICON 0x007f
-#define WM_SETICON 0x0080
-
- /* Non-client system messages */
-#define WM_NCCREATE 0x0081
-#define WM_NCDESTROY 0x0082
-#define WM_NCCALCSIZE 0x0083
-#define WM_NCHITTEST 0x0084
-#define WM_NCPAINT 0x0085
-#define WM_NCACTIVATE 0x0086
-
-#define WM_GETDLGCODE 0x0087
-#define WM_SYNCPAINT 0x0088
-#define WM_SYNCTASK 0x0089
-
- /* Non-client mouse messages */
-#define WM_NCMOUSEMOVE 0x00a0
-#define WM_NCLBUTTONDOWN 0x00a1
-#define WM_NCLBUTTONUP 0x00a2
-#define WM_NCLBUTTONDBLCLK 0x00a3
-#define WM_NCRBUTTONDOWN 0x00a4
-#define WM_NCRBUTTONUP 0x00a5
-#define WM_NCRBUTTONDBLCLK 0x00a6
-#define WM_NCMBUTTONDOWN 0x00a7
-#define WM_NCMBUTTONUP 0x00a8
-#define WM_NCMBUTTONDBLCLK 0x00a9
-
- /* Keyboard messages */
-#define WM_KEYDOWN 0x0100
-#define WM_KEYUP 0x0101
-#define WM_CHAR 0x0102
-#define WM_DEADCHAR 0x0103
-#define WM_SYSKEYDOWN 0x0104
-#define WM_SYSKEYUP 0x0105
-#define WM_SYSCHAR 0x0106
-#define WM_SYSDEADCHAR 0x0107
-#define WM_KEYFIRST WM_KEYDOWN
-#define WM_KEYLAST 0x0108
-
-#define WM_INITDIALOG 0x0110
-#define WM_COMMAND 0x0111
-#define WM_SYSCOMMAND 0x0112
-#define WM_TIMER 0x0113
-#define WM_SYSTIMER 0x0118
-
- /* scroll messages */
-#define WM_HSCROLL 0x0114
-#define WM_VSCROLL 0x0115
-
-/* Menu messages */
-#define WM_INITMENU 0x0116
-#define WM_INITMENUPOPUP 0x0117
-
-#define WM_MENUSELECT 0x011F
-#define WM_MENUCHAR 0x0120
-#define WM_ENTERIDLE 0x0121
-
-#define WM_LBTRACKPOINT 0x0131
-
- /* Win32 CTLCOLOR messages */
-#define WM_CTLCOLORMSGBOX 0x0132
-#define WM_CTLCOLOREDIT 0x0133
-#define WM_CTLCOLORLISTBOX 0x0134
-#define WM_CTLCOLORBTN 0x0135
-#define WM_CTLCOLORDLG 0x0136
-#define WM_CTLCOLORSCROLLBAR 0x0137
-#define WM_CTLCOLORSTATIC 0x0138
-
- /* Mouse messages */
-#define WM_MOUSEMOVE 0x0200
-#define WM_LBUTTONDOWN 0x0201
-#define WM_LBUTTONUP 0x0202
-#define WM_LBUTTONDBLCLK 0x0203
-#define WM_RBUTTONDOWN 0x0204
-#define WM_RBUTTONUP 0x0205
-#define WM_RBUTTONDBLCLK 0x0206
-#define WM_MBUTTONDOWN 0x0207
-#define WM_MBUTTONUP 0x0208
-#define WM_MBUTTONDBLCLK 0x0209
-#define WM_MOUSEFIRST WM_MOUSEMOVE
-#define WM_MOUSELAST WM_MBUTTONDBLCLK
-
-#define WM_PARENTNOTIFY 0x0210
-#define WM_ENTERMENULOOP 0x0211
-#define WM_EXITMENULOOP 0x0212
-#define WM_NEXTMENU 0x0213
-
- /* Win32 4.0 messages */
-#define WM_SIZING 0x0214
-#define WM_CAPTURECHANGED 0x0215
-#define WM_MOVING 0x0216
-
- /* MDI messages */
-#define WM_MDICREATE 0x0220
-#define WM_MDIDESTROY 0x0221
-#define WM_MDIACTIVATE 0x0222
-#define WM_MDIRESTORE 0x0223
-#define WM_MDINEXT 0x0224
-#define WM_MDIMAXIMIZE 0x0225
-#define WM_MDITILE 0x0226
-#define WM_MDICASCADE 0x0227
-#define WM_MDIICONARRANGE 0x0228
-#define WM_MDIGETACTIVE 0x0229
-#define WM_MDIREFRESHMENU 0x0234
-
- /* D&D messages */
-#define WM_DROPOBJECT 0x022A
-#define WM_QUERYDROPOBJECT 0x022B
-#define WM_BEGINDRAG 0x022C
-#define WM_DRAGLOOP 0x022D
-#define WM_DRAGSELECT 0x022E
-#define WM_DRAGMOVE 0x022F
-#define WM_MDISETMENU 0x0230
-
-#define WM_ENTERSIZEMOVE 0x0231
-#define WM_EXITSIZEMOVE 0x0232
-#define WM_DROPFILES 0x0233
-
-#define WM_CUT 0x0300
-#define WM_COPY 0x0301
-#define WM_PASTE 0x0302
-#define WM_CLEAR 0x0303
-#define WM_UNDO 0x0304
-#define WM_RENDERFORMAT 0x0305
-#define WM_RENDERALLFORMATS 0x0306
-#define WM_DESTROYCLIPBOARD 0x0307
-#define WM_DRAWCLIPBOARD 0x0308
-#define WM_PAINTCLIPBOARD 0x0309
-#define WM_VSCROLLCLIPBOARD 0x030A
-#define WM_SIZECLIPBOARD 0x030B
-#define WM_ASKCBFORMATNAME 0x030C
-#define WM_CHANGECBCHAIN 0x030D
-#define WM_HSCROLLCLIPBOARD 0x030E
-#define WM_QUERYNEWPALETTE 0x030F
-#define WM_PALETTEISCHANGING 0x0310
-#define WM_PALETTECHANGED 0x0311
-#define WM_HOTKEY 0x0312
-
-#define WM_PRINT 0x0317
-#define WM_PRINTCLIENT 0x0318
-
- /* MFC messages [370-37f] */
-
-#define WM_QUERYAFXWNDPROC 0x0360
-#define WM_SIZEPARENT 0x0361
-#define WM_SETMESSAGESTRING 0x0362
-#define WM_IDLEUPDATECMDUI 0x0363
-#define WM_INITIALUPDATE 0x0364
-#define WM_COMMANDHELP 0x0365
-#define WM_HELPHITTEST 0x0366
-#define WM_EXITHELPMODE 0x0367
-#define WM_RECALCPARENT 0x0368
-#define WM_SIZECHILD 0x0369
-#define WM_KICKIDLE 0x036A
-#define WM_QUERYCENTERWND 0x036B
-#define WM_DISABLEMODAL 0x036C
-#define WM_FLOATSTATUS 0x036D
-#define WM_ACTIVATETOPLEVEL 0x036E
-#define WM_QUERY3DCONTROLS 0x036F
-#define WM_SOCKET_NOTIFY 0x0373
-#define WM_SOCKET_DEAD 0x0374
-#define WM_POPMESSAGESTRING 0x0375
-#define WM_OCC_LOADFROMSTREAM 0x0376
-#define WM_OCC_LOADFROMSTORAGE 0x0377
-#define WM_OCC_INITNEW 0x0378
-#define WM_OCC_LOADFROMSTREAM_EX 0x037A
-#define WM_OCC_LOADFROMSTORAGE_EX 0x037B
-#define WM_QUEUE_SENTINEL 0x0379
-
-/* end of MFC messages */
-
-#define WM_COALESCE_FIRST 0x0390
-#define WM_COALESCE_LAST 0x039F
-
- /* misc messages */
-#define WM_NULL 0x0000
-#define WM_CPL_LAUNCH (WM_USER + 1000)
-#define WM_CPL_LAUNCHED (WM_USER + 1001)
-
-/* WM_NOTIFYFORMAT commands and return values */
-#define NFR_ANSI 1
-#define NFR_UNICODE 2
-#define NF_QUERY 3
-#define NF_REQUERY 4
-
- /* Key status flags for mouse events */
-#define MK_LBUTTON 0x0001
-#define MK_RBUTTON 0x0002
-#define MK_SHIFT 0x0004
-#define MK_CONTROL 0x0008
-#define MK_MBUTTON 0x0010
-
- /* keybd_event flags */
-#define KEYEVENTF_EXTENDEDKEY 0x0001
-#define KEYEVENTF_KEYUP 0x0002
-#define KEYEVENTF_WINE_FORCEEXTENDED 0x8000
-
- /* mouse_event flags */
-#define MOUSEEVENTF_MOVE 0x0001
-#define MOUSEEVENTF_LEFTDOWN 0x0002
-#define MOUSEEVENTF_LEFTUP 0x0004
-#define MOUSEEVENTF_RIGHTDOWN 0x0008
-#define MOUSEEVENTF_RIGHTUP 0x0010
-#define MOUSEEVENTF_MIDDLEDOWN 0x0020
-#define MOUSEEVENTF_MIDDLEUP 0x0040
-#define MOUSEEVENTF_ABSOLUTE 0x8000
-
- /* Queue status flags */
-#define QS_KEY 0x0001
-#define QS_MOUSEMOVE 0x0002
-#define QS_MOUSEBUTTON 0x0004
-#define QS_MOUSE (QS_MOUSEMOVE | QS_MOUSEBUTTON)
-#define QS_POSTMESSAGE 0x0008
-#define QS_TIMER 0x0010
-#define QS_PAINT 0x0020
-#define QS_SENDMESSAGE 0x0040
-#define QS_ALLINPUT 0x007f
-
- /* PeekMessage() options */
-#define PM_NOREMOVE 0x0000
-#define PM_REMOVE 0x0001
-#define PM_NOYIELD 0x0002
-
-#define WM_SHOWWINDOW 0x0018
-
-/* WM_SHOWWINDOW wParam codes */
-#define SW_PARENTCLOSING 1
-#define SW_OTHERMAXIMIZED 2
-#define SW_PARENTOPENING 3
-#define SW_OTHERRESTORED 4
-
- /* ShowWindow() codes */
-#define SW_HIDE 0
-#define SW_SHOWNORMAL 1
-#define SW_NORMAL 1
-#define SW_SHOWMINIMIZED 2
-#define SW_SHOWMAXIMIZED 3
-#define SW_MAXIMIZE 3
-#define SW_SHOWNOACTIVATE 4
-#define SW_SHOW 5
-#define SW_MINIMIZE 6
-#define SW_SHOWMINNOACTIVE 7
-#define SW_SHOWNA 8
-#define SW_RESTORE 9
-#define SW_SHOWDEFAULT 10
-#define SW_MAX 10
-#define SW_NORMALNA 0xCC /* undoc. flag in MinMaximize */
-
- /* WM_SIZE message wParam values */
-#define SIZE_RESTORED 0
-#define SIZE_MINIMIZED 1
-#define SIZE_MAXIMIZED 2
-#define SIZE_MAXSHOW 3
-#define SIZE_MAXHIDE 4
-#define SIZENORMAL SIZE_RESTORED
-#define SIZEICONIC SIZE_MINIMIZED
-#define SIZEFULLSCREEN SIZE_MAXIMIZED
-#define SIZEZOOMSHOW SIZE_MAXSHOW
-#define SIZEZOOMHIDE SIZE_MAXHIDE
-
-/* SetWindowPos() and WINDOWPOS flags */
-#define SWP_NOSIZE 0x0001
-#define SWP_NOMOVE 0x0002
-#define SWP_NOZORDER 0x0004
-#define SWP_NOREDRAW 0x0008
-#define SWP_NOACTIVATE 0x0010
-#define SWP_FRAMECHANGED 0x0020 /* The frame changed: send WM_NCCALCSIZE */
-#define SWP_SHOWWINDOW 0x0040
-#define SWP_HIDEWINDOW 0x0080
-#define SWP_NOCOPYBITS 0x0100
-#define SWP_NOOWNERZORDER 0x0200 /* Don't do owner Z ordering */
-
-#define SWP_DRAWFRAME SWP_FRAMECHANGED
-#define SWP_NOREPOSITION SWP_NOOWNERZORDER
-
-#define SWP_NOSENDCHANGING 0x0400
-#define SWP_DEFERERASE 0x2000
-
-#define HWND_DESKTOP ((HWND32)0)
-#define HWND_BROADCAST ((HWND32)0xffff)
-
-/* SetWindowPos() hwndInsertAfter field values */
-#define HWND_TOP ((HWND32)0)
-#define HWND_BOTTOM ((HWND32)1)
-#define HWND_TOPMOST ((HWND32)-1)
-#define HWND_NOTOPMOST ((HWND32)-2)
-
-#define MF_INSERT 0x0000
-#define MF_CHANGE 0x0080
-#define MF_APPEND 0x0100
-#define MF_DELETE 0x0200
-#define MF_REMOVE 0x1000
-#define MF_END 0x0080
-
-#define MF_ENABLED 0x0000
-#define MF_GRAYED 0x0001
-#define MF_DISABLED 0x0002
-#define MF_STRING 0x0000
-#define MF_BITMAP 0x0004
-#define MF_UNCHECKED 0x0000
-#define MF_CHECKED 0x0008
-#define MF_POPUP 0x0010
-#define MF_MENUBARBREAK 0x0020
-#define MF_MENUBREAK 0x0040
-#define MF_UNHILITE 0x0000
-#define MF_HILITE 0x0080
-#define MF_OWNERDRAW 0x0100
-#define MF_USECHECKBITMAPS 0x0200
-#define MF_BYCOMMAND 0x0000
-#define MF_BYPOSITION 0x0400
-#define MF_SEPARATOR 0x0800
-#define MF_DEFAULT 0x1000
-#define MF_SYSMENU 0x2000
-#define MF_HELP 0x4000
-#define MF_RIGHTJUSTIFY 0x4000
-#define MF_MOUSESELECT 0x8000
-
-/* Flags for extended menu item types. */
-#define MFT_STRING MF_STRING
-#define MFT_BITMAP MF_BITMAP
-#define MFT_MENUBARBREAK MF_MENUBARBREAK
-#define MFT_MENUBREAK MF_MENUBREAK
-#define MFT_OWNERDRAW MF_OWNERDRAW
-#define MFT_RADIOCHECK 0x00000200L
-#define MFT_SEPARATOR MF_SEPARATOR
-#define MFT_RIGHTORDER 0x00002000L
-#define MFT_RIGHTJUSTIFY MF_RIGHTJUSTIFY
-
-/* Flags for extended menu item states. */
-#define MFS_GRAYED 0x00000003L
-#define MFS_DISABLED MFS_GRAYED
-#define MFS_CHECKED MF_CHECKED
-#define MFS_HILITE MF_HILITE
-#define MFS_ENABLED MF_ENABLED
-#define MFS_UNCHECKED MF_UNCHECKED
-#define MFS_UNHILITE MF_UNHILITE
-#define MFS_DEFAULT MF_DEFAULT
-
-#ifndef NOWINOFFSETS
-#define GCW_HBRBACKGROUND (-10)
-#endif
-
-#define MB_OK 0x00000000
-#define MB_OKCANCEL 0x00000001
-#define MB_ABORTRETRYIGNORE 0x00000002
-#define MB_YESNOCANCEL 0x00000003
-#define MB_YESNO 0x00000004
-#define MB_RETRYCANCEL 0x00000005
-#define MB_TYPEMASK 0x0000000F
-
-#define MB_ICONHAND 0x00000010
-#define MB_ICONQUESTION 0x00000020
-#define MB_ICONEXCLAMATION 0x00000030
-#define MB_ICONASTERISK 0x00000040
-#define MB_USERICON 0x00000080
-#define MB_ICONMASK 0x000000F0
-
-#define MB_ICONINFORMATION MB_ICONASTERISK
-#define MB_ICONSTOP MB_ICONHAND
-#define MB_ICONWARNING MB_ICONEXCLAMATION
-#define MB_ICONERROR MB_ICONHAND
-
-#define MB_DEFBUTTON1 0x00000000
-#define MB_DEFBUTTON2 0x00000100
-#define MB_DEFBUTTON3 0x00000200
-#define MB_DEFBUTTON4 0x00000300
-#define MB_DEFMASK 0x00000F00
-
-#define MB_APPLMODAL 0x00000000
-#define MB_SYSTEMMODAL 0x00001000
-#define MB_TASKMODAL 0x00002000
-#define MB_MODEMASK 0x00003000
-
-#define MB_HELP 0x00004000
-#define MB_NOFOCUS 0x00008000
-#define MB_MISCMASK 0x0000C000
-
-#define MB_SETFOREGROUND 0x00010000
-#define MB_DEFAULT_DESKTOP_ONLY 0x00020000
-#define MB_SERVICE_NOTIFICATION 0x00040000
-#define MB_TOPMOST 0x00040000
-#define MB_RIGHT 0x00080000
-#define MB_RTLREADING 0x00100000
-
-
-#define DT_TOP 0
-#define DT_LEFT 0
-#define DT_CENTER 1
-#define DT_RIGHT 2
-#define DT_VCENTER 4
-#define DT_BOTTOM 8
-#define DT_WORDBREAK 16
-#define DT_SINGLELINE 32
-#define DT_EXPANDTABS 64
-#define DT_TABSTOP 128
-#define DT_NOCLIP 256
-#define DT_EXTERNALLEADING 512
-#define DT_CALCRECT 1024
-#define DT_NOPREFIX 2048
-#define DT_INTERNAL 4096
-
-/* DrawCaption()/DrawCaptionTemp() flags */
-#define DC_ACTIVE 0x0001
-#define DC_SMALLCAP 0x0002
-#define DC_ICON 0x0004
-#define DC_TEXT 0x0008
-#define DC_INBUTTON 0x0010
-
-/* DrawEdge() flags */
-#define BDR_RAISEDOUTER 0x0001
-#define BDR_SUNKENOUTER 0x0002
-#define BDR_RAISEDINNER 0x0004
-#define BDR_SUNKENINNER 0x0008
-
-#define BDR_OUTER 0x0003
-#define BDR_INNER 0x000c
-#define BDR_RAISED 0x0005
-#define BDR_SUNKEN 0x000a
-
-#define EDGE_RAISED (BDR_RAISEDOUTER | BDR_RAISEDINNER)
-#define EDGE_SUNKEN (BDR_SUNKENOUTER | BDR_SUNKENINNER)
-#define EDGE_ETCHED (BDR_SUNKENOUTER | BDR_RAISEDINNER)
-#define EDGE_BUMP (BDR_RAISEDOUTER | BDR_SUNKENINNER)
-
-/* border flags */
-#define BF_LEFT 0x0001
-#define BF_TOP 0x0002
-#define BF_RIGHT 0x0004
-#define BF_BOTTOM 0x0008
-#define BF_DIAGONAL 0x0010
-#define BF_MIDDLE 0x0800 /* Fill in the middle */
-#define BF_SOFT 0x1000 /* For softer buttons */
-#define BF_ADJUST 0x2000 /* Calculate the space left over */
-#define BF_FLAT 0x4000 /* For flat rather than 3D borders */
-#define BF_MONO 0x8000 /* For monochrome borders */
-#define BF_TOPLEFT (BF_TOP | BF_LEFT)
-#define BF_TOPRIGHT (BF_TOP | BF_RIGHT)
-#define BF_BOTTOMLEFT (BF_BOTTOM | BF_LEFT)
-#define BF_BOTTOMRIGHT (BF_BOTTOM | BF_RIGHT)
-#define BF_RECT (BF_LEFT | BF_TOP | BF_RIGHT | BF_BOTTOM)
-#define BF_DIAGONAL_ENDTOPRIGHT (BF_DIAGONAL | BF_TOP | BF_RIGHT)
-#define BF_DIAGONAL_ENDTOPLEFT (BF_DIAGONAL | BF_TOP | BF_LEFT)
-#define BF_DIAGONAL_ENDBOTTOMLEFT (BF_DIAGONAL | BF_BOTTOM | BF_LEFT)
-#define BF_DIAGONAL_ENDBOTTOMRIGHT (BF_DIAGONAL | BF_BOTTOM | BF_RIGHT)
-
-/* DrawFrameControl() uType's */
-
-#define DFC_CAPTION 1
-#define DFC_MENU 2
-#define DFC_SCROLL 3
-#define DFC_BUTTON 4
-
-/* uState's */
-
-#define DFCS_CAPTIONCLOSE 0x0000
-#define DFCS_CAPTIONMIN 0x0001
-#define DFCS_CAPTIONMAX 0x0002
-#define DFCS_CAPTIONRESTORE 0x0003
-#define DFCS_CAPTIONHELP 0x0004 /* Windows 95 only */
-
-#define DFCS_MENUARROW 0x0000
-#define DFCS_MENUCHECK 0x0001
-#define DFCS_MENUBULLET 0x0002
-#define DFCS_MENUARROWRIGHT 0x0004
-
-#define DFCS_SCROLLUP 0x0000
-#define DFCS_SCROLLDOWN 0x0001
-#define DFCS_SCROLLLEFT 0x0002
-#define DFCS_SCROLLRIGHT 0x0003
-#define DFCS_SCROLLCOMBOBOX 0x0005
-#define DFCS_SCROLLSIZEGRIP 0x0008
-#define DFCS_SCROLLSIZEGRIPRIGHT 0x0010
-
-#define DFCS_BUTTONCHECK 0x0000
-#define DFCS_BUTTONRADIOIMAGE 0x0001
-#define DFCS_BUTTONRADIOMASK 0x0002 /* to draw nonsquare button */
-#define DFCS_BUTTONRADIO 0x0004
-#define DFCS_BUTTON3STATE 0x0008
-#define DFCS_BUTTONPUSH 0x0010
-
-/* additional state of the control */
-
-#define DFCS_INACTIVE 0x0100
-#define DFCS_PUSHED 0x0200
-#define DFCS_CHECKED 0x0400
-#define DFCS_ADJUSTRECT 0x2000 /* exclude surrounding edge */
-#define DFCS_FLAT 0x4000
-#define DFCS_MONO 0x8000
-
-/* Image type */
-#define DST_COMPLEX 0x0000
-#define DST_TEXT 0x0001
-#define DST_PREFIXTEXT 0x0002
-#define DST_ICON 0x0003
-#define DST_BITMAP 0x0004
-
-/* State type */
-#define DSS_NORMAL 0x0000
-#define DSS_UNION 0x0010 /* Gray string appearance */
-#define DSS_DISABLED 0x0020
-#define DSS_DEFAULT 0x0040 /* Make it bold */
-#define DSS_MONO 0x0080
-#define DSS_RIGHT 0x8000
-
-/* Window Styles */
-#define WS_OVERLAPPED 0x00000000L
-#define WS_POPUP 0x80000000L
-#define WS_CHILD 0x40000000L
-#define WS_MINIMIZE 0x20000000L
-#define WS_VISIBLE 0x10000000L
-#define WS_DISABLED 0x08000000L
-#define WS_CLIPSIBLINGS 0x04000000L
-#define WS_CLIPCHILDREN 0x02000000L
-#define WS_MAXIMIZE 0x01000000L
-#define WS_CAPTION 0x00C00000L
-#define WS_BORDER 0x00800000L
-#define WS_DLGFRAME 0x00400000L
-#define WS_VSCROLL 0x00200000L
-#define WS_HSCROLL 0x00100000L
-#define WS_SYSMENU 0x00080000L
-#define WS_THICKFRAME 0x00040000L
-#define WS_GROUP 0x00020000L
-#define WS_TABSTOP 0x00010000L
-#define WS_MINIMIZEBOX 0x00020000L
-#define WS_MAXIMIZEBOX 0x00010000L
-#define WS_TILED WS_OVERLAPPED
-#define WS_ICONIC WS_MINIMIZE
-#define WS_SIZEBOX WS_THICKFRAME
-#define WS_OVERLAPPEDWINDOW (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME| WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
-#define WS_POPUPWINDOW (WS_POPUP | WS_BORDER | WS_SYSMENU)
-#define WS_CHILDWINDOW (WS_CHILD)
-#define WS_TILEDWINDOW (WS_OVERLAPPEDWINDOW)
-
-/* Window extended styles */
-#define WS_EX_DLGMODALFRAME 0x00000001L
-#define WS_EX_DRAGDETECT 0x00000002L
-#define WS_EX_NOPARENTNOTIFY 0x00000004L
-#define WS_EX_TOPMOST 0x00000008L
-#define WS_EX_ACCEPTFILES 0x00000010L
-#define WS_EX_TRANSPARENT 0x00000020L
-
-/* New Win95/WinNT4 styles */
-#define WS_EX_MDICHILD 0x00000040L
-#define WS_EX_TOOLWINDOW 0x00000080L
-#define WS_EX_WINDOWEDGE 0x00000100L
-#define WS_EX_CLIENTEDGE 0x00000200L
-#define WS_EX_CONTEXTHELP 0x00000400L
-#define WS_EX_RIGHT 0x00001000L
-#define WS_EX_LEFT 0x00000000L
-#define WS_EX_RTLREADING 0x00002000L
-#define WS_EX_LTRREADING 0x00000000L
-#define WS_EX_LEFTSCROLLBAR 0x00004000L
-#define WS_EX_RIGHTSCROLLBAR 0x00000000L
-#define WS_EX_CONTROLPARENT 0x00010000L
-#define WS_EX_STATICEDGE 0x00020000L
-#define WS_EX_APPWINDOW 0x00040000L
-
-#define WS_EX_OVERLAPPEDWINDOW (WS_EX_WINDOWEDGE|WS_EX_CLIENTEDGE)
-#define WS_EX_PALETTEWINDOW (WS_EX_WINDOWEDGE|WS_EX_TOOLWINDOW|WS_EX_TOPMOST)
-
-/* Window scrolling */
-#define SW_SCROLLCHILDREN 0x0001
-#define SW_INVALIDATE 0x0002
-#define SW_ERASE 0x0004
-
-/* CreateWindow() coordinates */
-#define CW_USEDEFAULT16 ((INT16)0x8000)
-#define CW_USEDEFAULT32 ((INT32)0x80000000)
-#define CW_USEDEFAULT WINELIB_NAME(CW_USEDEFAULT)
-
-/* ChildWindowFromPointEx Flags */
-#define CWP_ALL 0x0000
-#define CWP_SKIPINVISIBLE 0x0001
-#define CWP_SKIPDISABLED 0x0002
-#define CWP_SKIPTRANSPARENT 0x0004
-
-/* Button control styles */
-#define BS_PUSHBUTTON 0x00000000L
-#define BS_DEFPUSHBUTTON 0x00000001L
-#define BS_CHECKBOX 0x00000002L
-#define BS_AUTOCHECKBOX 0x00000003L
-#define BS_RADIOBUTTON 0x00000004L
-#define BS_3STATE 0x00000005L
-#define BS_AUTO3STATE 0x00000006L
-#define BS_GROUPBOX 0x00000007L
-#define BS_USERBUTTON 0x00000008L
-#define BS_AUTORADIOBUTTON 0x00000009L
-#define BS_OWNERDRAW 0x0000000BL
-#define BS_LEFTTEXT 0x00000020L
-
-/* Win16 button control messages */
-#define BM_GETCHECK16 (WM_USER+0)
-#define BM_SETCHECK16 (WM_USER+1)
-#define BM_GETSTATE16 (WM_USER+2)
-#define BM_SETSTATE16 (WM_USER+3)
-#define BM_SETSTYLE16 (WM_USER+4)
-#define BM_CLICK16 WM_NULL /* Does not exist in Win16 */
-#define BM_GETIMAGE16 WM_NULL /* Does not exist in Win16 */
-#define BM_SETIMAGE16 WM_NULL /* Does not exist in Win16 */
-/* Win32 button control messages */
-#define BM_GETCHECK32 0x00f0
-#define BM_SETCHECK32 0x00f1
-#define BM_GETSTATE32 0x00f2
-#define BM_SETSTATE32 0x00f3
-#define BM_SETSTYLE32 0x00f4
-#define BM_CLICK32 0x00f5
-#define BM_GETIMAGE32 0x00f6
-#define BM_SETIMAGE32 0x00f7
-/* Winelib button control messages */
-#define BM_GETCHECK WINELIB_NAME(BM_GETCHECK)
-#define BM_SETCHECK WINELIB_NAME(BM_SETCHECK)
-#define BM_GETSTATE WINELIB_NAME(BM_GETSTATE)
-#define BM_SETSTATE WINELIB_NAME(BM_SETSTATE)
-#define BM_SETSTYLE WINELIB_NAME(BM_SETSTYLE)
-#define BM_CLICK WINELIB_NAME(BM_CLICK)
-#define BM_GETIMAGE WINELIB_NAME(BM_GETIMAGE)
-#define BM_SETIMAGE WINELIB_NAME(BM_SETIMAGE)
-
-/* Button notification codes */
-#define BN_CLICKED 0
-#define BN_PAINT 1
-#define BN_HILITE 2
-#define BN_UNHILITE 3
-#define BN_DISABLE 4
-#define BN_DOUBLECLICKED 5
-
-/* Static Control Styles */
-#define SS_LEFT 0x00000000L
-#define SS_CENTER 0x00000001L
-#define SS_RIGHT 0x00000002L
-#define SS_ICON 0x00000003L
-#define SS_BLACKRECT 0x00000004L
-#define SS_GRAYRECT 0x00000005L
-#define SS_WHITERECT 0x00000006L
-#define SS_BLACKFRAME 0x00000007L
-#define SS_GRAYFRAME 0x00000008L
-#define SS_WHITEFRAME 0x00000009L
-
-#define SS_SIMPLE 0x0000000BL
-#define SS_LEFTNOWORDWRAP 0x0000000CL
-
-#define SS_OWNERDRAW 0x0000000DL
-#define SS_BITMAP 0x0000000EL
-#define SS_ENHMETAFILE 0x0000000FL
-
-#define SS_ETCHEDHORZ 0x00000010L
-#define SS_ETCHEDVERT 0x00000011L
-#define SS_ETCHEDFRAME 0x00000012L
-#define SS_TYPEMASK 0x0000001FL
-
-#define SS_NOPREFIX 0x00000080L
-#define SS_NOTIFY 0x00000100L
-#define SS_CENTERIMAGE 0x00000200L
-#define SS_RIGHTJUST 0x00000400L
-#define SS_REALSIZEIMAGE 0x00000800L
-#define SS_SUNKEN 0x00001000L
-
-/* Static Control Messages */
-#define STM_SETICON16 (WM_USER+0)
-#define STM_SETICON32 0x0170
-#define STM_SETICON WINELIB_NAME(STM_SETICON)
-#define STM_GETICON16 (WM_USER+1)
-#define STM_GETICON32 0x0171
-#define STM_GETICON WINELIB_NAME(STM_GETICON)
-#define STM_SETIMAGE 0x0172
-#define STM_GETIMAGE 0x0173
-
-/* Owner draw control types */
-#define ODT_MENU 1
-#define ODT_LISTBOX 2
-#define ODT_COMBOBOX 3
-#define ODT_BUTTON 4
-
-/* Owner draw actions */
-#define ODA_DRAWENTIRE 0x0001
-#define ODA_SELECT 0x0002
-#define ODA_FOCUS 0x0004
-
-/* Owner draw state */
-#define ODS_SELECTED 0x0001
-#define ODS_GRAYED 0x0002
-#define ODS_DISABLED 0x0004
-#define ODS_CHECKED 0x0008
-#define ODS_FOCUS 0x0010
-
-/* Edit control styles */
-#define ES_LEFT 0x00000000
-#define ES_CENTER 0x00000001
-#define ES_RIGHT 0x00000002
-#define ES_MULTILINE 0x00000004
-#define ES_UPPERCASE 0x00000008
-#define ES_LOWERCASE 0x00000010
-#define ES_PASSWORD 0x00000020
-#define ES_AUTOVSCROLL 0x00000040
-#define ES_AUTOHSCROLL 0x00000080
-#define ES_NOHIDESEL 0x00000100
-#define ES_OEMCONVERT 0x00000400
-#define ES_READONLY 0x00000800
-#define ES_WANTRETURN 0x00001000
-#define ES_NUMBER 0x00002000
-
-/* Edit control messages */
-#define EM_GETSEL16 (WM_USER+0)
-#define EM_GETSEL32 0x00b0
-#define EM_GETSEL WINELIB_NAME(EM_GETSEL)
-#define EM_SETSEL16 (WM_USER+1)
-#define EM_SETSEL32 0x00b1
-#define EM_SETSEL WINELIB_NAME(EM_SETSEL)
-#define EM_GETRECT16 (WM_USER+2)
-#define EM_GETRECT32 0x00b2
-#define EM_GETRECT WINELIB_NAME(EM_GETRECT)
-#define EM_SETRECT16 (WM_USER+3)
-#define EM_SETRECT32 0x00b3
-#define EM_SETRECT WINELIB_NAME(EM_SETRECT)
-#define EM_SETRECTNP16 (WM_USER+4)
-#define EM_SETRECTNP32 0x00b4
-#define EM_SETRECTNP WINELIB_NAME(EM_SETRECTNP)
-#define EM_SCROLL16 (WM_USER+5)
-#define EM_SCROLL32 0x00b5
-#define EM_SCROLL WINELIB_NAME(EM_SCROLL)
-#define EM_LINESCROLL16 (WM_USER+6)
-#define EM_LINESCROLL32 0x00b6
-#define EM_LINESCROLL WINELIB_NAME(EM_LINESCROLL)
-#define EM_SCROLLCARET16 (WM_USER+7)
-#define EM_SCROLLCARET32 0x00b7
-#define EM_SCROLLCARET WINELIB_NAME(EM_SCROLLCARET)
-#define EM_GETMODIFY16 (WM_USER+8)
-#define EM_GETMODIFY32 0x00b8
-#define EM_GETMODIFY WINELIB_NAME(EM_GETMODIFY)
-#define EM_SETMODIFY16 (WM_USER+9)
-#define EM_SETMODIFY32 0x00b9
-#define EM_SETMODIFY WINELIB_NAME(EM_SETMODIFY)
-#define EM_GETLINECOUNT16 (WM_USER+10)
-#define EM_GETLINECOUNT32 0x00ba
-#define EM_GETLINECOUNT WINELIB_NAME(EM_GETLINECOUNT)
-#define EM_LINEINDEX16 (WM_USER+11)
-#define EM_LINEINDEX32 0x00bb
-#define EM_LINEINDEX WINELIB_NAME(EM_LINEINDEX)
-#define EM_SETHANDLE16 (WM_USER+12)
-#define EM_SETHANDLE32 0x00bc
-#define EM_SETHANDLE WINELIB_NAME(EM_SETHANDLE)
-#define EM_GETHANDLE16 (WM_USER+13)
-#define EM_GETHANDLE32 0x00bd
-#define EM_GETHANDLE WINELIB_NAME(EM_GETHANDLE)
-#define EM_GETTHUMB16 (WM_USER+14)
-#define EM_GETTHUMB32 0x00be
-#define EM_GETTHUMB WINELIB_NAME(EM_GETTHUMB)
-/* FIXME : missing from specs 0x00bf and 0x00c0 */
-#define EM_LINELENGTH16 (WM_USER+17)
-#define EM_LINELENGTH32 0x00c1
-#define EM_LINELENGTH WINELIB_NAME(EM_LINELENGTH)
-#define EM_REPLACESEL16 (WM_USER+18)
-#define EM_REPLACESEL32 0x00c2
-#define EM_REPLACESEL WINELIB_NAME(EM_REPLACESEL)
-/* FIXME : missing from specs 0x00c3 */
-#define EM_GETLINE16 (WM_USER+20)
-#define EM_GETLINE32 0x00c4
-#define EM_GETLINE WINELIB_NAME(EM_GETLINE)
-#define EM_LIMITTEXT16 (WM_USER+21)
-#define EM_LIMITTEXT32 0x00c5
-#define EM_LIMITTEXT WINELIB_NAME(EM_LIMITTEXT)
-#define EM_CANUNDO16 (WM_USER+22)
-#define EM_CANUNDO32 0x00c6
-#define EM_CANUNDO WINELIB_NAME(EM_CANUNDO)
-#define EM_UNDO16 (WM_USER+23)
-#define EM_UNDO32 0x00c7
-#define EM_UNDO WINELIB_NAME(EM_UNDO)
-#define EM_FMTLINES16 (WM_USER+24)
-#define EM_FMTLINES32 0x00c8
-#define EM_FMTLINES WINELIB_NAME(EM_FMTLINES)
-#define EM_LINEFROMCHAR16 (WM_USER+25)
-#define EM_LINEFROMCHAR32 0x00c9
-#define EM_LINEFROMCHAR WINELIB_NAME(EM_LINEFROMCHAR)
-/* FIXME : missing from specs 0x00ca */
-#define EM_SETTABSTOPS16 (WM_USER+27)
-#define EM_SETTABSTOPS32 0x00cb
-#define EM_SETTABSTOPS WINELIB_NAME(EM_SETTABSTOPS)
-#define EM_SETPASSWORDCHAR16 (WM_USER+28)
-#define EM_SETPASSWORDCHAR32 0x00cc
-#define EM_SETPASSWORDCHAR WINELIB_NAME(EM_SETPASSWORDCHAR)
-#define EM_EMPTYUNDOBUFFER16 (WM_USER+29)
-#define EM_EMPTYUNDOBUFFER32 0x00cd
-#define EM_EMPTYUNDOBUFFER WINELIB_NAME(EM_EMPTYUNDOBUFFER)
-#define EM_GETFIRSTVISIBLELINE16 (WM_USER+30)
-#define EM_GETFIRSTVISIBLELINE32 0x00ce
-#define EM_GETFIRSTVISIBLELINE WINELIB_NAME(EM_GETFIRSTVISIBLELINE)
-#define EM_SETREADONLY16 (WM_USER+31)
-#define EM_SETREADONLY32 0x00cf
-#define EM_SETREADONLY WINELIB_NAME(EM_SETREADONLY)
-#define EM_SETWORDBREAKPROC16 (WM_USER+32)
-#define EM_SETWORDBREAKPROC32 0x00d0
-#define EM_SETWORDBREAKPROC WINELIB_NAME(EM_SETWORDBREAKPROC)
-#define EM_GETWORDBREAKPROC16 (WM_USER+33)
-#define EM_GETWORDBREAKPROC32 0x00d1
-#define EM_GETWORDBREAKPROC WINELIB_NAME(EM_GETWORDBREAKPROC)
-#define EM_GETPASSWORDCHAR16 (WM_USER+34)
-#define EM_GETPASSWORDCHAR32 0x00d2
-#define EM_GETPASSWORDCHAR WINELIB_NAME(EM_GETPASSWORDCHAR)
-#define EM_SETMARGINS16 WM_NULL /* not in win16 */
-#define EM_SETMARGINS32 0x00d3
-#define EM_SETMARGINS WINELIB_NAME(EM_SETMARGINS)
-#define EM_GETMARGINS16 WM_NULL /* not in win16 */
-#define EM_GETMARGINS32 0x00d4
-#define EM_GETMARGINS WINELIB_NAME(EM_GETMARGINS)
-#define EM_GETLIMITTEXT16 WM_NULL /* not in win16 */
-#define EM_GETLIMITTEXT32 0x00d5
-#define EM_GETLIMITTEXT WINELIB_NAME(EM_GETLIMITTEXT)
-#define EM_POSFROMCHAR16 WM_NULL /* not in win16 */
-#define EM_POSFROMCHAR32 0x00d6
-#define EM_POSFROMCHAR WINELIB_NAME(EM_POSFROMCHAR)
-#define EM_CHARFROMPOS16 WM_NULL /* not in win16 */
-#define EM_CHARFROMPOS32 0x00d7
-#define EM_CHARFROMPOS WINELIB_NAME(EM_CHARFROMPOS)
-/* a name change since win95 */
-#define EM_SETLIMITTEXT16 WM_NULL /* no name change in win16 */
-#define EM_SETLIMITTEXT32 EM_LIMITTEXT32
-#define EM_SETLIMITTEXT WINELIB_NAME(EM_SETLIMITTEXT)
-
-/* EDITWORDBREAKPROC code values */
-#define WB_LEFT 0
-#define WB_RIGHT 1
-#define WB_ISDELIMITER 2
-
-/* Edit control notification codes */
-#define EN_SETFOCUS 0x0100
-#define EN_KILLFOCUS 0x0200
-#define EN_CHANGE 0x0300
-#define EN_UPDATE 0x0400
-#define EN_ERRSPACE 0x0500
-#define EN_MAXTEXT 0x0501
-#define EN_HSCROLL 0x0601
-#define EN_VSCROLL 0x0602
-
-/* New since win95 : EM_SETMARGIN parameters */
-#define EC_LEFTMARGIN 0x0001
-#define EC_RIGHTMARGIN 0x0002
-#define EC_USEFONTINFO 0xffff
-
-
-typedef struct
-{
- UINT16 CtlType;
- UINT16 CtlID;
- UINT16 itemID;
- UINT16 itemAction;
- UINT16 itemState;
- HWND16 hwndItem;
- HDC16 hDC;
- RECT16 rcItem WINE_PACKED;
- DWORD itemData WINE_PACKED;
-} DRAWITEMSTRUCT16, *PDRAWITEMSTRUCT16, *LPDRAWITEMSTRUCT16;
-
-typedef struct
-{
- UINT32 CtlType;
- UINT32 CtlID;
- UINT32 itemID;
- UINT32 itemAction;
- UINT32 itemState;
- HWND32 hwndItem;
- HDC32 hDC;
- RECT32 rcItem WINE_PACKED;
- DWORD itemData WINE_PACKED;
-} DRAWITEMSTRUCT32, *PDRAWITEMSTRUCT32, *LPDRAWITEMSTRUCT32;
-
-DECL_WINELIB_TYPE(DRAWITEMSTRUCT)
-DECL_WINELIB_TYPE(PDRAWITEMSTRUCT)
-DECL_WINELIB_TYPE(LPDRAWITEMSTRUCT)
-
-typedef struct
-{
- UINT16 CtlType;
- UINT16 CtlID;
- UINT16 itemID;
- UINT16 itemWidth;
- UINT16 itemHeight;
- DWORD itemData WINE_PACKED;
-} MEASUREITEMSTRUCT16, *PMEASUREITEMSTRUCT16, *LPMEASUREITEMSTRUCT16;
-
-typedef struct
-{
- UINT32 CtlType;
- UINT32 CtlID;
- UINT32 itemID;
- UINT32 itemWidth;
- UINT32 itemHeight;
- DWORD itemData;
-} MEASUREITEMSTRUCT32, *PMEASUREITEMSTRUCT32, *LPMEASUREITEMSTRUCT32;
-
-DECL_WINELIB_TYPE(MEASUREITEMSTRUCT)
-DECL_WINELIB_TYPE(PMEASUREITEMSTRUCT)
-DECL_WINELIB_TYPE(LPMEASUREITEMSTRUCT)
-
-typedef struct
-{
- UINT16 CtlType;
- UINT16 CtlID;
- UINT16 itemID;
- HWND16 hwndItem;
- DWORD itemData;
-} DELETEITEMSTRUCT16, *LPDELETEITEMSTRUCT16;
-
-typedef struct
-{
- UINT32 CtlType;
- UINT32 CtlID;
- UINT32 itemID;
- HWND32 hwndItem;
- DWORD itemData;
-} DELETEITEMSTRUCT32, *LPDELETEITEMSTRUCT32;
-
-DECL_WINELIB_TYPE(DELETEITEMSTRUCT)
-DECL_WINELIB_TYPE(LPDELETEITEMSTRUCT)
-
-typedef struct
-{
- UINT16 CtlType;
- UINT16 CtlID;
- HWND16 hwndItem;
- UINT16 itemID1;
- DWORD itemData1;
- UINT16 itemID2;
- DWORD itemData2 WINE_PACKED;
-} COMPAREITEMSTRUCT16, *LPCOMPAREITEMSTRUCT16;
-
-typedef struct
-{
- UINT32 CtlType;
- UINT32 CtlID;
- HWND32 hwndItem;
- UINT32 itemID1;
- DWORD itemData1;
- UINT32 itemID2;
- DWORD itemData2;
- DWORD dwLocaleId;
-} COMPAREITEMSTRUCT32, *LPCOMPAREITEMSTRUCT32;
-
-DECL_WINELIB_TYPE(COMPAREITEMSTRUCT)
-DECL_WINELIB_TYPE(LPCOMPAREITEMSTRUCT)
-
-/* WM_KEYUP/DOWN/CHAR HIWORD(lParam) flags */
-#define KF_EXTENDED 0x0100
-#define KF_DLGMODE 0x0800
-#define KF_MENUMODE 0x1000
-#define KF_ALTDOWN 0x2000
-#define KF_REPEAT 0x4000
-#define KF_UP 0x8000
-
-/* Virtual key codes */
-#define VK_LBUTTON 0x01
-#define VK_RBUTTON 0x02
-#define VK_CANCEL 0x03
-#define VK_MBUTTON 0x04
-/* 0x05-0x07 Undefined */
-#define VK_BACK 0x08
-#define VK_TAB 0x09
-/* 0x0A-0x0B Undefined */
-#define VK_CLEAR 0x0C
-#define VK_RETURN 0x0D
-/* 0x0E-0x0F Undefined */
-#define VK_SHIFT 0x10
-#define VK_CONTROL 0x11
-#define VK_MENU 0x12
-#define VK_PAUSE 0x13
-#define VK_CAPITAL 0x14
-/* 0x15-0x19 Reserved for Kanji systems */
-/* 0x1A Undefined */
-#define VK_ESCAPE 0x1B
-/* 0x1C-0x1F Reserved for Kanji systems */
-#define VK_SPACE 0x20
-#define VK_PRIOR 0x21
-#define VK_NEXT 0x22
-#define VK_END 0x23
-#define VK_HOME 0x24
-#define VK_LEFT 0x25
-#define VK_UP 0x26
-#define VK_RIGHT 0x27
-#define VK_DOWN 0x28
-#define VK_SELECT 0x29
-#define VK_PRINT 0x2A /* OEM specific in Windows 3.1 SDK */
-#define VK_EXECUTE 0x2B
-#define VK_SNAPSHOT 0x2C
-#define VK_INSERT 0x2D
-#define VK_DELETE 0x2E
-#define VK_HELP 0x2F
-#define VK_0 0x30
-#define VK_1 0x31
-#define VK_2 0x32
-#define VK_3 0x33
-#define VK_4 0x34
-#define VK_5 0x35
-#define VK_6 0x36
-#define VK_7 0x37
-#define VK_8 0x38
-#define VK_9 0x39
-/* 0x3A-0x40 Undefined */
-#define VK_A 0x41
-#define VK_B 0x42
-#define VK_C 0x43
-#define VK_D 0x44
-#define VK_E 0x45
-#define VK_F 0x46
-#define VK_G 0x47
-#define VK_H 0x48
-#define VK_I 0x49
-#define VK_J 0x4A
-#define VK_K 0x4B
-#define VK_L 0x4C
-#define VK_M 0x4D
-#define VK_N 0x4E
-#define VK_O 0x4F
-#define VK_P 0x50
-#define VK_Q 0x51
-#define VK_R 0x52
-#define VK_S 0x53
-#define VK_T 0x54
-#define VK_U 0x55
-#define VK_V 0x56
-#define VK_W 0x57
-#define VK_X 0x58
-#define VK_Y 0x59
-#define VK_Z 0x5A
-
-#define VK_LWIN 0x5B
-#define VK_RWIN 0x5C
-#define VK_APPS 0x5D
-/* 0x5E-0x5F Unassigned */
-#define VK_NUMPAD0 0x60
-#define VK_NUMPAD1 0x61
-#define VK_NUMPAD2 0x62
-#define VK_NUMPAD3 0x63
-#define VK_NUMPAD4 0x64
-#define VK_NUMPAD5 0x65
-#define VK_NUMPAD6 0x66
-#define VK_NUMPAD7 0x67
-#define VK_NUMPAD8 0x68
-#define VK_NUMPAD9 0x69
-#define VK_MULTIPLY 0x6A
-#define VK_ADD 0x6B
-#define VK_SEPARATOR 0x6C
-#define VK_SUBTRACT 0x6D
-#define VK_DECIMAL 0x6E
-#define VK_DIVIDE 0x6F
-#define VK_F1 0x70
-#define VK_F2 0x71
-#define VK_F3 0x72
-#define VK_F4 0x73
-#define VK_F5 0x74
-#define VK_F6 0x75
-#define VK_F7 0x76
-#define VK_F8 0x77
-#define VK_F9 0x78
-#define VK_F10 0x79
-#define VK_F11 0x7A
-#define VK_F12 0x7B
-#define VK_F13 0x7C
-#define VK_F14 0x7D
-#define VK_F15 0x7E
-#define VK_F16 0x7F
-#define VK_F17 0x80
-#define VK_F18 0x81
-#define VK_F19 0x82
-#define VK_F20 0x83
-#define VK_F21 0x84
-#define VK_F22 0x85
-#define VK_F23 0x86
-#define VK_F24 0x87
-/* 0x88-0x8F Unassigned */
-#define VK_NUMLOCK 0x90
-#define VK_SCROLL 0x91
-/* 0x92-0x9F Unassigned */
-/*
- * differencing between right and left shift/control/alt key.
- * Used only by GetAsyncKeyState() and GetKeyState().
- */
-#define VK_LSHIFT 0xA0
-#define VK_RSHIFT 0xA1
-#define VK_LCONTROL 0xA2
-#define VK_RCONTROL 0xA3
-#define VK_LMENU 0xA4
-#define VK_RMENU 0xA5
-/* 0xA6-0xB9 Unassigned */
-#define VK_OEM_1 0xBA
-#define VK_OEM_PLUS 0xBB
-#define VK_OEM_COMMA 0xBC
-#define VK_OEM_MINUS 0xBD
-#define VK_OEM_PERIOD 0xBE
-#define VK_OEM_2 0xBF
-#define VK_OEM_3 0xC0
-/* 0xC1-0xDA Unassigned */
-#define VK_OEM_4 0xDB
-#define VK_OEM_5 0xDC
-#define VK_OEM_6 0xDD
-#define VK_OEM_7 0xDE
-/* 0xDF-0xE4 OEM specific */
-
-#define VK_PROCESSKEY 0xE5
-
-/* 0xE6 OEM specific */
-/* 0xE7-0xE8 Unassigned */
-/* 0xE9-0xF5 OEM specific */
-
-#define VK_ATTN 0xF6
-#define VK_CRSEL 0xF7
-#define VK_EXSEL 0xF8
-#define VK_EREOF 0xF9
-#define VK_PLAY 0xFA
-#define VK_ZOOM 0xFB
-#define VK_NONAME 0xFC
-#define VK_PA1 0xFD
-#define VK_OEM_CLEAR 0xFE
-
-#define LMEM_FIXED 0
-#define LMEM_MOVEABLE 0x0002
-#define LMEM_NOCOMPACT 0x0010
-#define LMEM_NODISCARD 0x0020
-#define LMEM_ZEROINIT 0x0040
-#define LMEM_MODIFY 0x0080
-#define LMEM_DISCARDABLE 0x0F00
-#define LMEM_DISCARDED 0x4000
-#define LMEM_LOCKCOUNT 0x00FF
-
-#define LPTR (LMEM_FIXED | LMEM_ZEROINIT)
-
-#define GMEM_FIXED 0x0000
-#define GMEM_MOVEABLE 0x0002
-#define GMEM_NOCOMPACT 0x0010
-#define GMEM_NODISCARD 0x0020
-#define GMEM_ZEROINIT 0x0040
-#define GMEM_MODIFY 0x0080
-#define GMEM_DISCARDABLE 0x0100
-#define GMEM_NOT_BANKED 0x1000
-#define GMEM_SHARE 0x2000
-#define GMEM_DDESHARE 0x2000
-#define GMEM_NOTIFY 0x4000
-#define GMEM_LOWER GMEM_NOT_BANKED
-#define GMEM_DISCARDED 0x4000
-#define GMEM_LOCKCOUNT 0x00ff
-#define GMEM_INVALID_HANDLE 0x8000
-
-#define GHND (GMEM_MOVEABLE | GMEM_ZEROINIT)
-#define GPTR (GMEM_FIXED | GMEM_ZEROINIT)
-
-
-typedef struct tagMEMORYSTATUS
-{
- DWORD dwLength;
- DWORD dwMemoryLoad;
- DWORD dwTotalPhys;
- DWORD dwAvailPhys;
- DWORD dwTotalPageFile;
- DWORD dwAvailPageFile;
- DWORD dwTotalVirtual;
- DWORD dwAvailVirtual;
-} MEMORYSTATUS, *LPMEMORYSTATUS;
-
-/* Predefined Clipboard Formats */
-#define CF_TEXT 1
-#define CF_BITMAP 2
-#define CF_METAFILEPICT 3
-#define CF_SYLK 4
-#define CF_DIF 5
-#define CF_TIFF 6
-#define CF_OEMTEXT 7
-#define CF_DIB 8
-#define CF_PALETTE 9
-#define CF_PENDATA 10
-#define CF_RIFF 11
-#define CF_WAVE 12
-#define CF_ENHMETAFILE 14
-
-#define CF_OWNERDISPLAY 0x0080
-#define CF_DSPTEXT 0x0081
-#define CF_DSPBITMAP 0x0082
-#define CF_DSPMETAFILEPICT 0x0083
-
-/* "Private" formats don't get GlobalFree()'d */
-#define CF_PRIVATEFIRST 0x0200
-#define CF_PRIVATELAST 0x02FF
-
-/* "GDIOBJ" formats do get DeleteObject()'d */
-#define CF_GDIOBJFIRST 0x0300
-#define CF_GDIOBJLAST 0x03FF
-
-/* Clipboard command messages */
-#define WM_CUT 0x0300
-#define WM_COPY 0x0301
-#define WM_PASTE 0x0302
-#define WM_CLEAR 0x0303
-#define WM_UNDO 0x0304
-
-/* Clipboard owner messages */
-#define WM_RENDERFORMAT 0x0305
-#define WM_RENDERALLFORMATS 0x0306
-#define WM_DESTROYCLIPBOARD 0x0307
-
-/* Clipboard viewer messages */
-#define WM_DRAWCLIPBOARD 0x0308
-#define WM_PAINTCLIPBOARD 0x0309
-#define WM_SIZECLIPBOARD 0x030B
-#define WM_VSCROLLCLIPBOARD 0x030A
-#define WM_HSCROLLCLIPBOARD 0x030E
-#define WM_ASKCBFORMATNAME 0x030C
-#define WM_CHANGECBCHAIN 0x030D
-
-
-#ifndef NOLOGERROR
-
-/* LogParamError and LogError values */
-
-/* Error modifier bits */
-#define ERR_WARNING 0x8000
-#define ERR_PARAM 0x4000
-
-#define ERR_SIZE_MASK 0x3000
-#define ERR_BYTE 0x1000
-#define ERR_WORD 0x2000
-#define ERR_DWORD 0x3000
-
-/* LogParamError() values */
-
-/* Generic parameter values */
-#define ERR_BAD_VALUE 0x6001
-#define ERR_BAD_FLAGS 0x6002
-#define ERR_BAD_INDEX 0x6003
-#define ERR_BAD_DVALUE 0x7004
-#define ERR_BAD_DFLAGS 0x7005
-#define ERR_BAD_DINDEX 0x7006
-#define ERR_BAD_PTR 0x7007
-#define ERR_BAD_FUNC_PTR 0x7008
-#define ERR_BAD_SELECTOR 0x6009
-#define ERR_BAD_STRING_PTR 0x700a
-#define ERR_BAD_HANDLE 0x600b
-
-/* KERNEL parameter errors */
-#define ERR_BAD_HINSTANCE 0x6020
-#define ERR_BAD_HMODULE 0x6021
-#define ERR_BAD_GLOBAL_HANDLE 0x6022
-#define ERR_BAD_LOCAL_HANDLE 0x6023
-#define ERR_BAD_ATOM 0x6024
-#define ERR_BAD_HFILE 0x6025
-
-/* USER parameter errors */
-#define ERR_BAD_HWND 0x6040
-#define ERR_BAD_HMENU 0x6041
-#define ERR_BAD_HCURSOR 0x6042
-#define ERR_BAD_HICON 0x6043
-#define ERR_BAD_HDWP 0x6044
-#define ERR_BAD_CID 0x6045
-#define ERR_BAD_HDRVR 0x6046
-
-/* GDI parameter errors */
-#define ERR_BAD_COORDS 0x7060
-#define ERR_BAD_GDI_OBJECT 0x6061
-#define ERR_BAD_HDC 0x6062
-#define ERR_BAD_HPEN 0x6063
-#define ERR_BAD_HFONT 0x6064
-#define ERR_BAD_HBRUSH 0x6065
-#define ERR_BAD_HBITMAP 0x6066
-#define ERR_BAD_HRGN 0x6067
-#define ERR_BAD_HPALETTE 0x6068
-#define ERR_BAD_HMETAFILE 0x6069
-
-
-/* LogError() values */
-
-/* KERNEL errors */
-#define ERR_GALLOC 0x0001
-#define ERR_GREALLOC 0x0002
-#define ERR_GLOCK 0x0003
-#define ERR_LALLOC 0x0004
-#define ERR_LREALLOC 0x0005
-#define ERR_LLOCK 0x0006
-#define ERR_ALLOCRES 0x0007
-#define ERR_LOCKRES 0x0008
-#define ERR_LOADMODULE 0x0009
-
-/* USER errors */
-#define ERR_CREATEDLG 0x0040
-#define ERR_CREATEDLG2 0x0041
-#define ERR_REGISTERCLASS 0x0042
-#define ERR_DCBUSY 0x0043
-#define ERR_CREATEWND 0x0044
-#define ERR_STRUCEXTRA 0x0045
-#define ERR_LOADSTR 0x0046
-#define ERR_LOADMENU 0x0047
-#define ERR_NESTEDBEGINPAINT 0x0048
-#define ERR_BADINDEX 0x0049
-#define ERR_CREATEMENU 0x004a
-
-/* GDI errors */
-#define ERR_CREATEDC 0x0080
-#define ERR_CREATEMETA 0x0081
-#define ERR_DELOBJSELECTED 0x0082
-#define ERR_SELBITMAP 0x0083
-
-
-
-/* Debugging support (DEBUG SYSTEM ONLY) */
-typedef struct
-{
- UINT16 flags;
- DWORD dwOptions WINE_PACKED;
- DWORD dwFilter WINE_PACKED;
- CHAR achAllocModule[8] WINE_PACKED;
- DWORD dwAllocBreak WINE_PACKED;
- DWORD dwAllocCount WINE_PACKED;
-} WINDEBUGINFO, *LPWINDEBUGINFO;
-
-/* WINDEBUGINFO flags values */
-#define WDI_OPTIONS 0x0001
-#define WDI_FILTER 0x0002
-#define WDI_ALLOCBREAK 0x0004
-
-/* dwOptions values */
-#define DBO_CHECKHEAP 0x0001
-#define DBO_BUFFERFILL 0x0004
-#define DBO_DISABLEGPTRAPPING 0x0010
-#define DBO_CHECKFREE 0x0020
-
-#define DBO_SILENT 0x8000
-
-#define DBO_TRACEBREAK 0x2000
-#define DBO_WARNINGBREAK 0x1000
-#define DBO_NOERRORBREAK 0x0800
-#define DBO_NOFATALBREAK 0x0400
-#define DBO_INT3BREAK 0x0100
-
-/* DebugOutput flags values */
-#define DBF_TRACE 0x0000
-#define DBF_WARNING 0x4000
-#define DBF_ERROR 0x8000
-#define DBF_FATAL 0xc000
-
-/* dwFilter values */
-#define DBF_KERNEL 0x1000
-#define DBF_KRN_MEMMAN 0x0001
-#define DBF_KRN_LOADMODULE 0x0002
-#define DBF_KRN_SEGMENTLOAD 0x0004
-#define DBF_USER 0x0800
-#define DBF_GDI 0x0400
-#define DBF_MMSYSTEM 0x0040
-#define DBF_PENWIN 0x0020
-#define DBF_APPLICATION 0x0008
-#define DBF_DRIVER 0x0010
-
-#endif /* NOLOGERROR */
-
-/* Win32-specific structures */
-
-typedef struct {
- DWORD dwData;
- DWORD cbData;
- LPVOID lpData;
-} COPYDATASTRUCT, *PCOPYDATASTRUCT, *LPCOPYDATASTRUCT;
-
-typedef struct {
- HMENU32 hmenuIn;
- HMENU32 hmenuNext;
- HWND32 hwndNext;
-} MDINEXTMENU, *PMDINEXTMENU, *LPMDINEXTMENU;
-
-typedef struct {
- WORD wYear;
- WORD wMonth;
- WORD wDayOfWeek;
- WORD wDay;
- WORD wHour;
- WORD wMinute;
- WORD wSecond;
- WORD wMilliseconds;
-} SYSTEMTIME, *LPSYSTEMTIME;
-
-
-/* Code page information.
- */
-#define MAX_LEADBYTES 12
-#define MAX_DEFAULTCHAR 2
-
-typedef struct
-{
- UINT32 MaxCharSize;
- BYTE DefaultChar[MAX_DEFAULTCHAR];
- BYTE LeadByte[MAX_LEADBYTES];
-} CPINFO, *LPCPINFO;
-
-/* The 'overlapped' data structure used by async I/O functions.
- */
-typedef struct {
- DWORD Internal;
- DWORD InternalHigh;
- DWORD Offset;
- DWORD OffsetHigh;
- HANDLE32 hEvent;
-} OVERLAPPED, *LPOVERLAPPED;
-
-/* Process startup information.
- */
-
-/* STARTUPINFO.dwFlags */
-#define STARTF_USESHOWWINDOW 0x00000001
-#define STARTF_USESIZE 0x00000002
-#define STARTF_USEPOSITION 0x00000004
-#define STARTF_USECOUNTCHARS 0x00000008
-#define STARTF_USEFILLATTRIBUTE 0x00000010
-#define STARTF_RUNFULLSCREEN 0x00000020
-#define STARTF_FORCEONFEEDBACK 0x00000040
-#define STARTF_FORCEOFFFEEDBACK 0x00000080
-#define STARTF_USESTDHANDLES 0x00000100
-#define STARTF_USEHOTKEY 0x00000200
-
-typedef struct {
- DWORD cb; /* 00: size of struct */
- LPSTR lpReserved; /* 04: */
- LPSTR lpDesktop; /* 08: */
- LPSTR lpTitle; /* 0c: */
- DWORD dwX; /* 10: */
- DWORD dwY; /* 14: */
- DWORD dwXSize; /* 18: */
- DWORD dwYSize; /* 1c: */
- DWORD dwXCountChars; /* 20: */
- DWORD dwYCountChars; /* 24: */
- DWORD dwFillAttribute; /* 28: */
- DWORD dwFlags; /* 2c: */
- WORD wShowWindow; /* 30: */
- WORD cbReserved2; /* 32: */
- BYTE *lpReserved2; /* 34: */
- HANDLE32 hStdInput; /* 38: */
- HANDLE32 hStdOutput; /* 3c: */
- HANDLE32 hStdError; /* 40: */
-} STARTUPINFO32A, *LPSTARTUPINFO32A;
-
-typedef struct {
- DWORD cb;
- LPWSTR lpReserved;
- LPWSTR lpDesktop;
- LPWSTR lpTitle;
- DWORD dwX;
- DWORD dwY;
- DWORD dwXSize;
- DWORD dwYSize;
- DWORD dwXCountChars;
- DWORD dwYCountChars;
- DWORD dwFillAttribute;
- DWORD dwFlags;
- WORD wShowWindow;
- WORD cbReserved2;
- BYTE *lpReserved2;
- HANDLE32 hStdInput;
- HANDLE32 hStdOutput;
- HANDLE32 hStdError;
-} STARTUPINFO32W, *LPSTARTUPINFO32W;
-
-DECL_WINELIB_TYPE_AW(STARTUPINFO)
-DECL_WINELIB_TYPE_AW(LPSTARTUPINFO)
-
-typedef struct {
- HANDLE32 hProcess;
- HANDLE32 hThread;
- DWORD dwProcessId;
- DWORD dwThreadId;
-} PROCESS_INFORMATION,*LPPROCESS_INFORMATION;
-
-typedef struct {
- LONG Bias;
- WCHAR StandardName[32];
- SYSTEMTIME StandardDate;
- LONG StandardBias;
- WCHAR DaylightName[32];
- SYSTEMTIME DaylightDate;
- LONG DaylightBias;
-} TIME_ZONE_INFORMATION, *LPTIME_ZONE_INFORMATION;
-
-#define TIME_ZONE_ID_UNKNOWN 0
-#define TIME_ZONE_ID_STANDARD 1
-#define TIME_ZONE_ID_DAYLIGHT 2
-
-/* CreateProcess: dwCreationFlag values
- */
-#define DEBUG_PROCESS 0x00000001
-#define DEBUG_ONLY_THIS_PROCESS 0x00000002
-#define CREATE_SUSPENDED 0x00000004
-#define DETACHED_PROCESS 0x00000008
-#define CREATE_NEW_CONSOLE 0x00000010
-#define NORMAL_PRIORITY_CLASS 0x00000020
-#define IDLE_PRIORITY_CLASS 0x00000040
-#define HIGH_PRIORITY_CLASS 0x00000080
-#define REALTIME_PRIORITY_CLASS 0x00000100
-#define CREATE_NEW_PROCESS_GROUP 0x00000200
-#define CREATE_UNICODE_ENVIRONMENT 0x00000400
-#define CREATE_SEPARATE_WOW_VDM 0x00000800
-#define CREATE_SHARED_WOW_VDM 0x00001000
-#define CREATE_DEFAULT_ERROR_MODE 0x04000000
-#define CREATE_NO_WINDOW 0x08000000
-#define PROFILE_USER 0x10000000
-#define PROFILE_KERNEL 0x20000000
-#define PROFILE_SERVER 0x40000000
-
-
-/* File object type definitions
- */
-#define FILE_TYPE_UNKNOWN 0
-#define FILE_TYPE_DISK 1
-#define FILE_TYPE_CHAR 2
-#define FILE_TYPE_PIPE 3
-#define FILE_TYPE_REMOTE 32768
-
-/* File creation flags
- */
-#define FILE_FLAG_WRITE_THROUGH 0x80000000UL
-#define FILE_FLAG_OVERLAPPED 0x40000000L
-#define FILE_FLAG_NO_BUFFERING 0x20000000L
-#define FILE_FLAG_RANDOM_ACCESS 0x10000000L
-#define FILE_FLAG_SEQUENTIAL_SCAN 0x08000000L
-#define FILE_FLAG_DELETE_ON_CLOSE 0x04000000L
-#define FILE_FLAG_BACKUP_SEMANTICS 0x02000000L
-#define FILE_FLAG_POSIX_SEMANTICS 0x01000000L
-#define CREATE_NEW 1
-#define CREATE_ALWAYS 2
-#define OPEN_EXISTING 3
-#define OPEN_ALWAYS 4
-#define TRUNCATE_EXISTING 5
-
-/* Standard handle identifiers
- */
-#define STD_INPUT_HANDLE ((DWORD) -10)
-#define STD_OUTPUT_HANDLE ((DWORD) -11)
-#define STD_ERROR_HANDLE ((DWORD) -12)
-
-typedef struct
-{
- int dwFileAttributes;
- FILETIME ftCreationTime;
- FILETIME ftLastAccessTime;
- FILETIME ftLastWriteTime;
- int dwVolumeSerialNumber;
- int nFileSizeHigh;
- int nFileSizeLow;
- int nNumberOfLinks;
- int nFileIndexHigh;
- int nFileIndexLow;
-} BY_HANDLE_FILE_INFORMATION ;
-
-/* File attribute flags
- */
-#define FILE_SHARE_READ 0x00000001L
-#define FILE_SHARE_WRITE 0x00000002L
-#define FILE_SHARE_DELETE 0x00000004L
-#define FILE_ATTRIBUTE_READONLY 0x00000001L
-#define FILE_ATTRIBUTE_HIDDEN 0x00000002L
-#define FILE_ATTRIBUTE_SYSTEM 0x00000004L
-#define FILE_ATTRIBUTE_LABEL 0x00000008L /* Not in Windows API */
-#define FILE_ATTRIBUTE_DIRECTORY 0x00000010L
-#define FILE_ATTRIBUTE_ARCHIVE 0x00000020L
-#define FILE_ATTRIBUTE_NORMAL 0x00000080L
-#define FILE_ATTRIBUTE_TEMPORARY 0x00000100L
-#define FILE_ATTRIBUTE_ATOMIC_WRITE 0x00000200L
-#define FILE_ATTRIBUTE_XACTION_WRITE 0x00000400L
-#define FILE_ATTRIBUTE_COMPRESSED 0x00000800L
-#define FILE_ATTRIBUTE_OFFLINE 0x00001000L
-
-/* File alignments (NT) */
-#define FILE_BYTE_ALIGNMENT 0x00000000
-#define FILE_WORD_ALIGNMENT 0x00000001
-#define FILE_LONG_ALIGNMENT 0x00000003
-#define FILE_QUAD_ALIGNMENT 0x00000007
-#define FILE_OCTA_ALIGNMENT 0x0000000f
-#define FILE_32_BYTE_ALIGNMENT 0x0000001f
-#define FILE_64_BYTE_ALIGNMENT 0x0000003f
-#define FILE_128_BYTE_ALIGNMENT 0x0000007f
-#define FILE_256_BYTE_ALIGNMENT 0x000000ff
-#define FILE_512_BYTE_ALIGNMENT 0x000001ff
-
-/* WinHelp internal structure */
-typedef struct {
- WORD size;
- WORD command;
- LONG data;
- LONG reserved;
- WORD ofsFilename;
- WORD ofsData;
-} WINHELP,*LPWINHELP;
-
-typedef struct
-{
- UINT16 mkSize;
- BYTE mkKeyList;
- BYTE szKeyPhrase[1];
-} MULTIKEYHELP, *LPMULTIKEYHELP;
-
-typedef struct {
- WORD wStructSize;
- WORD x;
- WORD y;
- WORD dx;
- WORD dy;
- WORD wMax;
- char rgchMember[2];
-} HELPWININFO, *LPHELPWININFO;
-
-#define HELP_CONTEXT 0x0001
-#define HELP_QUIT 0x0002
-#define HELP_INDEX 0x0003
-#define HELP_CONTENTS 0x0003
-#define HELP_HELPONHELP 0x0004
-#define HELP_SETINDEX 0x0005
-#define HELP_SETCONTENTS 0x0005
-#define HELP_CONTEXTPOPUP 0x0008
-#define HELP_FORCEFILE 0x0009
-#define HELP_KEY 0x0101
-#define HELP_COMMAND 0x0102
-#define HELP_PARTIALKEY 0x0105
-#define HELP_MULTIKEY 0x0201
-#define HELP_SETWINPOS 0x0203
-#define HELP_CONTEXTMENU 0x000a
-#define HELP_FINDER 0x000b
-#define HELP_WM_HELP 0x000c
-#define HELP_SETPOPUP_POS 0x000d
-
-#define HELP_TCARD 0x8000
-#define HELP_TCARD_DATA 0x0010
-#define HELP_TCARD_OTHER_CALLER 0x0011
-
-
-/* ExitWindows() flags */
-#define EW_RESTARTWINDOWS 0x0042
-#define EW_REBOOTSYSTEM 0x0043
-#define EW_EXITANDEXECAPP 0x0044
-
-/* ExitWindowsEx() flags */
-#define EWX_LOGOFF 0
-#define EWX_SHUTDOWN 1
-#define EWX_REBOOT 2
-#define EWX_FORCE 4
-#define EWX_POWEROFF 8
-
-
-#define DM_UPDATE 1
-#define DM_COPY 2
-#define DM_PROMPT 4
-#define DM_MODIFY 8
-
-#define DM_IN_BUFFER DM_MODIFY
-#define DM_IN_PROMPT DM_PROMPT
-#define DM_OUT_BUFFER DM_COPY
-#define DM_OUT_DEFAULT DM_UPDATE
-
-#define DM_ORIENTATION 0x00000001L
-#define DM_PAPERSIZE 0x00000002L
-#define DM_PAPERLENGTH 0x00000004L
-#define DM_PAPERWIDTH 0x00000008L
-#define DM_SCALE 0x00000010L
-#define DM_COPIES 0x00000100L
-#define DM_DEFAULTSOURCE 0x00000200L
-#define DM_PRINTQUALITY 0x00000400L
-#define DM_COLOR 0x00000800L
-#define DM_DUPLEX 0x00001000L
-#define DM_YRESOLUTION 0x00002000L
-#define DM_TTOPTION 0x00004000L
-#define DM_BITSPERPEL 0x00040000L
-#define DM_PELSWIDTH 0x00080000L
-#define DM_PELSHEIGHT 0x00100000L
-#define DM_DISPLAYFLAGS 0x00200000L
-#define DM_DISPLAYFREQUENCY 0x00400000L
-
-/* etc.... */
-
-#define DMORIENT_PORTRAIT 1
-#define DMORIENT_LANDSCAPE 2
-
-#define DMPAPER_LETTER 1
-#define DMPAPER_LEGAL 5
-#define DMPAPER_EXECUTIVE 7
-#define DMPAPER_A3 8
-#define DMPAPER_A4 9
-#define DMPAPER_A5 11
-#define DMPAPER_ENV_10 20
-#define DMPAPER_ENV_DL 27
-#define DMPAPER_ENV_C5 28
-#define DMPAPER_ENV_B5 34
-#define DMPAPER_ENV_MONARCH 37
-
-#define DMBIN_UPPER 1
-#define DMBIN_LOWER 2
-#define DMBIN_MIDDLE 3
-#define DMBIN_MANUAL 4
-#define DMBIN_ENVELOPE 5
-#define DMBIN_ENVMANUAL 6
-#define DMBIN_AUTO 7
-#define DMBIN_LARGECAPACITY 11
-
-#define DMCOLOR_MONOCHROME 1
-#define DMCOLOR_COLOR 2
-
-#define DMTT_BITMAP 1
-#define DMTT_DOWNLOAD 2
-#define DMTT_SUBDEV 3
-
-
-#define DC_FIELDS 1
-#define DC_PAPERS 2
-#define DC_PAPERSIZE 3
-#define DC_MINEXTENT 4
-#define DC_MAXEXTENT 5
-#define DC_BINS 6
-#define DC_DUPLEX 7
-#define DC_SIZE 8
-#define DC_EXTRA 9
-#define DC_VERSION 10
-#define DC_DRIVER 11
-#define DC_BINNAMES 12
-#define DC_ENUMRESOLUTIONS 13
-#define DC_FILEDEPENDENCIES 14
-#define DC_TRUETYPE 15
-#define DC_PAPERNAMES 16
-#define DC_ORIENTATION 17
-#define DC_COPIES 18
-
- /* ChangeDisplaySettings return codes */
-
-#define DISP_CHANGE_SUCCESSFUL 0
-#define DISP_CHANGE_RESTART 1
-#define DISP_CHANGE_FAILED (-1)
-#define DISP_CHANGE_BADMODE (-2)
-#define DISP_CHANGE_NOTUPDATED (-3)
-#define DISP_CHANGE_BADFLAGS (-4)
-
-
-typedef struct _SYSTEM_POWER_STATUS
-{
- BOOL16 ACLineStatus;
- BYTE BatteryFlag;
- BYTE BatteryLifePercent;
- BYTE reserved;
- DWORD BatteryLifeTime;
- DWORD BatteryFullLifeTime;
-} SYSTEM_POWER_STATUS, *LPSYSTEM_POWER_STATUS;
-
-/* flags to FormatMessage */
-#define FORMAT_MESSAGE_ALLOCATE_BUFFER 0x00000100
-#define FORMAT_MESSAGE_IGNORE_INSERTS 0x00000200
-#define FORMAT_MESSAGE_FROM_STRING 0x00000400
-#define FORMAT_MESSAGE_FROM_HMODULE 0x00000800
-#define FORMAT_MESSAGE_FROM_SYSTEM 0x00001000
-#define FORMAT_MESSAGE_ARGUMENT_ARRAY 0x00002000
-#define FORMAT_MESSAGE_MAX_WIDTH_MASK 0x000000FF
-
-/* types of LoadImage */
-#define IMAGE_BITMAP 0
-#define IMAGE_ICON 1
-#define IMAGE_CURSOR 2
-#define IMAGE_ENHMETA 3
-
-/* loadflags to LoadImage */
-#define LR_DEFAULTCOLOR 0x0000
-#define LR_MONOCHROME 0x0001
-#define LR_COLOR 0x0002
-#define LR_COPYRETURNORG 0x0004
-#define LR_COPYDELETEORG 0x0008
-#define LR_LOADFROMFILE 0x0010
-#define LR_LOADTRANSPARENT 0x0020
-#define LR_DEFAULTSIZE 0x0040
-#define LR_VGA_COLOR 0x0080
-#define LR_LOADMAP3DCOLORS 0x1000
-#define LR_CREATEDIBSECTION 0x2000
-#define LR_COPYFROMRESOURCE 0x4000
-#define LR_SHARED 0x8000
-
-/* Flags for PolyDraw and GetPath */
-#define PT_CLOSEFIGURE 0x0001
-#define PT_LINETO 0x0002
-#define PT_BEZIERTO 0x0004
-#define PT_MOVETO 0x0006
-
-typedef struct _LARGE_INTEGER
-{
- DWORD LowPart;
- LONG HighPart;
-} LARGE_INTEGER,*LPLARGE_INTEGER;
-
-typedef struct _ULARGE_INTEGER
-{
- DWORD LowPart;
- DWORD HighPart;
-} ULARGE_INTEGER,*LPULARGE_INTEGER;
-
-typedef LARGE_INTEGER LUID,*LPLUID; /* locally unique ids */
-
-/* SetLastErrorEx types */
-#define SLE_ERROR 0x00000001
-#define SLE_MINORERROR 0x00000002
-#define SLE_WARNING 0x00000003
-
-/* Argument 1 passed to the DllEntryProc. */
-#define DLL_PROCESS_DETACH 0 /* detach process (unload library) */
-#define DLL_PROCESS_ATTACH 1 /* attach process (load library) */
-#define DLL_THREAD_ATTACH 2 /* attach new thread */
-#define DLL_THREAD_DETACH 3 /* detach thread */
-
-typedef struct _MEMORY_BASIC_INFORMATION
-{
- LPVOID BaseAddress;
- LPVOID AllocationBase;
- DWORD AllocationProtect;
- DWORD RegionSize;
- DWORD State;
- DWORD Protect;
- DWORD Type;
-} MEMORY_BASIC_INFORMATION,*LPMEMORY_BASIC_INFORMATION;
-
-
-typedef BOOL32 (CALLBACK *CODEPAGE_ENUMPROC32A)(LPSTR);
-typedef BOOL32 (CALLBACK *CODEPAGE_ENUMPROC32W)(LPWSTR);
-DECL_WINELIB_TYPE_AW(CODEPAGE_ENUMPROC)
-typedef BOOL32 (CALLBACK *LOCALE_ENUMPROC32A)(LPSTR);
-typedef BOOL32 (CALLBACK *LOCALE_ENUMPROC32W)(LPWSTR);
-DECL_WINELIB_TYPE_AW(LOCALE_ENUMPROC)
-
-typedef struct tagSYSTEM_INFO
-{
- union {
- DWORD dwOemId;
- struct {
- WORD wProcessorArchitecture;
- WORD wReserved;
- } x;
- } u;
- DWORD dwPageSize;
- LPVOID lpMinimumApplicationAddress;
- LPVOID lpMaximumApplicationAddress;
- DWORD dwActiveProcessorMask;
- DWORD dwNumberOfProcessors;
- DWORD dwProcessorType;
- DWORD dwAllocationGranularity;
- WORD wProcessorLevel;
- WORD wProcessorRevision;
-} SYSTEM_INFO, *LPSYSTEM_INFO;
-
-/* u.x.wProcessorArchitecture (NT) */
-#define PROCESSOR_ARCHITECTURE_INTEL 0
-#define PROCESSOR_ARCHITECTURE_MIPS 1
-#define PROCESSOR_ARCHITECTURE_ALPHA 2
-#define PROCESSOR_ARCHITECTURE_PPC 3
-#define PROCESSOR_ARCHITECTURE_UNKNOWN 0xFFFF
-
-/* dwProcessorType */
-#define PROCESSOR_INTEL_386 386
-#define PROCESSOR_INTEL_486 486
-#define PROCESSOR_INTEL_PENTIUM 586
-#define PROCESSOR_MIPS_R4000 4000
-#define PROCESSOR_ALPHA_21064 21064
-
-/* service main function prototype */
-typedef VOID (CALLBACK *LPSERVICE_MAIN_FUNCTION32A)(DWORD,LPSTR);
-typedef VOID (CALLBACK *LPSERVICE_MAIN_FUNCTION32W)(DWORD,LPWSTR);
-DECL_WINELIB_TYPE_AW(LPSERVICE_MAIN_FUNCTION)
-
-/* service start table */
-typedef struct
-{
- LPSTR lpServiceName;
- LPSERVICE_MAIN_FUNCTION32A lpServiceProc;
-} *LPSERVICE_TABLE_ENTRY32A, SERVICE_TABLE_ENTRY32A;
-
-typedef struct
-{
- LPWSTR lpServiceName;
- LPSERVICE_MAIN_FUNCTION32W lpServiceProc;
-} *LPSERVICE_TABLE_ENTRY32W, SERVICE_TABLE_ENTRY32W;
-
-DECL_WINELIB_TYPE_AW(SERVICE_TABLE_ENTRY)
-DECL_WINELIB_TYPE_AW(LPSERVICE_TABLE_ENTRY)
-
-/* Used by: ControlService */
-typedef struct _SERVICE_STATUS {
- DWORD dwServiceType;
- DWORD dwCurrentState;
- DWORD dwControlsAccepted;
- DWORD dwWin32ExitCode;
- DWORD dwServiceSpecificExitCode;
- DWORD dwCheckPoint;
- DWORD dwWaitHint;
-} SERVICE_STATUS, *LPSERVICE_STATUS;
-
-
-/* {G,S}etPriorityClass */
-#define NORMAL_PRIORITY_CLASS 0x00000020
-#define IDLE_PRIORITY_CLASS 0x00000040
-#define HIGH_PRIORITY_CLASS 0x00000080
-#define REALTIME_PRIORITY_CLASS 0x00000100
-
-/* GDI Escape commands */
-#define NEWFRAME 1
-#define ABORTDOC 2
-#define NEXTBAND 3
-#define SETCOLORTABLE 4
-#define GETCOLORTABLE 5
-#define FLUSHOUTPUT 6
-#define DRAFTMODE 7
-#define QUERYESCSUPPORT 8
-#define SETABORTPROC 9
-#define STARTDOC 10
-#define ENDDOC 11
-#define GETPHYSPAGESIZE 12
-#define GETPRINTINGOFFSET 13
-#define GETSCALINGFACTOR 14
-#define MFCOMMENT 15
-#define GETPENWIDTH 16
-#define SETCOPYCOUNT 17
-#define SELECTPAPERSOURCE 18
-#define DEVICEDATA 19
-#define PASSTHROUGH 19
-#define GETTECHNOLGY 20
-#define GETTECHNOLOGY 20 /* yes, both of them */
-#define SETLINECAP 21
-#define SETLINEJOIN 22
-#define SETMITERLIMIT 23
-#define BANDINFO 24
-#define DRAWPATTERNRECT 25
-#define GETVECTORPENSIZE 26
-#define GETVECTORBRUSHSIZE 27
-#define ENABLEDUPLEX 28
-#define GETSETPAPERBINS 29
-#define GETSETPRINTORIENT 30
-#define ENUMPAPERBINS 31
-#define SETDIBSCALING 32
-#define EPSPRINTING 33
-#define ENUMPAPERMETRICS 34
-#define GETSETPAPERMETRICS 35
-#define POSTSCRIPT_DATA 37
-#define POSTSCRIPT_IGNORE 38
-#define MOUSETRAILS 39
-#define GETDEVICEUNITS 42
-
-#define GETEXTENDEDTEXTMETRICS 256
-#define GETEXTENTTABLE 257
-#define GETPAIRKERNTABLE 258
-#define GETTRACKKERNTABLE 259
-#define EXTTEXTOUT 512
-#define GETFACENAME 513
-#define DOWNLOADFACE 514
-#define ENABLERELATIVEWIDTHS 768
-#define ENABLEPAIRKERNING 769
-#define SETKERNTRACK 770
-#define SETALLJUSTVALUES 771
-#define SETCHARSET 772
-
-#define STRETCHBLT 2048
-#define GETSETSCREENPARAMS 3072
-#define QUERYDIBSUPPORT 3073
-#define BEGIN_PATH 4096
-#define CLIP_TO_PATH 4097
-#define END_PATH 4098
-#define EXT_DEVICE_CAPS 4099
-#define RESTORE_CTM 4100
-#define SAVE_CTM 4101
-#define SET_ARC_DIRECTION 4102
-#define SET_BACKGROUND_COLOR 4103
-#define SET_POLY_MODE 4104
-#define SET_SCREEN_ANGLE 4105
-#define SET_SPREAD 4106
-#define TRANSFORM_CTM 4107
-#define SET_CLIP_BOX 4108
-#define SET_BOUNDS 4109
-#define SET_MIRROR_MODE 4110
-#define OPENCHANNEL 4110
-#define DOWNLOADHEADER 4111
-#define CLOSECHANNEL 4112
-#define POSTSCRIPT_PASSTHROUGH 4115
-#define ENCAPSULATED_POSTSCRIPT 4116
-
-/* Flag returned from Escape QUERYDIBSUPPORT */
-#define QDI_SETDIBITS 1
-#define QDI_GETDIBITS 2
-#define QDI_DIBTOSCREEN 4
-#define QDI_STRETCHDIB 8
-
-/* Spooler Error Codes */
-#define SP_NOTREPORTED 0x4000
-#define SP_ERROR (-1)
-#define SP_APPABORT (-2)
-#define SP_USERABORT (-3)
-#define SP_OUTOFDISK (-4)
-#define SP_OUTOFMEMORY (-5)
-
-#define PR_JOBSTATUS 0x0000
-
-typedef BOOL32 (CALLBACK *ENUMRESTYPEPROC32A)(HMODULE32,LPSTR,LONG);
-typedef BOOL32 (CALLBACK *ENUMRESTYPEPROC32W)(HMODULE32,LPWSTR,LONG);
-typedef BOOL32 (CALLBACK *ENUMRESNAMEPROC32A)(HMODULE32,LPCSTR,LPSTR,LONG);
-typedef BOOL32 (CALLBACK *ENUMRESNAMEPROC32W)(HMODULE32,LPCWSTR,LPWSTR,LONG);
-typedef BOOL32 (CALLBACK *ENUMRESLANGPROC32A)(HMODULE32,LPCSTR,LPCSTR,WORD,LONG);
-typedef BOOL32 (CALLBACK *ENUMRESLANGPROC32W)(HMODULE32,LPCWSTR,LPCWSTR,WORD,LONG);
-
-DECL_WINELIB_TYPE_AW(ENUMRESTYPEPROC)
-DECL_WINELIB_TYPE_AW(ENUMRESNAMEPROC)
-DECL_WINELIB_TYPE_AW(ENUMRESLANGPROC)
-
-/* Character Type Flags */
-#define CT_CTYPE1 0x00000001 /* usual ctype */
-#define CT_CTYPE2 0x00000002 /* bidirectional layout info */
-#define CT_CTYPE3 0x00000004 /* textprocessing info */
-
-/* CType 1 Flag Bits */
-#define C1_UPPER 0x0001
-#define C1_LOWER 0x0002
-#define C1_DIGIT 0x0004
-#define C1_SPACE 0x0008
-#define C1_PUNCT 0x0010
-#define C1_CNTRL 0x0020
-#define C1_BLANK 0x0040
-#define C1_XDIGIT 0x0080
-#define C1_ALPHA 0x0100
-
-/* CType 2 Flag Bits */
-#define C2_LEFTTORIGHT 0x0001
-#define C2_RIGHTTOLEFT 0x0002
-#define C2_EUROPENUMBER 0x0003
-#define C2_EUROPESEPARATOR 0x0004
-#define C2_EUROPETERMINATOR 0x0005
-#define C2_ARABICNUMBER 0x0006
-#define C2_COMMONSEPARATOR 0x0007
-#define C2_BLOCKSEPARATOR 0x0008
-#define C2_SEGMENTSEPARATOR 0x0009
-#define C2_WHITESPACE 0x000A
-#define C2_OTHERNEUTRAL 0x000B
-#define C2_NOTAPPLICABLE 0x0000
-
-/* CType 3 Flag Bits */
-#define C3_NONSPACING 0x0001
-#define C3_DIACRITIC 0x0002
-#define C3_VOWELMARK 0x0004
-#define C3_SYMBOL 0x0008
-#define C3_KATAKANA 0x0010
-#define C3_HIRAGANA 0x0020
-#define C3_HALFWIDTH 0x0040
-#define C3_FULLWIDTH 0x0080
-#define C3_IDEOGRAPH 0x0100
-#define C3_KASHIDA 0x0200
-#define C3_LEXICAL 0x0400
-#define C3_ALPHA 0x8000
-#define C3_NOTAPPLICABLE 0x0000
-
-/* flags that can be passed to LoadLibraryEx */
-#define DONT_RESOLVE_DLL_REFERENCES 0x00000001
-#define LOAD_LIBRARY_AS_DATAFILE 0x00000002
-#define LOAD_WITH_ALTERED_SEARCH_PATH 0x00000008
-
-
-typedef struct {
- DWORD dwScope;
- DWORD dwType;
- DWORD dwDisplayType;
- DWORD dwUsage;
- LPSTR lpLocalName;
- LPSTR lpRemoteName;
- LPSTR lpComment ;
- LPSTR lpProvider;
-} NETRESOURCE32A,*LPNETRESOURCE32A;
-
-typedef struct {
- DWORD dwScope;
- DWORD dwType;
- DWORD dwDisplayType;
- DWORD dwUsage;
- LPWSTR lpLocalName;
- LPWSTR lpRemoteName;
- LPWSTR lpComment ;
- LPWSTR lpProvider;
-} NETRESOURCE32W,*LPNETRESOURCE32W;
-
-DECL_WINELIB_TYPE_AW(NETRESOURCE)
-DECL_WINELIB_TYPE_AW(LPNETRESOURCE)
-
-typedef struct {
- DWORD cbStructure; /* size of this structure in bytes */
- HWND32 hwndOwner; /* owner window for the dialog */
- LPNETRESOURCE32A lpConnRes;/* Requested Resource info */
- DWORD dwFlags; /* flags (see below) */
- DWORD dwDevNum; /* number of devices connected to */
-} CONNECTDLGSTRUCT32A, *LPCONNECTDLGSTRUCT32A;
-typedef struct {
- DWORD cbStructure; /* size of this structure in bytes */
- HWND32 hwndOwner; /* owner window for the dialog */
- LPNETRESOURCE32W lpConnRes;/* Requested Resource info */
- DWORD dwFlags; /* flags (see below) */
- DWORD dwDevNum; /* number of devices connected to */
-} CONNECTDLGSTRUCT32W, *LPCONNECTDLGSTRUCT32W;
-
-DECL_WINELIB_TYPE_AW(CONNECTDLGSTRUCT)
-DECL_WINELIB_TYPE_AW(LPCONNECTDLGSTRUCT)
-
-/**/
-#define CONNDLG_RO_PATH 0x00000001 /* Resource path should be read-only */
-#define CONNDLG_CONN_POINT 0x00000002 /* Netware -style movable connection point enabled */
-#define CONNDLG_USE_MRU 0x00000004 /* Use MRU combobox */
-#define CONNDLG_HIDE_BOX 0x00000008 /* Hide persistent connect checkbox */
-#define CONNDLG_PERSIST 0x00000010 /* Force persistent connection */
-#define CONNDLG_NOT_PERSIST 0x00000020 /* Force connection NOT persistent */
-
-
-typedef struct {
- DWORD cbStructure;
- DWORD dwFlags;
- DWORD dwSpeed;
- DWORD dwDelay;
- DWORD dwOptDataSize;
-} NETCONNECTINFOSTRUCT,*LPNETCONNECTINFOSTRUCT;
-
-
-typedef struct tagANIMATIONINFO
-{
- UINT32 cbSize;
- INT32 iMinAnimate;
-} ANIMATIONINFO, *LPANIMATIONINFO;
-
-typedef struct tagNMHDR
-{
- HWND32 hwndFrom;
- UINT32 idFrom;
- UINT32 code;
-} NMHDR, *LPNMHDR;
-
-typedef struct
-{
- UINT32 cbSize;
- INT32 iTabLength;
- INT32 iLeftMargin;
- INT32 iRightMargin;
- UINT32 uiLengthDrawn;
-} DRAWTEXTPARAMS,*LPDRAWTEXTPARAMS;
-
-/* ifdef _x86_ ... */
-typedef struct _LDT_ENTRY {
- WORD LimitLow;
- WORD BaseLow;
- union {
- struct {
- BYTE BaseMid;
- BYTE Flags1;/*Declare as bytes to avoid alignment problems */
- BYTE Flags2;
- BYTE BaseHi;
- } Bytes;
- struct {
- DWORD BaseMid : 8;
- DWORD Type : 5;
- DWORD Dpl : 2;
- DWORD Pres : 1;
- DWORD LimitHi : 4;
- DWORD Sys : 1;
- DWORD Reserved_0 : 1;
- DWORD Default_Big : 1;
- DWORD Granularity : 1;
- DWORD BaseHi : 8;
- } Bits;
- } HighWord;
-} LDT_ENTRY, *LPLDT_ENTRY;
-
-/* for WOWHandle{16,32} */
-typedef enum _WOW_HANDLE_TYPE { /* WOW */
- WOW_TYPE_HWND,
- WOW_TYPE_HMENU,
- WOW_TYPE_HDWP,
- WOW_TYPE_HDROP,
- WOW_TYPE_HDC,
- WOW_TYPE_HFONT,
- WOW_TYPE_HMETAFILE,
- WOW_TYPE_HRGN,
- WOW_TYPE_HBITMAP,
- WOW_TYPE_HBRUSH,
- WOW_TYPE_HPALETTE,
- WOW_TYPE_HPEN,
- WOW_TYPE_HACCEL,
- WOW_TYPE_HTASK,
- WOW_TYPE_FULLHWND
-} WOW_HANDLE_TYPE;
-
-/* WOWCallback16Ex defines */
-#define WCB16_MAX_CBARGS 16
-/* ... dwFlags */
-#define WCB16_PASCAL 0x0
-#define WCB16_CDECL 0x1
-
-typedef enum _GET_FILEEX_INFO_LEVELS {
- GetFileExInfoStandard
-} GET_FILEEX_INFO_LEVELS;
-
-typedef struct _WIN32_FILE_ATTRIBUTES_DATA {
- DWORD dwFileAttributes;
- FILETIME ftCreationTime;
- FILETIME ftLastAccessTime;
- FILETIME ftLastWriteTime;
- DWORD nFileSizeHigh;
- DWORD nFileSizeLow;
-} WIN32_FILE_ATTRIBUTE_DATA, *LPWIN32_FILE_ATTRIBUTE_DATA;
-
-typedef struct _DllVersionInfo {
- DWORD cbSize;
- DWORD dwMajorVersion;
- DWORD dwMinorVersion;
- DWORD dwBuildNumber;
- DWORD dwPlatformID;
-} DLLVERSIONINFO;
-
-typedef struct _SEGINFO {
- UINT16 offSegment;
- UINT16 cbSegment;
- UINT16 flags;
- UINT16 cbAlloc;
- HGLOBAL16 h;
- UINT16 alignShift;
- UINT16 reserved[2];
-} SEGINFO;
-
-typedef struct tagDLGTEMPLATE
-{
- DWORD style;
- DWORD dwExtendedStyle;
- WORD cdit;
- short x;
- short y;
- short cx;
- short cy;
-}DLGTEMPLATE, *LPDLGTEMPLATE;
-typedef const DLGTEMPLATE *LPCDLGTEMPLATE;
-/* Fixme: use this instaed of LPCVOID for CreateDialogIndirectParam and DialogBoxIndirectParam*/
-typedef struct tagDLGITEMTEMPLATE
-{
- DWORD style;
- DWORD dwExtendedStyle;
- WORD cdit;
- short x;
- short y;
- short cx;
- short cy;
- WORD id;
-}DLGITEMTEMPLATE, *LPDLGITEMTEMPLATE;
-typedef const DLGITEMTEMPLATE *LPCDLGITEMTEMPLATE;
-
-/*
- * This one seems to be a Win32 only definition. It also is defined with
- * WINAPI instead of CALLBACK in the windows headers.
- */
-typedef DWORD (WINAPI *LPPROGRESS_ROUTINE)(LARGE_INTEGER, LARGE_INTEGER, LARGE_INTEGER,
- LARGE_INTEGER, DWORD, DWORD, HANDLE32,
- HANDLE32, LPVOID);
-
-#pragma pack(4)
-
-/* Declarations for functions that exist only in Win16 */
-
-#ifdef __WINE__
-typedef VOID (*SYSTEMTIMERPROC)(WORD);
-
-WORD WINAPI AllocCStoDSAlias(WORD);
-WORD WINAPI AllocDStoCSAlias(WORD);
-HGLOBAL16 WINAPI AllocResource(HINSTANCE16,HRSRC16,DWORD);
-WORD WINAPI AllocSelector(WORD);
-WORD WINAPI AllocSelectorArray(WORD);
-WORD WINAPI CreateSystemTimer(WORD,SYSTEMTIMERPROC);
-VOID WINAPI DirectedYield(HTASK16);
-HGLOBAL16 WINAPI DirectResAlloc(HINSTANCE16,WORD,UINT16);
-VOID WINAPI DisableSystemTimers(void);
-VOID WINAPI EnableSystemTimers(void);
-HANDLE16 WINAPI FarGetOwner(HGLOBAL16);
-VOID WINAPI FarSetOwner(HGLOBAL16,HANDLE16);
-FARPROC16 WINAPI FileCDR(FARPROC16);
-WORD WINAPI FreeSelector(WORD);
-HANDLE16 WINAPI GetAtomHandle(ATOM);
-HANDLE16 WINAPI GetCodeHandle(FARPROC16);
-VOID WINAPI GetCodeInfo(FARPROC16,SEGINFO*);
-DWORD WINAPI GetCurrentPDB(void);
-HTASK16 WINAPI GetCurrentTask(void);
-SEGPTR WINAPI GetDOSEnvironment(void);
-HMODULE16 WINAPI GetExePtr(HANDLE16);
-WORD WINAPI GetExeVersion(void);
-WORD WINAPI GetExpWinVer(HMODULE16);
-DWORD WINAPI GetFileResourceSize(LPCSTR,SEGPTR,SEGPTR,LPDWORD);
-DWORD WINAPI GetFileResource(LPCSTR,SEGPTR,SEGPTR,DWORD,DWORD,LPVOID);
-DWORD WINAPI GetHeapSpaces(HMODULE16);
-INT16 WINAPI GetInstanceData(HINSTANCE16,WORD,INT16);
-BOOL16 WINAPI GetModuleName(HINSTANCE16,LPSTR,INT16);
-INT16 WINAPI GetModuleUsage(HINSTANCE16);
-UINT16 WINAPI GetNumTasks(void);
-DWORD WINAPI GetSelectorBase(WORD);
-DWORD WINAPI GetSelectorLimit(WORD);
-FARPROC16 WINAPI GetSetKernelDOSProc(FARPROC16 DosProc);
-HINSTANCE16 WINAPI GetTaskDS(void);
-HQUEUE16 WINAPI GetTaskQueue(HTASK16);
-BYTE WINAPI GetTempDrive(BYTE);
-BOOL16 WINAPI GetWinDebugInfo(LPWINDEBUGINFO,UINT16);
-DWORD WINAPI GetWinFlags(void);
-DWORD WINAPI GlobalDOSAlloc(DWORD);
-WORD WINAPI GlobalDOSFree(WORD);
-void WINAPI GlobalFreeAll(HGLOBAL16);
-DWORD WINAPI GlobalHandleNoRIP(WORD);
-HGLOBAL16 WINAPI GlobalLRUNewest(HGLOBAL16);
-HGLOBAL16 WINAPI GlobalLRUOldest(HGLOBAL16);
-VOID WINAPI GlobalNotify(FARPROC16);
-WORD WINAPI GlobalPageLock(HGLOBAL16);
-WORD WINAPI GlobalPageUnlock(HGLOBAL16);
-BOOL16 WINAPI IsSharedSelector(HANDLE16);
-BOOL16 WINAPI IsTask(HTASK16);
-HTASK16 WINAPI IsTaskLocked(void);
-VOID WINAPI LogError(UINT16, LPVOID);
-VOID WINAPI LogParamError(UINT16,FARPROC16,LPVOID);
-WORD WINAPI LocalCountFree(void);
-WORD WINAPI LocalHandleDelta(WORD);
-WORD WINAPI LocalHeapSize(void);
-BOOL16 WINAPI LocalInit(HANDLE16,WORD,WORD);
-HMODULE32 WINAPI LoadLibraryEx32W16(LPCSTR,HANDLE16,DWORD);
-FARPROC16 WINAPI LocalNotify(FARPROC16);
-HTASK16 WINAPI LockCurrentTask(BOOL16);
-VOID WINAPI OldYield(void);
-VOID WINAPI PostEvent(HTASK16);
-WORD WINAPI PrestoChangoSelector(WORD,WORD);
-BOOL32 WINAPI RegisterShellHook(HWND16,UINT16);
-/* NOTE: This is SYSTEM.3, not USER.182, which is also named KillSystemTimer */
-WORD WINAPI SYSTEM_KillSystemTimer( WORD );
-WORD WINAPI SelectorAccessRights(WORD,WORD,WORD);
-VOID WINAPI SetPriority(HTASK16,INT16);
-FARPROC16 WINAPI SetResourceHandler(HINSTANCE16,SEGPTR,FARPROC16);
-WORD WINAPI SetSelectorBase(WORD,DWORD);
-WORD WINAPI SetSelectorLimit(WORD,DWORD);
-HQUEUE16 WINAPI SetTaskQueue(HTASK16,HQUEUE16);
-FARPROC16 WINAPI SetTaskSignalProc(HTASK16,FARPROC16);
-BOOL16 WINAPI SetWinDebugInfo(LPWINDEBUGINFO);
-VOID WINAPI SwitchStackTo(WORD,WORD,WORD);
-BOOL16 WINAPI WaitEvent(HTASK16);
-VOID WINAPI WriteOutProfiles(VOID);
-VOID WINAPI hmemcpy(LPVOID,LPCVOID,LONG);
-#endif /* __WINE__ */
-
-/* Declarations for functions that exist only in Win32 */
-
-BOOL32 WINAPI AllocConsole(void);
-BOOL32 WINAPI AreFileApisANSI(void);
-BOOL32 WINAPI Beep(DWORD,DWORD);
-BOOL32 WINAPI CloseHandle(HANDLE32);
-BOOL32 WINAPI CloseServiceHandle(HANDLE32);
-HANDLE32 WINAPI ConvertToGlobalHandle(HANDLE32 hSrc);
-BOOL32 WINAPI CopyFile32A(LPCSTR,LPCSTR,BOOL32);
-BOOL32 WINAPI CopyFile32W(LPCWSTR,LPCWSTR,BOOL32);
-#define CopyFile WINELIB_NAME_AW(CopyFile)
-BOOL32 WINAPI CopyFileEx32A(LPCSTR, LPCSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL32, DWORD);
-BOOL32 WINAPI CopyFileEx32W(LPCWSTR, LPCWSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL32, DWORD);
-#define CopyFileEx WINELIB_NAME_AW(CopyFileEx)
-INT32 WINAPI CompareFileTime(LPFILETIME,LPFILETIME);
-BOOL32 WINAPI ControlService(HANDLE32,DWORD,LPSERVICE_STATUS);
-HANDLE32 WINAPI CreateEvent32A(LPSECURITY_ATTRIBUTES,BOOL32,BOOL32,LPCSTR);
-HANDLE32 WINAPI CreateEvent32W(LPSECURITY_ATTRIBUTES,BOOL32,BOOL32,LPCWSTR);
-#define CreateEvent WINELIB_NAME_AW(CreateEvent)
-HFILE32 WINAPI CreateFile32A(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,
- DWORD,DWORD,HANDLE32);
-HFILE32 WINAPI CreateFile32W(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,
- DWORD,DWORD,HANDLE32);
-#define CreateFile WINELIB_NAME_AW(CreateFile)
-HANDLE32 WINAPI CreateFileMapping32A(HANDLE32,LPSECURITY_ATTRIBUTES,DWORD,
- DWORD,DWORD,LPCSTR);
-HANDLE32 WINAPI CreateFileMapping32W(HANDLE32,LPSECURITY_ATTRIBUTES,DWORD,
- DWORD,DWORD,LPCWSTR);
-#define CreateFileMapping WINELIB_NAME_AW(CreateFileMapping)
-HANDLE32 WINAPI CreateMutex32A(LPSECURITY_ATTRIBUTES,BOOL32,LPCSTR);
-HANDLE32 WINAPI CreateMutex32W(LPSECURITY_ATTRIBUTES,BOOL32,LPCWSTR);
-#define CreateMutex WINELIB_NAME_AW(CreateMutex)
-BOOL32 WINAPI CreateProcess32A(LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,
- LPSECURITY_ATTRIBUTES,BOOL32,DWORD,LPVOID,LPCSTR,
- LPSTARTUPINFO32A,LPPROCESS_INFORMATION);
-BOOL32 WINAPI CreateProcess32W(LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,
- LPSECURITY_ATTRIBUTES,BOOL32,DWORD,LPVOID,LPCWSTR,
- LPSTARTUPINFO32W,LPPROCESS_INFORMATION);
-#define CreateProcess WINELIB_NAME_AW(CreateProcess)
-HANDLE32 WINAPI CreateSemaphore32A(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCSTR);
-HANDLE32 WINAPI CreateSemaphore32W(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR);
-#define CreateSemaphore WINELIB_NAME_AW(CreateSemaphore)
-HANDLE32 WINAPI CreateThread(LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD);
-BOOL32 WINAPI DeleteService(HANDLE32);
-BOOL32 WINAPI DeregisterEventSource(HANDLE32);
-BOOL32 WINAPI DisableThreadLibraryCalls(HMODULE32);
-BOOL32 WINAPI DosDateTimeToFileTime(WORD,WORD,LPFILETIME);
-BOOL32 WINAPI DuplicateHandle(HANDLE32,HANDLE32,HANDLE32,HANDLE32*,DWORD,BOOL32,DWORD);
-BOOL32 WINAPI EnumDateFormats32A(DATEFMT_ENUMPROC32A lpDateFmtEnumProc, LCID Locale, DWORD dwFlags);
-BOOL32 WINAPI EnumDateFormats32W(DATEFMT_ENUMPROC32W lpDateFmtEnumProc, LCID Locale, DWORD dwFlags);
-#define EnumDateFormats WINELIB_NAME_AW(EnumDateFormats)
-BOOL32 WINAPI EnumResourceLanguages32A(HMODULE32,LPCSTR,LPCSTR,
- ENUMRESLANGPROC32A,LONG);
-BOOL32 WINAPI EnumResourceLanguages32W(HMODULE32,LPCWSTR,LPCWSTR,
- ENUMRESLANGPROC32W,LONG);
-#define EnumResourceLanguages WINELIB_NAME_AW(EnumResourceLanguages)
-BOOL32 WINAPI EnumResourceNames32A(HMODULE32,LPCSTR,ENUMRESNAMEPROC32A,
- LONG);
-BOOL32 WINAPI EnumResourceNames32W(HMODULE32,LPCWSTR,ENUMRESNAMEPROC32W,
- LONG);
-#define EnumResourceNames WINELIB_NAME_AW(EnumResourceNames)
-BOOL32 WINAPI EnumResourceTypes32A(HMODULE32,ENUMRESTYPEPROC32A,LONG);
-BOOL32 WINAPI EnumResourceTypes32W(HMODULE32,ENUMRESTYPEPROC32W,LONG);
-#define EnumResourceTypes WINELIB_NAME_AW(EnumResourceTypes)
-BOOL32 WINAPI EnumSystemCodePages32A(CODEPAGE_ENUMPROC32A,DWORD);
-BOOL32 WINAPI EnumSystemCodePages32W(CODEPAGE_ENUMPROC32W,DWORD);
-#define EnumSystemCodePages WINELIB_NAME_AW(EnumSystemCodePages)
-BOOL32 WINAPI EnumSystemLocales32A(LOCALE_ENUMPROC32A,DWORD);
-BOOL32 WINAPI EnumSystemLocales32W(LOCALE_ENUMPROC32W,DWORD);
-#define EnumSystemLocales WINELIB_NAME_AW(EnumSystemLocales)
-BOOL32 WINAPI EnumTimeFormats32A(TIMEFMT_ENUMPROC32A lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags);
-BOOL32 WINAPI EnumTimeFormats32W(TIMEFMT_ENUMPROC32W lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags);
-#define EnumTimeFormats WINELIB_NAME_AW(EnumTimeFormats)
-VOID WINAPI ExitProcess(DWORD);
-VOID WINAPI ExitThread(DWORD);
-DWORD WINAPI ExpandEnvironmentStrings32A(LPCSTR,LPSTR,DWORD);
-DWORD WINAPI ExpandEnvironmentStrings32W(LPCWSTR,LPWSTR,DWORD);
-#define ExpandEnvironmentStrings WINELIB_NAME_AW(ExpandEnvironmentStrings)
-BOOL32 WINAPI FileTimeToDosDateTime(const FILETIME*,LPWORD,LPWORD);
-BOOL32 WINAPI FileTimeToLocalFileTime(const FILETIME*,LPFILETIME);
-BOOL32 WINAPI FileTimeToSystemTime(const FILETIME*,LPSYSTEMTIME);
-HANDLE32 WINAPI FindFirstChangeNotification32A(LPCSTR,BOOL32,DWORD);
-HANDLE32 WINAPI FindFirstChangeNotification32W(LPCWSTR,BOOL32,DWORD);
-#define FindFirstChangeNotification WINELIB_NAME_AW(FindFirstChangeNotification)
-BOOL32 WINAPI FindNextChangeNotification(HANDLE32);
-BOOL32 WINAPI FindCloseChangeNotification(HANDLE32);
-HRSRC32 WINAPI FindResourceEx32A(HMODULE32,LPCSTR,LPCSTR,WORD);
-HRSRC32 WINAPI FindResourceEx32W(HMODULE32,LPCWSTR,LPCWSTR,WORD);
-#define FindResourceEx WINELIB_NAME_AW(FindResourceEx)
-BOOL32 WINAPI FlushConsoleInputBuffer(HANDLE32);
-BOOL32 WINAPI FlushFileBuffers(HFILE32);
-BOOL32 WINAPI FlushViewOfFile(LPCVOID, DWORD);
-DWORD WINAPI FormatMessage32A(DWORD,LPCVOID,DWORD,DWORD,LPSTR,
- DWORD,LPDWORD);
-#define FormatMessage WINELIB_NAME_AW(FormatMessage)
-BOOL32 WINAPI FreeConsole(void);
-BOOL32 WINAPI FreeEnvironmentStrings32A(LPSTR);
-BOOL32 WINAPI FreeEnvironmentStrings32W(LPWSTR);
-#define FreeEnvironmentStrings WINELIB_NAME_AW(FreeEnvironmentStrings)
-UINT32 WINAPI GetACP(void);
-LPCSTR WINAPI GetCommandLine32A(void);
-LPCWSTR WINAPI GetCommandLine32W(void);
-#define GetCommandLine WINELIB_NAME_AW(GetCommandLine)
-BOOL32 WINAPI GetComputerName32A(LPSTR,LPDWORD);
-BOOL32 WINAPI GetComputerName32W(LPWSTR,LPDWORD);
-#define GetComputerName WINELIB_NAME_AW(GetComputerName)
-UINT32 WINAPI GetConsoleCP(void);
-BOOL32 WINAPI GetConsoleMode(HANDLE32,LPDWORD);
-UINT32 WINAPI GetConsoleOutputCP(void);
-DWORD WINAPI GetConsoleTitle32A(LPSTR,DWORD);
-DWORD WINAPI GetConsoleTitle32W(LPWSTR,DWORD);
-#define GetConsoleTitle WINELIB_NAME_AW(GetConsoleTitle)
-BOOL32 WINAPI GetCPInfo(UINT32,LPCPINFO);
-BOOL32 WINAPI GetCommMask(HANDLE32, LPDWORD);
-BOOL32 WINAPI GetCommModemStatus(HANDLE32, LPDWORD);
-HANDLE32 WINAPI GetCurrentProcess(void);
-DWORD WINAPI GetCurrentProcessId(void);
-HANDLE32 WINAPI GetCurrentThread(void);
-DWORD WINAPI GetCurrentThreadId(void);
-INT32 WINAPI GetDateFormat32A(LCID,DWORD,LPSYSTEMTIME,LPCSTR,LPSTR,INT32);
-INT32 WINAPI GetDateFormat32W(LCID,DWORD,LPSYSTEMTIME,LPCWSTR,LPWSTR,INT32);
-#define GetDateFormat WINELIB_NAME_AW(GetDateFormat)
-LPSTR WINAPI GetEnvironmentStrings32A(void);
-LPWSTR WINAPI GetEnvironmentStrings32W(void);
-#define GetEnvironmentStrings WINELIB_NAME_AW(GetEnvironmentStrings)
-DWORD WINAPI GetEnvironmentVariable32A(LPCSTR,LPSTR,DWORD);
-DWORD WINAPI GetEnvironmentVariable32W(LPCWSTR,LPWSTR,DWORD);
-#define GetEnvironmentVariable WINELIB_NAME_AW(GetEnvironmentVariable)
-BOOL32 WINAPI GetFileAttributesEx32A(LPCSTR,GET_FILEEX_INFO_LEVELS,LPVOID);
-BOOL32 WINAPI GetFileAttributesEx32W(LPCWSTR,GET_FILEEX_INFO_LEVELS,LPVOID);
-#define GetFileattributesEx WINELIB_NAME_AW(GetFileAttributesEx)
-DWORD WINAPI GetFileInformationByHandle(HFILE32,BY_HANDLE_FILE_INFORMATION*);
-BOOL32 WINAPI GetFileSecurity32A(LPCSTR,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR,DWORD,LPDWORD);
-BOOL32 WINAPI GetFileSecurity32W(LPCWSTR,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR,DWORD,LPDWORD);
-#define GetFileSecurity WINELIB_NAME_AW(GetFileSecurity)
-DWORD WINAPI GetFileSize(HFILE32,LPDWORD);
-BOOL32 WINAPI GetFileTime(HFILE32,LPFILETIME,LPFILETIME,LPFILETIME);
-DWORD WINAPI GetFileType(HFILE32);
-DWORD WINAPI GetFullPathName32A(LPCSTR,DWORD,LPSTR,LPSTR*);
-DWORD WINAPI GetFullPathName32W(LPCWSTR,DWORD,LPWSTR,LPWSTR*);
-#define GetFullPathName WINELIB_NAME_AW(GetFullPathName)
-BOOL32 WINAPI GetHandleInformation(HANDLE32,LPDWORD);
-DWORD WINAPI GetLargestConsoleWindowSize(HANDLE32);
-VOID WINAPI GetLocalTime(LPSYSTEMTIME);
-DWORD WINAPI GetLogicalDrives(void);
-DWORD WINAPI GetLongPathName32A(LPCSTR,LPSTR,DWORD);
-DWORD WINAPI GetLongPathName32W(LPCWSTR,LPWSTR,DWORD);
-#define GetLongPathName WINELIB_NAME_AW(GetLongPathName)
-BOOL32 WINAPI GetNumberOfConsoleInputEvents(HANDLE32,LPDWORD);
-BOOL32 WINAPI GetNumberOfConsoleMouseButtons(LPDWORD);
-UINT32 WINAPI GetOEMCP(void);
-DWORD WINAPI GetPriorityClass(HANDLE32);
-HANDLE32 WINAPI GetProcessHeap(void);
-DWORD WINAPI GetProcessVersion(DWORD);
-DWORD WINAPI GetShortPathName32A(LPCSTR,LPSTR,DWORD);
-DWORD WINAPI GetShortPathName32W(LPCWSTR,LPWSTR,DWORD);
-#define GetShortPathName WINELIB_NAME_AW(GetShortPathName)
-HFILE32 WINAPI GetStdHandle(DWORD);
-BOOL32 WINAPI GetStringTypeEx32A(LCID,DWORD,LPCSTR,INT32,LPWORD);
-BOOL32 WINAPI GetStringTypeEx32W(LCID,DWORD,LPCWSTR,INT32,LPWORD);
-#define GetStringTypeEx WINELIB_NAME_AW(GetStringTypeEx)
-VOID WINAPI GetSystemInfo(LPSYSTEM_INFO);
-BOOL32 WINAPI GetSystemPowerStatus(LPSYSTEM_POWER_STATUS);
-VOID WINAPI GetSystemTime(LPSYSTEMTIME);
-INT32 WINAPI GetTimeFormat32A(LCID,DWORD,LPSYSTEMTIME,LPCSTR,LPSTR,INT32);
-INT32 WINAPI GetTimeFormat32W(LCID,DWORD,LPSYSTEMTIME,LPCWSTR,LPWSTR,INT32);
-#define GetTimeFormat WINELIB_NAME_AW(GetTimeFormat)
-LCID WINAPI GetThreadLocale(void);
-INT32 WINAPI GetThreadPriority(HANDLE32);
-BOOL32 WINAPI GetThreadSelectorEntry(HANDLE32,DWORD,LPLDT_ENTRY);
-BOOL32 WINAPI GetUserName32A(LPSTR,LPDWORD);
-BOOL32 WINAPI GetUserName32W(LPWSTR,LPDWORD);
-#define GetUserName WINELIB_NAME_AW(GetUserName)
-VOID WINAPI GlobalMemoryStatus(LPMEMORYSTATUS);
-LPVOID WINAPI HeapAlloc(HANDLE32,DWORD,DWORD);
-DWORD WINAPI HeapCompact(HANDLE32,DWORD);
-HANDLE32 WINAPI HeapCreate(DWORD,DWORD,DWORD);
-BOOL32 WINAPI HeapDestroy(HANDLE32);
-BOOL32 WINAPI HeapFree(HANDLE32,DWORD,LPVOID);
-BOOL32 WINAPI HeapLock(HANDLE32);
-LPVOID WINAPI HeapReAlloc(HANDLE32,DWORD,LPVOID,DWORD);
-DWORD WINAPI HeapSize(HANDLE32,DWORD,LPVOID);
-BOOL32 WINAPI HeapUnlock(HANDLE32);
-BOOL32 WINAPI HeapValidate(HANDLE32,DWORD,LPCVOID);
-LONG WINAPI InterlockedDecrement(LPLONG);
-LONG WINAPI InterlockedExchange(LPLONG,LONG);
-LONG WINAPI InterlockedIncrement(LPLONG);
-BOOL32 WINAPI IsDBCSLeadByteEx(UINT32,BYTE);
-BOOL32 WINAPI IsProcessorFeaturePresent(DWORD);
-BOOL32 WINAPI IsValidLocale(DWORD,DWORD);
-BOOL32 WINAPI LocalFileTimeToFileTime(const FILETIME*,LPFILETIME);
-BOOL32 WINAPI LockFile(HFILE32,DWORD,DWORD,DWORD,DWORD);
-BOOL32 WINAPI LookupPrivilegeValue32A(LPCSTR,LPCSTR,LPVOID);
-BOOL32 WINAPI LookupPrivilegeValue32W(LPCWSTR,LPCWSTR,LPVOID);
-#define LookupPrivilegeValue WINELIB_NAME_AW(LookupPrivilegeValue)
-HMODULE32 WINAPI MapHModuleSL(HMODULE16);
-HMODULE16 WINAPI MapHModuleLS(HMODULE32);
-SEGPTR WINAPI MapLS(LPVOID);
-LPVOID WINAPI MapSL(SEGPTR);
-LPVOID WINAPI MapViewOfFile(HANDLE32,DWORD,DWORD,DWORD,DWORD);
-LPVOID WINAPI MapViewOfFileEx(HANDLE32,DWORD,DWORD,DWORD,DWORD,LPVOID);
-BOOL32 WINAPI MoveFile32A(LPCSTR,LPCSTR);
-BOOL32 WINAPI MoveFile32W(LPCWSTR,LPCWSTR);
-#define MoveFile WINELIB_NAME_AW(MoveFile)
-BOOL32 WINAPI MoveFileEx32A(LPCSTR,LPCSTR,DWORD);
-BOOL32 WINAPI MoveFileEx32W(LPCWSTR,LPCWSTR,DWORD);
-#define MoveFileEx WINELIB_NAME_AW(MoveFileEx)
-INT32 WINAPI MultiByteToWideChar(UINT32,DWORD,LPCSTR,INT32,LPWSTR,INT32);
-INT32 WINAPI WideCharToMultiByte(UINT32,DWORD,LPCWSTR,INT32,LPSTR,INT32,LPCSTR,BOOL32*);
-HANDLE32 WINAPI OpenEvent32A(DWORD,BOOL32,LPCSTR);
-HANDLE32 WINAPI OpenEvent32W(DWORD,BOOL32,LPCWSTR);
-#define OpenEvent WINELIB_NAME_AW(OpenEvent)
-HANDLE32 WINAPI OpenFileMapping32A(DWORD,BOOL32,LPCSTR);
-HANDLE32 WINAPI OpenFileMapping32W(DWORD,BOOL32,LPCWSTR);
-#define OpenFileMapping WINELIB_NAME_AW(OpenFileMapping)
-HANDLE32 WINAPI OpenMutex32A(DWORD,BOOL32,LPCSTR);
-HANDLE32 WINAPI OpenMutex32W(DWORD,BOOL32,LPCWSTR);
-#define OpenMutex WINELIB_NAME_AW(OpenMutex)
-HANDLE32 WINAPI OpenProcess(DWORD,BOOL32,DWORD);
-BOOL32 WINAPI OpenProcessToken(HANDLE32,DWORD,HANDLE32*);
-HANDLE32 WINAPI OpenSCManager32A(LPCSTR,LPCSTR,DWORD);
-HANDLE32 WINAPI OpenSCManager32W(LPCWSTR,LPCWSTR,DWORD);
-#define OpenSCManager WINELIB_NAME_AW(OpenSCManager)
-HANDLE32 WINAPI OpenSemaphore32A(DWORD,BOOL32,LPCSTR);
-HANDLE32 WINAPI OpenSemaphore32W(DWORD,BOOL32,LPCWSTR);
-#define OpenSemaphore WINELIB_NAME_AW(OpenSemaphore)
-HANDLE32 WINAPI OpenService32A(HANDLE32,LPCSTR,DWORD);
-HANDLE32 WINAPI OpenService32W(HANDLE32,LPCWSTR,DWORD);
-#define OpenService WINELIB_NAME_AW(OpenService)
-BOOL32 WINAPI PulseEvent(HANDLE32);
-BOOL32 WINAPI PurgeComm(HANDLE32,DWORD);
-DWORD WINAPI QueryDosDevice32A(LPCSTR,LPSTR,DWORD);
-DWORD WINAPI QueryDosDevice32W(LPCWSTR,LPWSTR,DWORD);
-#define QueryDosDevice WINELIB_NAME_AW(QueryDosDevice)
-BOOL32 WINAPI QueryPerformanceCounter(LPLARGE_INTEGER);
-BOOL32 WINAPI ReadConsole32A(HANDLE32,LPVOID,DWORD,LPDWORD,LPVOID);
-BOOL32 WINAPI ReadConsole32W(HANDLE32,LPVOID,DWORD,LPDWORD,LPVOID);
-#define ReadConsole WINELIB_NAME_AW(ReadConsole)
-BOOL32 WINAPI ReadConsoleOutputCharacter32A(HANDLE32,LPSTR,DWORD,
- COORD,LPDWORD);
-#define ReadConsoleOutputCharacter WINELIB_NAME_AW(ReadConsoleOutputCharacter)
-BOOL32 WINAPI ReadFile(HANDLE32,LPVOID,DWORD,LPDWORD,LPOVERLAPPED);
-LONG WINAPI RegConnectRegistry32A(LPCSTR,HKEY,LPHKEY);
-LONG WINAPI RegConnectRegistry32W(LPCWSTR,HKEY,LPHKEY);
-#define RegConnectRegistry WINELIB_NAME_AW(RegConnectRegistry)
-DWORD WINAPI RegCreateKeyEx32A(HKEY,LPCSTR,DWORD,LPSTR,DWORD,REGSAM,
- LPSECURITY_ATTRIBUTES,LPHKEY,LPDWORD);
-DWORD WINAPI RegCreateKeyEx32W(HKEY,LPCWSTR,DWORD,LPWSTR,DWORD,REGSAM,
- LPSECURITY_ATTRIBUTES,LPHKEY,LPDWORD);
-#define RegCreateKeyEx WINELIB_NAME_AW(RegCreateKeyEx)
-DWORD WINAPI RegEnumKeyEx32A(HKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPSTR,
- LPDWORD,LPFILETIME);
-DWORD WINAPI RegEnumKeyEx32W(HKEY,DWORD,LPWSTR,LPDWORD,LPDWORD,LPWSTR,
- LPDWORD,LPFILETIME);
-#define RegEnumKeyEx WINELIB_NAME_AW(RegEnumKeyEx)
-LONG WINAPI RegGetKeySecurity(HKEY,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR,LPDWORD);
-HANDLE32 WINAPI RegisterEventSource32A(LPCSTR,LPCSTR);
-HANDLE32 WINAPI RegisterEventSource32W(LPCWSTR,LPCWSTR);
-#define RegisterEventSource WINELIB_NAME_AW(RegisterEventSource)
-LONG WINAPI RegLoadKey32A(HKEY,LPCSTR,LPCSTR);
-LONG WINAPI RegLoadKey32W(HKEY,LPCWSTR,LPCWSTR);
-#define RegLoadKey WINELIB_NAME_AW(RegLoadKey)
-LONG WINAPI RegNotifyChangeKeyValue(HKEY,BOOL32,DWORD,HANDLE32,BOOL32);
-DWORD WINAPI RegOpenKeyEx32W(HKEY,LPCWSTR,DWORD,REGSAM,LPHKEY);
-DWORD WINAPI RegOpenKeyEx32A(HKEY,LPCSTR,DWORD,REGSAM,LPHKEY);
-#define RegOpenKeyEx WINELIB_NAME_AW(RegOpenKeyEx)
-DWORD WINAPI RegQueryInfoKey32W(HKEY,LPWSTR,LPDWORD,LPDWORD,LPDWORD,
- LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,
- LPDWORD,LPFILETIME);
-DWORD WINAPI RegQueryInfoKey32A(HKEY,LPSTR,LPDWORD,LPDWORD,LPDWORD,
- LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,
- LPDWORD,LPFILETIME);
-#define RegQueryInfoKey WINELIB_NAME_AW(RegQueryInfoKey)
-LONG WINAPI RegReplaceKey32A(HKEY,LPCSTR,LPCSTR,LPCSTR);
-LONG WINAPI RegReplaceKey32W(HKEY,LPCWSTR,LPCWSTR,LPCWSTR);
-#define RegReplaceKey WINELIB_NAME_AW(RegReplaceKey)
-LONG WINAPI RegRestoreKey32A(HKEY,LPCSTR,DWORD);
-LONG WINAPI RegRestoreKey32W(HKEY,LPCWSTR,DWORD);
-#define RegRestoreKey WINELIB_NAME_AW(RegRestoreKey)
-LONG WINAPI RegSaveKey32A(HKEY,LPCSTR,LPSECURITY_ATTRIBUTES);
-LONG WINAPI RegSaveKey32W(HKEY,LPCWSTR,LPSECURITY_ATTRIBUTES);
-#define RegSaveKey WINELIB_NAME_AW(RegSaveKey)
-LONG WINAPI RegSetKeySecurity(HKEY,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR);
-LONG WINAPI RegUnLoadKey32A(HKEY,LPCSTR);
-LONG WINAPI RegUnLoadKey32W(HKEY,LPCWSTR);
-#define RegUnLoadKey WINELIB_NAME_AW(RegUnLoadKey)
-BOOL32 WINAPI ReleaseMutex(HANDLE32);
-BOOL32 WINAPI ReleaseSemaphore(HANDLE32,LONG,LPLONG);
-BOOL32 WINAPI ResetEvent(HANDLE32);
-DWORD WINAPI ResumeThread(HANDLE32);
-VOID WINAPI RtlFillMemory(LPVOID,UINT32,UINT32);
-VOID WINAPI RtlMoveMemory(LPVOID,LPCVOID,UINT32);
-VOID WINAPI RtlZeroMemory(LPVOID,UINT32);
-DWORD WINAPI SearchPath32A(LPCSTR,LPCSTR,LPCSTR,DWORD,LPSTR,LPSTR*);
-DWORD WINAPI SearchPath32W(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPWSTR,LPWSTR*);
-#define SearchPath WINELIB_NAME(SearchPath)
-BOOL32 WINAPI SetCommMask(INT32,DWORD);
-BOOL32 WINAPI SetComputerName32A(LPCSTR);
-BOOL32 WINAPI SetComputerName32W(LPCWSTR);
-#define SetComputerName WINELIB_NAME_AW(SetComputerName)
-BOOL32 WINAPI SetConsoleCursorPosition(HANDLE32,COORD);
-BOOL32 WINAPI SetConsoleMode(HANDLE32,DWORD);
-BOOL32 WINAPI SetConsoleTitle32A(LPCSTR);
-BOOL32 WINAPI SetConsoleTitle32W(LPCWSTR);
-#define SetConsoleTitle WINELIB_NAME_AW(SetConsoleTitle)
-BOOL32 WINAPI SetEndOfFile(HFILE32);
-BOOL32 WINAPI SetEnvironmentVariable32A(LPCSTR,LPCSTR);
-BOOL32 WINAPI SetEnvironmentVariable32W(LPCWSTR,LPCWSTR);
-#define SetEnvironmentVariable WINELIB_NAME_AW(SetEnvironmentVariable)
-BOOL32 WINAPI SetEvent(HANDLE32);
-VOID WINAPI SetFileApisToANSI(void);
-VOID WINAPI SetFileApisToOEM(void);
-DWORD WINAPI SetFilePointer(HFILE32,LONG,LPLONG,DWORD);
-BOOL32 WINAPI SetFileSecurity32A(LPCSTR,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR);
-BOOL32 WINAPI SetFileSecurity32W(LPCWSTR,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR);
-#define SetFileSecurity WINELIB_NAME_AW(SetFileSecurity)
-BOOL32 WINAPI SetFileTime(HFILE32,const FILETIME*,const FILETIME*,
- const FILETIME*);
-BOOL32 WINAPI SetHandleInformation(HANDLE32,DWORD,DWORD);
-BOOL32 WINAPI SetPriorityClass(HANDLE32,DWORD);
-BOOL32 WINAPI SetStdHandle(DWORD,HANDLE32);
-BOOL32 WINAPI SetSystemPowerState(BOOL32,BOOL32);
-BOOL32 WINAPI SetSystemTime(const SYSTEMTIME*);
-DWORD WINAPI SetThreadAffinityMask(HANDLE32,DWORD);
-BOOL32 WINAPI SetThreadLocale(LCID);
-BOOL32 WINAPI SetThreadPriority(HANDLE32,INT32);
-BOOL32 WINAPI SetTimeZoneInformation(const LPTIME_ZONE_INFORMATION);
-VOID WINAPI Sleep(DWORD);
-DWORD WINAPI SleepEx(DWORD,BOOL32);
-BOOL32 WINAPI StartService32A(HANDLE32,DWORD,LPCSTR*);
-BOOL32 WINAPI StartService32W(HANDLE32,DWORD,LPCWSTR*);
-#define StartService WINELIB_NAME_AW(StartService)
-DWORD WINAPI SuspendThread(HANDLE32);
-BOOL32 WINAPI SystemTimeToFileTime(const SYSTEMTIME*,LPFILETIME);
-DWORD WINAPI TlsAlloc(void);
-BOOL32 WINAPI TlsFree(DWORD);
-LPVOID WINAPI TlsGetValue(DWORD);
-BOOL32 WINAPI TlsSetValue(DWORD,LPVOID);
-VOID WINAPI UnMapLS(SEGPTR);
-BOOL32 WINAPI UnlockFile(HFILE32,DWORD,DWORD,DWORD,DWORD);
-BOOL32 WINAPI UnmapViewOfFile(LPVOID);
-LPVOID WINAPI VirtualAlloc(LPVOID,DWORD,DWORD,DWORD);
-BOOL32 WINAPI VirtualFree(LPVOID,DWORD,DWORD);
-BOOL32 WINAPI VirtualLock(LPVOID,DWORD);
-BOOL32 WINAPI VirtualProtect(LPVOID,DWORD,DWORD,LPDWORD);
-BOOL32 WINAPI VirtualProtectEx(HANDLE32,LPVOID,DWORD,DWORD,LPDWORD);
-DWORD WINAPI VirtualQuery(LPCVOID,LPMEMORY_BASIC_INFORMATION,DWORD);
-DWORD WINAPI VirtualQueryEx(HANDLE32,LPCVOID,LPMEMORY_BASIC_INFORMATION,DWORD);
-BOOL32 WINAPI VirtualUnlock(LPVOID,DWORD);
-BOOL32 WINAPI WaitCommEvent(HANDLE32,LPDWORD,LPOVERLAPPED);
-BOOL32 WINAPI WaitForDebugEvent(LPDEBUG_EVENT,DWORD);
-DWORD WINAPI WaitForMultipleObjects(DWORD,const HANDLE32*,BOOL32,DWORD);
-DWORD WINAPI WaitForMultipleObjectsEx(DWORD,const HANDLE32*,BOOL32,DWORD,BOOL32);
-DWORD WINAPI WaitForSingleObject(HANDLE32,DWORD);
-DWORD WINAPI WaitForSingleObjectEx(HANDLE32,DWORD,BOOL32);
-UINT32 WINAPI WNetAddConnection2_32A(LPNETRESOURCE32A,LPCSTR,LPCSTR,DWORD);
-UINT32 WINAPI WNetAddConnection2_32W(LPNETRESOURCE32W,LPCWSTR,LPCWSTR,DWORD);
-#define WNetAddConnection2 WINELIB_NAME_AW(WNetAddConnection2_)
-UINT32 WINAPI WNetAddConnection3_32A(HWND32,LPNETRESOURCE32A,LPCSTR,LPCSTR,DWORD);
-UINT32 WINAPI WNetAddConnection3_32W(HWND32,LPNETRESOURCE32W,LPCWSTR,LPCWSTR,DWORD);
-#define WNetAddConnection3 WINELIB_NAME_AW(WNetAddConnection3_)
-UINT32 WINAPI WNetConnectionDialog1_32(HWND32,DWORD);
-UINT32 WINAPI WNetConnectionDialog1_32A(LPCONNECTDLGSTRUCT32A);
-UINT32 WINAPI WNetConnectionDialog1_32W(LPCONNECTDLGSTRUCT32W);
-#define WNetConnectionDialog1 WINELIB_NAME_AW(WNetConnectionDialog1_)
-UINT32 WINAPI MultinetGetErrorText32A(DWORD,DWORD,DWORD);
-UINT32 WINAPI MultinetGetErrorText32W(DWORD,DWORD,DWORD);
-#define MultinetGetErrorText WINELIB_NAME_AW(MultinetGetErrorText_)
-SEGPTR WINAPI WOWGlobalAllocLock16(DWORD,DWORD,HGLOBAL16*);
-DWORD WINAPI WOWCallback16(FARPROC16,DWORD);
-BOOL32 WINAPI WOWCallback16Ex(FARPROC16,DWORD,DWORD,LPVOID,LPDWORD);
-HANDLE32 WINAPI WOWHandle32(WORD,WOW_HANDLE_TYPE);
-WORD WINAPI WOWHandle16(HANDLE32,WOW_HANDLE_TYPE);
-BOOL32 WINAPI WriteConsole32A(HANDLE32,LPCVOID,DWORD,LPDWORD,LPVOID);
-BOOL32 WINAPI WriteConsole32W(HANDLE32,LPCVOID,DWORD,LPDWORD,LPVOID);
-#define WriteConsole WINELIB_NAME_AW(WriteConsole)
-BOOL32 WINAPI WriteFile(HANDLE32,LPCVOID,DWORD,LPDWORD,LPOVERLAPPED);
-VOID WINAPI ZeroMemory(LPVOID,UINT32);
-#define ZeroMemory RtlZeroMemory
-
-/* Declarations for functions that are the same in Win16 and Win32 */
-
-VOID WINAPI CloseSound(VOID);
-DWORD WINAPI GetLastError(void);
-LANGID WINAPI GetSystemDefaultLangID(void);
-LCID WINAPI GetSystemDefaultLCID(void);
-LANGID WINAPI GetUserDefaultLangID(void);
-LCID WINAPI GetUserDefaultLCID(void);
-VOID WINAPI LZDone(void);
-VOID WINAPI ScreenSwitchEnable(WORD);
-DWORD WINAPI RegCloseKey(HKEY);
-DWORD WINAPI RegFlushKey(HKEY);
-VOID WINAPI SetLastError(DWORD);
-
-
-/* Declarations for functions that change between Win16 and Win32 */
-
-BOOL16 WINAPI AboutDlgProc16(HWND16,UINT16,WPARAM16,LPARAM);
-BOOL32 WINAPI AboutDlgProc32(HWND32,UINT32,WPARAM32,LPARAM);
-#define AboutDlgProc WINELIB_NAME(AboutDlgProc)
-INT16 WINAPI AccessResource16(HINSTANCE16,HRSRC16);
-INT32 WINAPI AccessResource32(HMODULE32,HRSRC32);
-#define AccessResource WINELIB_NAME(AccessResource)
-ATOM WINAPI AddAtom16(SEGPTR);
-ATOM WINAPI AddAtom32A(LPCSTR);
-ATOM WINAPI AddAtom32W(LPCWSTR);
-#define AddAtom WINELIB_NAME_AW(AddAtom)
-INT16 WINAPI AnsiToOem16(LPCSTR,LPSTR);
-#define AnsiToOem32A CharToOem32A
-#define AnsiToOem32W CharToOem32W
-#define AnsiToOem WINELIB_NAME_AW(AnsiToOem)
-VOID WINAPI AnsiToOemBuff16(LPCSTR,LPSTR,UINT16);
-#define AnsiToOemBuff32A CharToOemBuff32A
-#define AnsiToOemBuff32W CharToOemBuff32W
-#define AnsiToOemBuff WINELIB_NAME_AW(AnsiToOemBuff)
BOOL16 WINAPI CheckMenuRadioButton16(HMENU16,UINT16,UINT16,UINT16,BOOL16);
BOOL32 WINAPI CheckMenuRadioButton32(HMENU32,UINT32,UINT32,UINT32,BOOL32);
#define CheckMenuRadioButton WINELIB_NAME(CheckMenuRadioButton)
-UINT16 WINAPI CompareString16(DWORD,DWORD,LPCSTR,DWORD,LPCSTR,DWORD);
-UINT32 WINAPI CompareString32A(DWORD,DWORD,LPCSTR,DWORD,LPCSTR,DWORD);
-UINT32 WINAPI CompareString32W(DWORD,DWORD,LPCWSTR,DWORD,LPCWSTR,DWORD);
-#define CompareString WINELIB_NAME_AW(CompareString)
-LONG WINAPI CopyLZFile16(HFILE16,HFILE16);
-LONG WINAPI CopyLZFile32(HFILE32,HFILE32);
-#define CopyLZFile WINELIB_NAME(CopyLZFile)
-INT16 WINAPI CountVoiceNotes16(INT16);
-DWORD WINAPI CountVoiceNotes32(DWORD);
-#define CountVoiceNotes WINELIB_NAME(CountVoiceNotes)
-BOOL16 WINAPI CreateDirectory16(LPCSTR,LPVOID);
-BOOL32 WINAPI CreateDirectory32A(LPCSTR,LPSECURITY_ATTRIBUTES);
-BOOL32 WINAPI CreateDirectory32W(LPCWSTR,LPSECURITY_ATTRIBUTES);
-#define CreateDirectory WINELIB_NAME_AW(CreateDirectory)
-BOOL32 WINAPI CreateDirectoryEx32A(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES);
-BOOL32 WINAPI CreateDirectoryEx32W(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES);
-#define CreateDirectoryEx WINELIB_NAME_AW(CreateDirectoryEx)
-BOOL16 WINAPI DefineHandleTable16(WORD);
-#define DefineHandleTable32(w) ((w),TRUE)
-#define DefineHandleTable WINELIB_NAME(DefineHandleTable)
-ATOM WINAPI DeleteAtom16(ATOM);
-ATOM WINAPI DeleteAtom32(ATOM);
-#define DeleteAtom WINELIB_NAME(DeleteAtom)
-BOOL16 WINAPI DeleteFile16(LPCSTR);
-BOOL32 WINAPI DeleteFile32A(LPCSTR);
-BOOL32 WINAPI DeleteFile32W(LPCWSTR);
-#define DeleteFile WINELIB_NAME_AW(DeleteFile)
-BOOL16 WINAPI EnumTaskWindows16(HTASK16,WNDENUMPROC16,LPARAM);
-#define EnumTaskWindows32(handle,proc,lparam) \
- EnumThreadWindows(handle,proc,lparam)
-#define EnumTaskWindows WINELIB_NAME(EnumTaskWindows)
-HICON16 WINAPI ExtractIcon16(HINSTANCE16,LPCSTR,UINT16);
-HICON32 WINAPI ExtractIcon32A(HINSTANCE32,LPCSTR,UINT32);
-HICON32 WINAPI ExtractIcon32W(HINSTANCE32,LPCWSTR,UINT32);
-#define ExtractIcon WINELIB_NAME_AW(ExtractIcon)
-HICON16 WINAPI ExtractAssociatedIcon16(HINSTANCE16,LPSTR,LPWORD);
-HICON32 WINAPI ExtractAssociatedIcon32A(HINSTANCE32,LPSTR,LPWORD);
-HICON32 WINAPI ExtractAssociatedIcon32W(HINSTANCE32,LPWSTR,LPWORD);
-#define ExtractAssociatedIcon WINELIB_NAME_AW(ExtractAssociatedIcon)
-void WINAPI FatalAppExit16(UINT16,LPCSTR);
-void WINAPI FatalAppExit32A(UINT32,LPCSTR);
-void WINAPI FatalAppExit32W(UINT32,LPCWSTR);
-#define FatalAppExit WINELIB_NAME_AW(FatalAppExit)
-ATOM WINAPI FindAtom16(SEGPTR);
-ATOM WINAPI FindAtom32A(LPCSTR);
-ATOM WINAPI FindAtom32W(LPCWSTR);
-#define FindAtom WINELIB_NAME_AW(FindAtom)
-BOOL16 WINAPI FindClose16(HANDLE16);
-BOOL32 WINAPI FindClose32(HANDLE32);
-#define FindClose WINELIB_NAME(FindClose)
-HINSTANCE16 WINAPI FindExecutable16(LPCSTR,LPCSTR,LPSTR);
-HINSTANCE32 WINAPI FindExecutable32A(LPCSTR,LPCSTR,LPSTR);
-HINSTANCE32 WINAPI FindExecutable32W(LPCWSTR,LPCWSTR,LPWSTR);
-#define FindExecutable WINELIB_NAME_AW(FindExecutable)
-HANDLE16 WINAPI FindFirstFile16(LPCSTR,LPWIN32_FIND_DATA32A);
-HANDLE32 WINAPI FindFirstFile32A(LPCSTR,LPWIN32_FIND_DATA32A);
-HANDLE32 WINAPI FindFirstFile32W(LPCWSTR,LPWIN32_FIND_DATA32W);
-#define FindFirstFile WINELIB_NAME_AW(FindFirstFile)
-BOOL16 WINAPI FindNextFile16(HANDLE16,LPWIN32_FIND_DATA32A);
-BOOL32 WINAPI FindNextFile32A(HANDLE32,LPWIN32_FIND_DATA32A);
-BOOL32 WINAPI FindNextFile32W(HANDLE32,LPWIN32_FIND_DATA32W);
-#define FindNextFile WINELIB_NAME_AW(FindNextFile)
-HRSRC16 WINAPI FindResource16(HINSTANCE16,SEGPTR,SEGPTR);
-HRSRC32 WINAPI FindResource32A(HMODULE32,LPCSTR,LPCSTR);
-HRSRC32 WINAPI FindResource32W(HMODULE32,LPCWSTR,LPCWSTR);
-#define FindResource WINELIB_NAME_AW(FindResource)
-VOID WINAPI FreeLibrary16(HINSTANCE16);
-BOOL32 WINAPI FreeLibrary32(HMODULE32);
-#define FreeLibrary WINELIB_NAME(FreeLibrary)
-BOOL16 WINAPI FreeModule16(HMODULE16);
-#define FreeModule32(handle) FreeLibrary32(handle)
-#define FreeModule WINELIB_NAME(FreeModule)
-void WINAPI FreeProcInstance16(FARPROC16);
-#define FreeProcInstance32(proc) /*nothing*/
-#define FreeProcInstance WINELIB_NAME(FreeProcInstance)
-BOOL16 WINAPI FreeResource16(HGLOBAL16);
-BOOL32 WINAPI FreeResource32(HGLOBAL32);
-#define FreeResource WINELIB_NAME(FreeResource)
-UINT16 WINAPI GetAtomName16(ATOM,LPSTR,INT16);
-UINT32 WINAPI GetAtomName32A(ATOM,LPSTR,INT32);
-UINT32 WINAPI GetAtomName32W(ATOM,LPWSTR,INT32);
-#define GetAtomName WINELIB_NAME_AW(GetAtomName)
-UINT16 WINAPI GetCurrentDirectory16(UINT16,LPSTR);
-UINT32 WINAPI GetCurrentDirectory32A(UINT32,LPSTR);
-UINT32 WINAPI GetCurrentDirectory32W(UINT32,LPWSTR);
-#define GetCurrentDirectory WINELIB_NAME_AW(GetCurrentDirectory)
-BOOL16 WINAPI GetDiskFreeSpace16(LPCSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
-BOOL32 WINAPI GetDiskFreeSpace32A(LPCSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
-BOOL32 WINAPI GetDiskFreeSpace32W(LPCWSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
-#define GetDiskFreeSpace WINELIB_NAME_AW(GetDiskFreeSpace)
-BOOL32 WINAPI GetDiskFreeSpaceEx32A(LPCSTR,LPULARGE_INTEGER,LPULARGE_INTEGER,LPULARGE_INTEGER);
-BOOL32 WINAPI GetDiskFreeSpaceEx32W(LPCWSTR,LPULARGE_INTEGER,LPULARGE_INTEGER,LPULARGE_INTEGER);
-#define GetDiskFreeSpaceEx WINELIB_NAME_AW(GetDiskFreeSpaceEx)
-UINT16 WINAPI GetDriveType16(UINT16); /* yes, the arguments differ */
-UINT32 WINAPI GetDriveType32A(LPCSTR);
-UINT32 WINAPI GetDriveType32W(LPCWSTR);
-#define GetDriveType WINELIB_NAME_AW(GetDriveType)
-INT16 WINAPI GetExpandedName16(LPCSTR,LPSTR);
-INT32 WINAPI GetExpandedName32A(LPCSTR,LPSTR);
-INT32 WINAPI GetExpandedName32W(LPCWSTR,LPWSTR);
-#define GetExpandedName WINELIB_NAME_AW(GetExpandedName)
-DWORD WINAPI GetFileAttributes16(LPCSTR);
-DWORD WINAPI GetFileAttributes32A(LPCSTR);
-DWORD WINAPI GetFileAttributes32W(LPCWSTR);
-#define GetFileAttributes WINELIB_NAME_AW(GetFileAttributes)
-DWORD WINAPI GetFileVersionInfoSize16(LPCSTR,LPDWORD);
-DWORD WINAPI GetFileVersionInfoSize32A(LPCSTR,LPDWORD);
-DWORD WINAPI GetFileVersionInfoSize32W(LPCWSTR,LPDWORD);
-#define GetFileVersionInfoSize WINELIB_NAME_AW(GetFileVersionInfoSize)
-DWORD WINAPI GetFileVersionInfo16(LPCSTR,DWORD,DWORD,LPVOID);
-DWORD WINAPI GetFileVersionInfo32A(LPCSTR,DWORD,DWORD,LPVOID);
-DWORD WINAPI GetFileVersionInfo32W(LPCWSTR,DWORD,DWORD,LPVOID);
-#define GetFileVersionInfo WINELIB_NAME_AW(GetFileVersionInfo)
-DWORD WINAPI GetFreeSpace16(UINT16);
-#define GetFreeSpace32(w) (0x100000L)
-#define GetFreeSpace WINELIB_NAME(GetFreeSpace)
-UINT32 WINAPI GetLogicalDriveStrings32A(UINT32,LPSTR);
-UINT32 WINAPI GetLogicalDriveStrings32W(UINT32,LPWSTR);
-#define GetLogicalDriveStrings WINELIB_NAME_AW(GetLogicalDriveStrings)
-INT16 WINAPI GetLocaleInfo16(LCID,LCTYPE,LPSTR,INT16);
-INT32 WINAPI GetLocaleInfo32A(LCID,LCTYPE,LPSTR,INT32);
-INT32 WINAPI GetLocaleInfo32W(LCID,LCTYPE,LPWSTR,INT32);
-#define GetLocaleInfo WINELIB_NAME_AW(GetLocaleInfo)
-INT16 WINAPI GetModuleFileName16(HINSTANCE16,LPSTR,INT16);
-DWORD WINAPI GetModuleFileName32A(HMODULE32,LPSTR,DWORD);
-DWORD WINAPI GetModuleFileName32W(HMODULE32,LPWSTR,DWORD);
-#define GetModuleFileName WINELIB_NAME_AW(GetModuleFileName)
-HMODULE16 WINAPI GetModuleHandle16(LPCSTR);
-HMODULE32 WINAPI GetModuleHandle32A(LPCSTR);
-HMODULE32 WINAPI GetModuleHandle32W(LPCWSTR);
-#define GetModuleHandle WINELIB_NAME_AW(GetModuleHandle)
-UINT16 WINAPI GetPrivateProfileInt16(LPCSTR,LPCSTR,INT16,LPCSTR);
-UINT32 WINAPI GetPrivateProfileInt32A(LPCSTR,LPCSTR,INT32,LPCSTR);
-UINT32 WINAPI GetPrivateProfileInt32W(LPCWSTR,LPCWSTR,INT32,LPCWSTR);
-#define GetPrivateProfileInt WINELIB_NAME_AW(GetPrivateProfileInt)
-INT16 WINAPI GetPrivateProfileSection16(LPCSTR,LPSTR,UINT16,LPCSTR);
-INT32 WINAPI GetPrivateProfileSection32A(LPCSTR,LPSTR,DWORD,LPCSTR);
-INT32 WINAPI GetPrivateProfileSection32W(LPCWSTR,LPWSTR,DWORD,LPCWSTR);
-#define GetPrivateProfileSection WINELIB_NAME_AW(GetPrivateProfileSection)
-WORD WINAPI GetPrivateProfileSectionNames16(LPSTR,UINT16,LPCSTR);
-DWORD WINAPI GetPrivateProfileSectionNames32A(LPSTR,DWORD,LPCSTR);
-DWORD WINAPI GetPrivateProfileSectionNames32W(LPWSTR,DWORD,LPCWSTR);
-#define GetPrivateProfileSectionNames WINELIB_NAME_AW(GetPrivateProfileSectionNames)
-INT16 WINAPI GetPrivateProfileString16(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16,LPCSTR);
-INT32 WINAPI GetPrivateProfileString32A(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT32,LPCSTR);
-INT32 WINAPI GetPrivateProfileString32W(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT32,LPCWSTR);
-#define GetPrivateProfileString WINELIB_NAME_AW(GetPrivateProfileString)
+WORD WINAPI WOWHandle16(HANDLE32,WOW_HANDLE_TYPE);
BOOL16 WINAPI GetPrivateProfileStruct16(LPCSTR,LPCSTR,LPVOID,UINT16,LPCSTR);
-BOOL32 WINAPI GetPrivateProfileStruct32A(LPCSTR,LPCSTR,LPVOID,UINT32,LPCSTR);
-BOOL32 WINAPI GetPrivateProfileStruct32W(LPCWSTR,LPCWSTR,LPVOID,UINT32,LPCWSTR);
-#define GetPrivateProfileStruct WINELIB_NAME_AW(GetPrivateProfileStruct)
-FARPROC16 WINAPI GetProcAddress16(HMODULE16,SEGPTR);
-FARPROC32 WINAPI GetProcAddress32(HMODULE32,LPCSTR);
-#define GetProcAddress WINELIB_NAME(GetProcAddress)
-UINT16 WINAPI GetProfileInt16(LPCSTR,LPCSTR,INT16);
-UINT32 WINAPI GetProfileInt32A(LPCSTR,LPCSTR,INT32);
-UINT32 WINAPI GetProfileInt32W(LPCWSTR,LPCWSTR,INT32);
-#define GetProfileInt WINELIB_NAME_AW(GetProfileInt)
-INT16 WINAPI GetProfileString16(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16);
-INT32 WINAPI GetProfileSection32A(LPCSTR,LPSTR,DWORD);
-INT32 WINAPI GetProfileSection32W(LPCWSTR,LPWSTR,DWORD);
-#define GetProfileSection WINELIB_NAME_AW(GetProfileSection)
-INT32 WINAPI GetProfileString32A(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT32);
-INT32 WINAPI GetProfileString32W(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT32);
-#define GetProfileString WINELIB_NAME_AW(GetProfileString)
-BOOL16 WINAPI GetStringType16(LCID,DWORD,LPCSTR,INT16,LPWORD);
-BOOL32 WINAPI GetStringType32A(LCID,DWORD,LPCSTR,INT32,LPWORD);
-BOOL32 WINAPI GetStringType32W(DWORD,LPCWSTR,INT32,LPWORD);
-#define GetStringType WINELIB_NAME_AW(GetStringType)
-UINT16 WINAPI GetSystemDirectory16(LPSTR,UINT16);
-UINT32 WINAPI GetSystemDirectory32A(LPSTR,UINT32);
-UINT32 WINAPI GetSystemDirectory32W(LPWSTR,UINT32);
-#define GetSystemDirectory WINELIB_NAME_AW(GetSystemDirectory)
-UINT16 WINAPI GetTempFileName16(BYTE,LPCSTR,UINT16,LPSTR);
-UINT32 WINAPI GetTempFileName32A(LPCSTR,LPCSTR,UINT32,LPSTR);
-UINT32 WINAPI GetTempFileName32W(LPCWSTR,LPCWSTR,UINT32,LPWSTR);
-#define GetTempFileName WINELIB_NAME_AW(GetTempFileName)
-UINT32 WINAPI GetTempPath32A(UINT32,LPSTR);
-UINT32 WINAPI GetTempPath32W(UINT32,LPWSTR);
-#define GetTempPath WINELIB_NAME_AW(GetTempPath)
-LPINT16 WINAPI GetThresholdEvent16(void);
-LPDWORD WINAPI GetThresholdEvent32(void);
-#define GetThresholdEvent WINELIB_NAME(GetThresholdEvent)
-INT16 WINAPI GetThresholdStatus16(void);
-DWORD WINAPI GetThresholdStatus32(void);
-#define GetThresholdStatus WINELIB_NAME(GetThresholdStatus)
-LONG WINAPI GetVersion16(void);
-LONG WINAPI GetVersion32(void);
-#define GetVersion WINELIB_NAME(GetVersion)
-BOOL32 WINAPI GetExitCodeProcess(HANDLE32,LPDWORD);
-BOOL32 WINAPI GetVolumeInformation32A(LPCSTR,LPSTR,DWORD,LPDWORD,LPDWORD,LPDWORD,LPSTR,DWORD);
-BOOL32 WINAPI GetVolumeInformation32W(LPCWSTR,LPWSTR,DWORD,LPDWORD,LPDWORD,LPDWORD,LPWSTR,DWORD);
-#define GetVolumeInformation WINELIB_NAME_AW(GetVolumeInformation)
-UINT16 WINAPI GetWindowsDirectory16(LPSTR,UINT16);
-UINT32 WINAPI GetWindowsDirectory32A(LPSTR,UINT32);
-UINT32 WINAPI GetWindowsDirectory32W(LPWSTR,UINT32);
-#define GetWindowsDirectory WINELIB_NAME_AW(GetWindowsDirectory)
-HGLOBAL16 WINAPI GlobalAlloc16(UINT16,DWORD);
-HGLOBAL32 WINAPI GlobalAlloc32(UINT32,DWORD);
-#define GlobalAlloc WINELIB_NAME(GlobalAlloc)
-DWORD WINAPI GlobalCompact16(DWORD);
-DWORD WINAPI GlobalCompact32(DWORD);
-#define GlobalCompact WINELIB_NAME(GlobalCompact)
-UINT16 WINAPI GlobalFlags16(HGLOBAL16);
-UINT32 WINAPI GlobalFlags32(HGLOBAL32);
-#define GlobalFlags WINELIB_NAME(GlobalFlags)
-HGLOBAL16 WINAPI GlobalFree16(HGLOBAL16);
-HGLOBAL32 WINAPI GlobalFree32(HGLOBAL32);
-#define GlobalFree WINELIB_NAME(GlobalFree)
-DWORD WINAPI GlobalHandle16(WORD);
-HGLOBAL32 WINAPI GlobalHandle32(LPCVOID);
-#define GlobalHandle WINELIB_NAME(GlobalHandle)
-WORD WINAPI GlobalFix16(HGLOBAL16);
-VOID WINAPI GlobalFix32(HGLOBAL32);
-#define GlobalFix WINELIB_NAME(GlobalFix)
-LPVOID WINAPI GlobalLock16(HGLOBAL16);
-LPVOID WINAPI GlobalLock32(HGLOBAL32);
-#define GlobalLock WINELIB_NAME(GlobalLock)
-HGLOBAL16 WINAPI GlobalReAlloc16(HGLOBAL16,DWORD,UINT16);
-HGLOBAL32 WINAPI GlobalReAlloc32(HGLOBAL32,DWORD,UINT32);
-#define GlobalReAlloc WINELIB_NAME(GlobalReAlloc)
-DWORD WINAPI GlobalSize16(HGLOBAL16);
-DWORD WINAPI GlobalSize32(HGLOBAL32);
-#define GlobalSize WINELIB_NAME(GlobalSize)
-VOID WINAPI GlobalUnfix16(HGLOBAL16);
-VOID WINAPI GlobalUnfix32(HGLOBAL32);
-#define GlobalUnfix WINELIB_NAME(GlobalUnfix)
-BOOL16 WINAPI GlobalUnlock16(HGLOBAL16);
-BOOL32 WINAPI GlobalUnlock32(HGLOBAL32);
-#define GlobalUnlock WINELIB_NAME(GlobalUnlock)
-BOOL16 WINAPI GlobalUnWire16(HGLOBAL16);
-BOOL32 WINAPI GlobalUnWire32(HGLOBAL32);
-#define GlobalUnWire WINELIB_NAME(GlobalUnWire)
-SEGPTR WINAPI GlobalWire16(HGLOBAL16);
-LPVOID WINAPI GlobalWire32(HGLOBAL32);
-#define GlobalWire WINELIB_NAME(GlobalWire)
-BOOL16 WINAPI GrayString16(HDC16,HBRUSH16,GRAYSTRINGPROC16,LPARAM,
- INT16,INT16,INT16,INT16,INT16);
-WORD WINAPI InitAtomTable16(WORD);
-BOOL32 WINAPI InitAtomTable32(DWORD);
-#define InitAtomTable WINELIB_NAME(InitAtomTable)
-BOOL16 WINAPI IsBadCodePtr16(SEGPTR);
-BOOL32 WINAPI IsBadCodePtr32(FARPROC32);
-#define IsBadCodePtr WINELIB_NAME(IsBadCodePtr)
-BOOL16 WINAPI IsBadHugeReadPtr16(SEGPTR,DWORD);
-BOOL32 WINAPI IsBadHugeReadPtr32(LPCVOID,UINT32);
-#define IsBadHugeReadPtr WINELIB_NAME(IsBadHugeReadPtr)
-BOOL16 WINAPI IsBadHugeWritePtr16(SEGPTR,DWORD);
-BOOL32 WINAPI IsBadHugeWritePtr32(LPVOID,UINT32);
-#define IsBadHugeWritePtr WINELIB_NAME(IsBadHugeWritePtr)
-BOOL16 WINAPI IsBadReadPtr16(SEGPTR,UINT16);
-BOOL32 WINAPI IsBadReadPtr32(LPCVOID,UINT32);
-#define IsBadReadPtr WINELIB_NAME(IsBadReadPtr)
-BOOL16 WINAPI IsBadStringPtr16(SEGPTR,UINT16);
-BOOL32 WINAPI IsBadStringPtr32A(LPCSTR,UINT32);
-BOOL32 WINAPI IsBadStringPtr32W(LPCWSTR,UINT32);
-#define IsBadStringPtr WINELIB_NAME_AW(IsBadStringPtr)
-BOOL16 WINAPI IsBadWritePtr16(SEGPTR,UINT16);
-BOOL32 WINAPI IsBadWritePtr32(LPVOID,UINT32);
-#define IsBadWritePtr WINELIB_NAME(IsBadWritePtr)
-BOOL16 WINAPI IsDBCSLeadByte16(BYTE);
-BOOL32 WINAPI IsDBCSLeadByte32(BYTE);
-#define IsDBCSLeadByte WINELIB_NAME(IsDBCSLeadByte)
-HFILE16 WINAPI LZOpenFile16(LPCSTR,LPOFSTRUCT,UINT16);
-HFILE32 WINAPI LZOpenFile32A(LPCSTR,LPOFSTRUCT,UINT32);
-HFILE32 WINAPI LZOpenFile32W(LPCWSTR,LPOFSTRUCT,UINT32);
-#define LZOpenFile WINELIB_NAME_AW(LZOpenFile)
-INT16 WINAPI LZRead16(HFILE16,LPVOID,UINT16);
-INT32 WINAPI LZRead32(HFILE32,LPVOID,UINT32);
-#define LZRead WINELIB_NAME(LZRead)
-INT16 WINAPI LZStart16(void);
-INT32 WINAPI LZStart32(void);
-#define LZStart WINELIB_NAME(LZStart)
-HINSTANCE16 WINAPI LoadLibrary16(LPCSTR);
-HMODULE32 WINAPI LoadLibrary32A(LPCSTR);
-HMODULE32 WINAPI LoadLibrary32W(LPCWSTR);
-#define LoadLibrary WINELIB_NAME_AW(LoadLibrary)
-HMODULE32 WINAPI LoadLibraryEx32A(LPCSTR,HFILE32,DWORD);
-HMODULE32 WINAPI LoadLibraryEx32W(LPCWSTR,HFILE32,DWORD);
-#define LoadLibraryEx WINELIB_NAME_AW(LoadLibraryEx)
-HINSTANCE16 WINAPI LoadModule16(LPCSTR,LPVOID);
-HINSTANCE32 WINAPI LoadModule32(LPCSTR,LPVOID);
-#define LoadModule WINELIB_NAME(LoadModule)
-HGLOBAL16 WINAPI LoadResource16(HINSTANCE16,HRSRC16);
-HGLOBAL32 WINAPI LoadResource32(HMODULE32,HRSRC32);
-#define LoadResource WINELIB_NAME(LoadResource)
-HLOCAL16 WINAPI LocalAlloc16(UINT16,WORD);
-HLOCAL32 WINAPI LocalAlloc32(UINT32,DWORD);
-#define LocalAlloc WINELIB_NAME(LocalAlloc)
-UINT16 WINAPI LocalCompact16(UINT16);
-UINT32 WINAPI LocalCompact32(UINT32);
-#define LocalCompact WINELIB_NAME(LocalCompact)
-UINT16 WINAPI LocalFlags16(HLOCAL16);
-UINT32 WINAPI LocalFlags32(HLOCAL32);
-#define LocalFlags WINELIB_NAME(LocalFlags)
-HLOCAL16 WINAPI LocalFree16(HLOCAL16);
-HLOCAL32 WINAPI LocalFree32(HLOCAL32);
-#define LocalFree WINELIB_NAME(LocalFree)
-HLOCAL16 WINAPI LocalHandle16(WORD);
-HLOCAL32 WINAPI LocalHandle32(LPCVOID);
-#define LocalHandle WINELIB_NAME(LocalHandle)
-SEGPTR WINAPI LocalLock16(HLOCAL16);
-LPVOID WINAPI LocalLock32(HLOCAL32);
-#define LocalLock WINELIB_NAME(LocalLock)
-HLOCAL16 WINAPI LocalReAlloc16(HLOCAL16,WORD,UINT16);
-HLOCAL32 WINAPI LocalReAlloc32(HLOCAL32,DWORD,UINT32);
-#define LocalReAlloc WINELIB_NAME(LocalReAlloc)
-UINT16 WINAPI LocalShrink16(HGLOBAL16,UINT16);
-UINT32 WINAPI LocalShrink32(HGLOBAL32,UINT32);
-#define LocalShrink WINELIB_NAME(LocalShrink)
-UINT16 WINAPI LocalSize16(HLOCAL16);
-UINT32 WINAPI LocalSize32(HLOCAL32);
-#define LocalSize WINELIB_NAME(LocalSize)
-BOOL16 WINAPI LocalUnlock16(HLOCAL16);
-BOOL32 WINAPI LocalUnlock32(HLOCAL32);
-#define LocalUnlock WINELIB_NAME(LocalUnlock)
-LPVOID WINAPI LockResource16(HGLOBAL16);
-LPVOID WINAPI LockResource32(HGLOBAL32);
-#define LockResource WINELIB_NAME(LockResource)
-HGLOBAL16 WINAPI LockSegment16(HGLOBAL16);
-#define LockSegment32(handle) GlobalFix32((HANDLE32)(handle))
-#define LockSegment WINELIB_NAME(LockSegment)
-void WINAPI LZClose16(HFILE16);
-void WINAPI LZClose32(HFILE32);
-#define LZClose WINELIB_NAME(LZClose)
-LONG WINAPI LZCopy16(HFILE16,HFILE16);
-LONG WINAPI LZCopy32(HFILE32,HFILE32);
-#define LZCopy WINELIB_NAME(LZCopy)
-HFILE16 WINAPI LZInit16(HFILE16);
-HFILE32 WINAPI LZInit32(HFILE32);
-#define LZInit WINELIB_NAME(LZInit)
-LONG WINAPI LZSeek16(HFILE16,LONG,INT16);
-LONG WINAPI LZSeek32(HFILE32,LONG,INT32);
-#define LZSeek WINELIB_NAME(LZSeek)
-FARPROC16 WINAPI MakeProcInstance16(FARPROC16,HANDLE16);
-#define MakeProcInstance32(proc,inst) (proc)
-#define MakeProcInstance WINELIB_NAME(MakeProcInstance)
-INT16 WINAPI OemToAnsi16(LPCSTR,LPSTR);
-#define OemToAnsi32A OemToChar32A
-#define OemToAnsi32W OemToChar32W
-#define OemToAnsi WINELIB_NAME_AW(OemToAnsi)
-VOID WINAPI OemToAnsiBuff16(LPCSTR,LPSTR,UINT16);
-#define OemToAnsiBuff32A OemToCharBuff32A
-#define OemToAnsiBuff32W OemToCharBuff32W
-#define OemToAnsiBuff WINELIB_NAME_AW(OemToAnsiBuff)
-INT16 WINAPI WideCharToLocal16(LPSTR,LPWSTR,INT16);
-INT32 WINAPI WideCharToLocal32(LPSTR,LPWSTR,INT32);
-#define WideCharToLocal WINELIB_NAME(WideCharToLocal)
-INT16 WINAPI LocalToWideChar16(LPWSTR,LPSTR,INT16);
-INT32 WINAPI LocalToWideChar32(LPWSTR,LPSTR,INT32);
-#define LocalToWideChar WINELIB_NAME(LocalToWideChar)
-HFILE16 WINAPI OpenFile16(LPCSTR,OFSTRUCT*,UINT16);
-HFILE32 WINAPI OpenFile32(LPCSTR,OFSTRUCT*,UINT32);
-#define OpenFile WINELIB_NAME(OpenFile)
-INT16 WINAPI OpenSound16(void);
-VOID WINAPI OpenSound32(void);
-#define OpenSound WINELIB_NAME(OpenSound)
-VOID WINAPI OutputDebugString16(LPCSTR);
-VOID WINAPI OutputDebugString32A(LPCSTR);
-VOID WINAPI OutputDebugString32W(LPCWSTR);
-#define OutputDebugString WINELIB_NAME_AW(OutputDebugString)
-DWORD WINAPI RegCreateKey16(HKEY,LPCSTR,LPHKEY);
-DWORD WINAPI RegCreateKey32A(HKEY,LPCSTR,LPHKEY);
-DWORD WINAPI RegCreateKey32W(HKEY,LPCWSTR,LPHKEY);
-#define RegCreateKey WINELIB_NAME_AW(RegCreateKey)
-DWORD WINAPI RegDeleteKey16(HKEY,LPCSTR);
-DWORD WINAPI RegDeleteKey32A(HKEY,LPCSTR);
-DWORD WINAPI RegDeleteKey32W(HKEY,LPWSTR);
-#define RegDeleteKey WINELIB_NAME_AW(RegDeleteKey)
-DWORD WINAPI RegDeleteValue16(HKEY,LPSTR);
-DWORD WINAPI RegDeleteValue32A(HKEY,LPSTR);
-DWORD WINAPI RegDeleteValue32W(HKEY,LPWSTR);
-#define RegDeleteValue WINELIB_NAME_AW(RegDeleteValue)
-DWORD WINAPI RegEnumKey16(HKEY,DWORD,LPSTR,DWORD);
-DWORD WINAPI RegEnumKey32A(HKEY,DWORD,LPSTR,DWORD);
-DWORD WINAPI RegEnumKey32W(HKEY,DWORD,LPWSTR,DWORD);
-#define RegEnumKey WINELIB_NAME_AW(RegEnumKey)
-DWORD WINAPI RegEnumValue16(HKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
-DWORD WINAPI RegEnumValue32A(HKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
-DWORD WINAPI RegEnumValue32W(HKEY,DWORD,LPWSTR,LPDWORD,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
-#define RegEnumValue WINELIB_NAME_AW(RegEnumValue)
-HRESULT WINAPI RegisterDragDrop16(HWND16,LPVOID);
-HRESULT WINAPI RegisterDragDrop32(HWND32,LPVOID);
-#define RegisterDragDrop WINELIB_NAME(RegisterDragDrop)
-DWORD WINAPI RegOpenKey16(HKEY,LPCSTR,LPHKEY);
-DWORD WINAPI RegOpenKey32A(HKEY,LPCSTR,LPHKEY);
-DWORD WINAPI RegOpenKey32W(HKEY,LPCWSTR,LPHKEY);
-#define RegOpenKey WINELIB_NAME_AW(RegOpenKey)
-DWORD WINAPI RegQueryValue16(HKEY,LPSTR,LPSTR,LPDWORD);
-DWORD WINAPI RegQueryValue32A(HKEY,LPSTR,LPSTR,LPDWORD);
-DWORD WINAPI RegQueryValue32W(HKEY,LPWSTR,LPWSTR,LPDWORD);
-#define RegQueryValue WINELIB_NAME_AW(RegQueryValue)
-DWORD WINAPI RegQueryValueEx16(HKEY,LPSTR,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
-DWORD WINAPI RegQueryValueEx32A(HKEY,LPSTR,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
-DWORD WINAPI RegQueryValueEx32W(HKEY,LPWSTR,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
-#define RegQueryValueEx WINELIB_NAME_AW(RegQueryValueEx)
-DWORD WINAPI RegSetValue16(HKEY,LPCSTR,DWORD,LPCSTR,DWORD);
-DWORD WINAPI RegSetValue32A(HKEY,LPCSTR,DWORD,LPCSTR,DWORD);
-DWORD WINAPI RegSetValue32W(HKEY,LPCWSTR,DWORD,LPCWSTR,DWORD);
-#define RegSetValue WINELIB_NAME_AW(RegSetValue)
-DWORD WINAPI RegSetValueEx16(HKEY,LPSTR,DWORD,DWORD,LPBYTE,DWORD);
-DWORD WINAPI RegSetValueEx32A(HKEY,LPSTR,DWORD,DWORD,LPBYTE,DWORD);
-DWORD WINAPI RegSetValueEx32W(HKEY,LPWSTR,DWORD,DWORD,LPBYTE,DWORD);
-#define RegSetValueEx WINELIB_NAME_AW(RegSetValueEx)
-BOOL16 WINAPI RemoveDirectory16(LPCSTR);
-BOOL32 WINAPI RemoveDirectory32A(LPCSTR);
-BOOL32 WINAPI RemoveDirectory32W(LPCWSTR);
-#define RemoveDirectory WINELIB_NAME_AW(RemoveDirectory)
-HRESULT WINAPI RevokeDragDrop16(HWND16);
-HRESULT WINAPI RevokeDragDrop32(HWND32);
-#define RevokeDragDrop WINELIB_NAME(RevokeDragDrop)
-BOOL16 WINAPI SetCurrentDirectory16(LPCSTR);
-BOOL32 WINAPI SetCurrentDirectory32A(LPCSTR);
-BOOL32 WINAPI SetCurrentDirectory32W(LPCWSTR);
-#define SetCurrentDirectory WINELIB_NAME_AW(SetCurrentDirectory)
-UINT16 WINAPI SetErrorMode16(UINT16);
-UINT32 WINAPI SetErrorMode32(UINT32);
-#define SetErrorMode WINELIB_NAME(SetErrorMode)
-BOOL16 WINAPI SetFileAttributes16(LPCSTR,DWORD);
-BOOL32 WINAPI SetFileAttributes32A(LPCSTR,DWORD);
-BOOL32 WINAPI SetFileAttributes32W(LPCWSTR,DWORD);
-#define SetFileAttributes WINELIB_NAME_AW(SetFileAttributes)
-UINT16 WINAPI SetHandleCount16(UINT16);
-UINT32 WINAPI SetHandleCount32(UINT32);
-#define SetHandleCount WINELIB_NAME(SetHandleCount)
-INT16 WINAPI SetSoundNoise16(INT16,INT16);
-DWORD WINAPI SetSoundNoise32(DWORD,DWORD);
-#define SetSoundNoise WINELIB_NAME(SetSoundNoise)
-LONG WINAPI SetSwapAreaSize16(WORD);
-#define SetSwapAreaSize32(w) (w)
-#define SetSwapAreaSize WINELIB_NAME(SetSwapAreaSize)
-INT16 WINAPI SetVoiceAccent16(INT16,INT16,INT16,INT16,INT16);
-DWORD WINAPI SetVoiceAccent32(DWORD,DWORD,DWORD,DWORD,DWORD);
-#define SetVoiceAccent WINELIB_NAME(SetVoiceAccent)
-INT16 WINAPI SetVoiceEnvelope16(INT16,INT16,INT16);
-DWORD WINAPI SetVoiceEnvelope32(DWORD,DWORD,DWORD);
-#define SetVoiceEnvelope WINELIB_NAME(SetVoiceEnvelope)
-INT16 WINAPI SetVoiceNote16(INT16,INT16,INT16,INT16);
-DWORD WINAPI SetVoiceNote32(DWORD,DWORD,DWORD,DWORD);
-#define SetVoiceNote WINELIB_NAME(SetVoiceNote)
-INT16 WINAPI SetVoiceQueueSize16(INT16,INT16);
-DWORD WINAPI SetVoiceQueueSize32(DWORD,DWORD);
-#define SetVoiceQueueSize WINELIB_NAME(SetVoiceQueueSize)
-INT16 WINAPI SetVoiceSound16(INT16,DWORD,INT16);
-DWORD WINAPI SetVoiceSound32(DWORD,DWORD,DWORD);
-#define SetVoiceSound WINELIB_NAME(SetVoiceSound)
-INT16 WINAPI SetVoiceThreshold16(INT16,INT16);
-DWORD WINAPI SetVoiceThreshold32(DWORD,DWORD);
-#define SetVoiceThreshold WINELIB_NAME(SetVoiceThreshold)
-BOOL16 WINAPI ShellAbout16(HWND16,LPCSTR,LPCSTR,HICON16);
-BOOL32 WINAPI ShellAbout32A(HWND32,LPCSTR,LPCSTR,HICON32);
-BOOL32 WINAPI ShellAbout32W(HWND32,LPCWSTR,LPCWSTR,HICON32);
-#define ShellAbout WINELIB_NAME_AW(ShellAbout)
-HINSTANCE16 WINAPI ShellExecute16(HWND16,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT16);
-HINSTANCE32 WINAPI ShellExecute32A(HWND32,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT32);
-HINSTANCE32 WINAPI ShellExecute32W(HWND32,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,INT32);
-#define ShellExecute WINELIB_NAME_AW(ShellExecute)
-DWORD WINAPI SizeofResource16(HMODULE16,HRSRC16);
-DWORD WINAPI SizeofResource32(HMODULE32,HRSRC32);
-#define SizeofResource WINELIB_NAME(SizeofResource)
-INT16 WINAPI StartSound16(void);
-VOID WINAPI StartSound32(void);
-#define StartSound WINELIB_NAME(StartSound)
-INT16 WINAPI StopSound16(void);
-VOID WINAPI StopSound32(void);
-#define StopSound WINELIB_NAME(StopSound)
-INT16 WINAPI SyncAllVoices16(void);
-DWORD WINAPI SyncAllVoices32(void);
-#define SyncAllVoices WINELIB_NAME(SyncAllVoices)
-void WINAPI UnlockSegment16(HGLOBAL16);
-#define UnlockSegment32(handle) GlobalUnfix((HANDLE32)(handle))
-#define UnlockSegment WINELIB_NAME(UnlockSegment)
-DWORD WINAPI VerFindFile16(UINT16,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16*,LPSTR,UINT16*);
-DWORD WINAPI VerFindFile32A(UINT32,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT32*,LPSTR,UINT32*);
-DWORD WINAPI VerFindFile32W(UINT32,LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT32*,LPWSTR,UINT32*);
-#define VerFindFile WINELIB_NAME_AW(VerFindFile)
-DWORD WINAPI VerInstallFile16(UINT16,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16*);
-DWORD WINAPI VerInstallFile32A(UINT32,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT32*);
-DWORD WINAPI VerInstallFile32W(UINT32,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT32*);
-#define VerInstallFile WINELIB_NAME_AW(VerInstallFile)
-DWORD WINAPI VerLanguageName16(UINT16,LPSTR,UINT16);
-DWORD WINAPI VerLanguageName32A(UINT32,LPSTR,UINT32);
-DWORD WINAPI VerLanguageName32W(UINT32,LPWSTR,UINT32);
-#define VerLanguageName WINELIB_NAME_AW(VerLanguageName)
-DWORD WINAPI VerQueryValue16(SEGPTR,LPCSTR,SEGPTR*,UINT16*);
-DWORD WINAPI VerQueryValue32A(LPVOID,LPCSTR,LPVOID*,UINT32*);
-DWORD WINAPI VerQueryValue32W(LPVOID,LPCWSTR,LPVOID*,UINT32*);
-#define VerQueryValue WINELIB_NAME_AW(VerQueryValue)
-INT16 WINAPI WaitSoundState16(INT16);
-DWORD WINAPI WaitSoundState32(DWORD);
-#define WaitSoundState WINELIB_NAME(WaitSoundState)
-BOOL16 WINAPI WritePrivateProfileSection16(LPCSTR,LPCSTR,LPCSTR);
-BOOL32 WINAPI WritePrivateProfileSection32A(LPCSTR,LPCSTR,LPCSTR);
-BOOL32 WINAPI WritePrivateProfileSection32W(LPCWSTR,LPCWSTR,LPCWSTR);
-#define WritePrivateProfileSection WINELIB_NAME_AW(WritePrivateProfileSection)
-BOOL16 WINAPI WritePrivateProfileString16(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
-BOOL32 WINAPI WritePrivateProfileString32A(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
-BOOL32 WINAPI WritePrivateProfileString32W(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR);
-BOOL32 WINAPI WriteProfileSection32A(LPCSTR,LPCSTR);
-BOOL32 WINAPI WriteProfileSection32W(LPCWSTR,LPCWSTR);
-#define WritePrivateProfileString WINELIB_NAME_AW(WritePrivateProfileString)
-BOOL16 WINAPI WritePrivateProfileStruct16(LPCSTR,LPCSTR,LPVOID,UINT16,LPCSTR);
-BOOL32 WINAPI WritePrivateProfileStruct32A(LPCSTR,LPCSTR,LPVOID,UINT32,LPCSTR);
-BOOL32 WINAPI WritePrivateProfileStruct32W(LPCWSTR,LPCWSTR,LPVOID,UINT32,LPCWSTR);
-#define WritePrivateProfileStruct WINELIB_NAME_AW(WritePrivateProfileStruct)
-BOOL16 WINAPI WriteProfileString16(LPCSTR,LPCSTR,LPCSTR);
-BOOL32 WINAPI WriteProfileString32A(LPCSTR,LPCSTR,LPCSTR);
-BOOL32 WINAPI WriteProfileString32W(LPCWSTR,LPCWSTR,LPCWSTR);
-#define WriteProfileString WINELIB_NAME_AW(WriteProfileString)
-VOID WINAPI Yield16(void);
-#define Yield32()
-#define Yield WINELIB_NAME(Yield)
-SEGPTR WINAPI lstrcat16(SEGPTR,LPCSTR);
-LPSTR WINAPI lstrcat32A(LPSTR,LPCSTR);
-LPWSTR WINAPI lstrcat32W(LPWSTR,LPCWSTR);
-#define lstrcat WINELIB_NAME_AW(lstrcat)
-SEGPTR WINAPI lstrcatn16(SEGPTR,LPCSTR,INT16);
-LPSTR WINAPI lstrcatn32A(LPSTR,LPCSTR,INT32);
-LPWSTR WINAPI lstrcatn32W(LPWSTR,LPCWSTR,INT32);
-#define lstrcatn WINELIB_NAME_AW(lstrcatn)
-SEGPTR WINAPI lstrcpy16(SEGPTR,LPCSTR);
-LPSTR WINAPI lstrcpy32A(LPSTR,LPCSTR);
-LPWSTR WINAPI lstrcpy32W(LPWSTR,LPCWSTR);
-#define lstrcpy WINELIB_NAME_AW(lstrcpy)
-SEGPTR WINAPI lstrcpyn16(SEGPTR,LPCSTR,INT16);
-LPSTR WINAPI lstrcpyn32A(LPSTR,LPCSTR,INT32);
-LPWSTR WINAPI lstrcpyn32W(LPWSTR,LPCWSTR,INT32);
-#define lstrcpyn WINELIB_NAME_AW(lstrcpyn)
-INT16 WINAPI lstrlen16(LPCSTR);
-INT32 WINAPI lstrlen32A(LPCSTR);
-INT32 WINAPI lstrlen32W(LPCWSTR);
-#define lstrlen WINELIB_NAME_AW(lstrlen)
-HINSTANCE16 WINAPI WinExec16(LPCSTR,UINT16);
-HINSTANCE32 WINAPI WinExec32(LPCSTR,UINT32);
-#define WinExec WINELIB_NAME(WinExec)
-LONG WINAPI _hread16(HFILE16,LPVOID,LONG);
-LONG WINAPI _hread32(HFILE32,LPVOID,LONG);
-#define _hread WINELIB_NAME(_hread)
-LONG WINAPI _hwrite16(HFILE16,LPCSTR,LONG);
-LONG WINAPI _hwrite32(HFILE32,LPCSTR,LONG);
-#define _hwrite WINELIB_NAME(_hwrite)
-HFILE16 WINAPI _lcreat16(LPCSTR,INT16);
-HFILE32 WINAPI _lcreat32(LPCSTR,INT32);
-#define _lcreat WINELIB_NAME(_lcreat)
-HFILE16 WINAPI _lclose16(HFILE16);
-HFILE32 WINAPI _lclose32(HFILE32);
-#define _lclose WINELIB_NAME(_lclose)
-LONG WINAPI _llseek16(HFILE16,LONG,INT16);
-LONG WINAPI _llseek32(HFILE32,LONG,INT32);
-#define _llseek WINELIB_NAME(_llseek)
-HFILE16 WINAPI _lopen16(LPCSTR,INT16);
-HFILE32 WINAPI _lopen32(LPCSTR,INT32);
-#define _lopen WINELIB_NAME(_lopen)
-UINT16 WINAPI _lread16(HFILE16,LPVOID,UINT16);
-UINT32 WINAPI _lread32(HFILE32,LPVOID,UINT32);
-#define _lread WINELIB_NAME(_lread)
-UINT16 WINAPI _lwrite16(HFILE16,LPCSTR,UINT16);
-UINT32 WINAPI _lwrite32(HFILE32,LPCSTR,UINT32);
-#define _lwrite WINELIB_NAME(_lwrite)
+INT16 WINAPI GetPrivateProfileSection16(LPCSTR,LPSTR,UINT16,LPCSTR);
-/* Extra functions that don't exist in the Windows API */
-
-HPEN16 WINAPI GetSysColorPen16(INT16);
-HPEN32 WINAPI GetSysColorPen32(INT32);
-INT32 WINAPI LoadMessage32A(HMODULE32,UINT32,WORD,LPSTR,INT32);
-INT32 WINAPI LoadMessage32W(HMODULE32,UINT32,WORD,LPWSTR,INT32);
-UINT32 WINAPI WIN16_GetTempDrive(BYTE);
-SEGPTR WINAPI WIN16_GlobalLock16(HGLOBAL16);
-SEGPTR WINAPI WIN16_LockResource16(HGLOBAL16);
-LONG WINAPI WIN16_hread(HFILE16,SEGPTR,LONG);
-UINT16 WINAPI WIN16_lread(HFILE16,SEGPTR,UINT16);
-INT32 WINAPI lstrncmp32A(LPCSTR,LPCSTR,INT32);
-INT32 WINAPI lstrncmp32W(LPCWSTR,LPCWSTR,INT32);
-INT32 WINAPI lstrncmpi32A(LPCSTR,LPCSTR,INT32);
-INT32 WINAPI lstrncmpi32W(LPCWSTR,LPCWSTR,INT32);
-LPWSTR WINAPI lstrcpyAtoW(LPWSTR,LPCSTR);
-LPSTR WINAPI lstrcpyWtoA(LPSTR,LPCWSTR);
-LPWSTR WINAPI lstrcpynAtoW(LPWSTR,LPCSTR,INT32);
-LPSTR WINAPI lstrcpynWtoA(LPSTR,LPCWSTR,INT32);
-INT16 WINAPI lstrcmp16(LPCSTR,LPCSTR);
-INT32 WINAPI lstrcmp32A(LPCSTR,LPCSTR);
-INT32 WINAPI lstrcmp32W(LPCWSTR,LPCWSTR);
-#define lstrcmp WINELIB_NAME_AW(lstrcmp)
-INT16 WINAPI lstrcmpi16(LPCSTR,LPCSTR);
-INT32 WINAPI lstrcmpi32A(LPCSTR,LPCSTR);
-INT32 WINAPI lstrcmpi32W(LPCWSTR,LPCWSTR);
-#define lstrcmpi WINELIB_NAME_AW(lstrcmpi)
-
+#endif /* 0 */
#ifdef __cplusplus
}
diff --git a/include/wine/keyboard16.h b/include/wine/keyboard16.h
new file mode 100644
index 0000000..0cce1fc
--- /dev/null
+++ b/include/wine/keyboard16.h
@@ -0,0 +1,12 @@
+#ifndef _KEYBOARD16_H
+#define _KEYBOARD16_H
+
+INT16 WINAPI ToAscii16(UINT16,UINT16,LPBYTE,LPVOID,UINT16);
+WORD WINAPI VkKeyScan16(CHAR);
+INT16 WINAPI AnsiToOem16(LPCSTR,LPSTR);
+VOID WINAPI AnsiToOemBuff16(LPCSTR,LPSTR,UINT16);
+INT16 WINAPI OemToAnsi16(LPCSTR,LPSTR);
+VOID WINAPI OemToAnsiBuff16(LPCSTR,LPSTR,UINT16);
+
+
+#endif /* _KEYBOARD16_H */
diff --git a/include/wine/obj_storage.h b/include/wine/obj_storage.h
index 52c4d7d..55b8459 100644
--- a/include/wine/obj_storage.h
+++ b/include/wine/obj_storage.h
@@ -8,7 +8,7 @@
#define __WINE_WINE_OBJ_STORAGE_H
-#include "winnt.h"
+#include "winbase.h"
/*****************************************************************************
diff --git a/include/wine/shell16.h b/include/wine/shell16.h
new file mode 100644
index 0000000..be924b5
--- /dev/null
+++ b/include/wine/shell16.h
@@ -0,0 +1,9 @@
+#ifndef _SHELL16_H
+#define _SHELL16_H
+
+BOOL16 WINAPI AboutDlgProc16(HWND16,UINT16,WPARAM16,LPARAM);
+BOOL32 WINAPI AboutDlgProc32(HWND32,UINT32,WPARAM32,LPARAM);
+#define AboutDlgProc WINELIB_NAME(AboutDlgProc)
+
+
+#endif /* _SHELL16_H */
diff --git a/include/wine/w32skrnl.h b/include/wine/w32skrnl.h
new file mode 100644
index 0000000..e5dd128
--- /dev/null
+++ b/include/wine/w32skrnl.h
@@ -0,0 +1,7 @@
+#ifndef _W32SKRNL_H
+#define _W32SKRNL_H
+#include "wintypes.h"
+HTASK16 WINAPI GetCurrentTask(void);
+LPSTR WINAPI GetWin32sDirectory(void);
+DWORD WINAPI RtlNtStatusToDosError(DWORD error);
+#endif /* _W32SKRNL_H */
diff --git a/include/wine/winbase16.h b/include/wine/winbase16.h
new file mode 100644
index 0000000..1c9f9d1
--- /dev/null
+++ b/include/wine/winbase16.h
@@ -0,0 +1,212 @@
+#ifndef _INCLUDE_WINE_WINBASE16_H
+#define _INCLUDE_WINE_WINBASE16_H
+
+#include "wintypes.h"
+#pragma pack(1)
+typedef struct _SEGINFO {
+ UINT16 offSegment;
+ UINT16 cbSegment;
+ UINT16 flags;
+ UINT16 cbAlloc;
+ HGLOBAL16 h;
+ UINT16 alignShift;
+ UINT16 reserved[2];
+} SEGINFO;
+
+
+/* GetWinFlags */
+
+#define WF_PMODE 0x0001
+#define WF_CPU286 0x0002
+#define WF_CPU386 0x0004
+#define WF_CPU486 0x0008
+#define WF_STANDARD 0x0010
+#define WF_WIN286 0x0010
+#define WF_ENHANCED 0x0020
+#define WF_WIN386 0x0020
+#define WF_CPU086 0x0040
+#define WF_CPU186 0x0080
+#define WF_LARGEFRAME 0x0100
+#define WF_SMALLFRAME 0x0200
+#define WF_80x87 0x0400
+#define WF_PAGING 0x0800
+#define WF_HASCPUID 0x2000
+#define WF_WIN32WOW 0x4000 /* undoc */
+#define WF_WLO 0x8000
+
+#pragma pack(4)
+
+HMODULE16 WINAPI GetModuleHandle16(LPCSTR);
+HLOCAL16 WINAPI LocalAlloc16(UINT16,WORD);
+LPVOID WINAPI LockResource16(HGLOBAL16);
+
+#ifdef __WINE__
+WORD WINAPI AllocCStoDSAlias(WORD);
+WORD WINAPI AllocDStoCSAlias(WORD);
+HGLOBAL16 WINAPI AllocResource(HINSTANCE16,HRSRC16,DWORD);
+WORD WINAPI AllocSelector(WORD);
+WORD WINAPI AllocSelectorArray(WORD);
+VOID WINAPI DirectedYield(HTASK16);
+HGLOBAL16 WINAPI DirectResAlloc(HINSTANCE16,WORD,UINT16);
+HANDLE16 WINAPI FarGetOwner(HGLOBAL16);
+VOID WINAPI FarSetOwner(HGLOBAL16,HANDLE16);
+FARPROC16 WINAPI FileCDR(FARPROC16);
+WORD WINAPI FreeSelector(WORD);
+HANDLE16 WINAPI GetAtomHandle(ATOM);
+HANDLE16 WINAPI GetCodeHandle(FARPROC16);
+VOID WINAPI GetCodeInfo(FARPROC16,SEGINFO*);
+DWORD WINAPI GetCurrentPDB(void);
+SEGPTR WINAPI GetDOSEnvironment(void);
+HMODULE16 WINAPI GetExePtr(HANDLE16);
+WORD WINAPI GetExeVersion(void);
+WORD WINAPI GetExpWinVer(HMODULE16);
+DWORD WINAPI GetHeapSpaces(HMODULE16);
+INT16 WINAPI GetInstanceData(HINSTANCE16,WORD,INT16);
+BOOL16 WINAPI GetModuleName(HINSTANCE16,LPSTR,INT16);
+INT16 WINAPI GetModuleUsage(HINSTANCE16);
+UINT16 WINAPI GetNumTasks(void);
+DWORD WINAPI GetSelectorLimit(WORD);
+FARPROC16 WINAPI GetSetKernelDOSProc(FARPROC16 DosProc);
+HINSTANCE16 WINAPI GetTaskDS(void);
+HQUEUE16 WINAPI GetTaskQueue(HTASK16);
+DWORD WINAPI GetWinFlags(void);
+DWORD WINAPI GlobalDOSAlloc(DWORD);
+WORD WINAPI GlobalDOSFree(WORD);
+void WINAPI GlobalFreeAll(HGLOBAL16);
+DWORD WINAPI GlobalHandleNoRIP(WORD);
+HGLOBAL16 WINAPI GlobalLRUNewest(HGLOBAL16);
+HGLOBAL16 WINAPI GlobalLRUOldest(HGLOBAL16);
+VOID WINAPI GlobalNotify(FARPROC16);
+WORD WINAPI GlobalPageLock(HGLOBAL16);
+WORD WINAPI GlobalPageUnlock(HGLOBAL16);
+BOOL16 WINAPI IsSharedSelector(HANDLE16);
+BOOL16 WINAPI IsTask(HTASK16);
+HTASK16 WINAPI IsTaskLocked(void);
+VOID WINAPI LogError(UINT16, LPVOID);
+VOID WINAPI LogParamError(UINT16,FARPROC16,LPVOID);
+WORD WINAPI LocalCountFree(void);
+WORD WINAPI LocalHandleDelta(WORD);
+WORD WINAPI LocalHeapSize(void);
+BOOL16 WINAPI LocalInit(HANDLE16,WORD,WORD);
+HMODULE32 WINAPI LoadLibraryEx32W16(LPCSTR,HANDLE16,DWORD);
+FARPROC16 WINAPI LocalNotify(FARPROC16);
+HTASK16 WINAPI LockCurrentTask(BOOL16);
+VOID WINAPI OldYield(void);
+VOID WINAPI PostEvent(HTASK16);
+WORD WINAPI PrestoChangoSelector(WORD,WORD);
+WORD WINAPI SelectorAccessRights(WORD,WORD,WORD);
+VOID WINAPI SetPriority(HTASK16,INT16);
+FARPROC16 WINAPI SetResourceHandler(HINSTANCE16,SEGPTR,FARPROC16);
+WORD WINAPI SetSelectorLimit(WORD,DWORD);
+HQUEUE16 WINAPI SetTaskQueue(HTASK16,HQUEUE16);
+VOID WINAPI SwitchStackTo(WORD,WORD,WORD);
+BOOL16 WINAPI WaitEvent(HTASK16);
+VOID WINAPI WriteOutProfiles(VOID);
+VOID WINAPI hmemcpy(LPVOID,LPCVOID,LONG);
+#endif /* __WINE__ */
+
+INT16 WINAPI AccessResource16(HINSTANCE16,HRSRC16);
+ATOM WINAPI AddAtom16(SEGPTR);
+BOOL16 WINAPI CreateDirectory16(LPCSTR,LPVOID);
+BOOL16 WINAPI DefineHandleTable16(WORD);
+ATOM WINAPI DeleteAtom16(ATOM);
+BOOL16 WINAPI DeleteFile16(LPCSTR);
+void WINAPI FatalAppExit16(UINT16,LPCSTR);
+ATOM WINAPI FindAtom16(SEGPTR);
+BOOL16 WINAPI FindClose16(HANDLE16);
+HRSRC16 WINAPI FindResource16(HINSTANCE16,SEGPTR,SEGPTR);
+BOOL16 WINAPI FreeModule16(HMODULE16);
+#define FreeModule WINELIB_NAME(FreeModule)
+void WINAPI FreeProcInstance16(FARPROC16);
+BOOL16 WINAPI FreeResource16(HGLOBAL16);
+UINT16 WINAPI GetAtomName16(ATOM,LPSTR,INT16);
+UINT16 WINAPI GetCurrentDirectory16(UINT16,LPSTR);
+BOOL16 WINAPI GetDiskFreeSpace16(LPCSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
+UINT16 WINAPI GetDriveType16(UINT16); /* yes, the arguments differ */
+DWORD WINAPI GetFileAttributes16(LPCSTR);
+DWORD WINAPI GetFreeSpace16(UINT16);
+INT16 WINAPI GetModuleFileName16(HINSTANCE16,LPSTR,INT16);
+UINT16 WINAPI GetPrivateProfileInt16(LPCSTR,LPCSTR,INT16,LPCSTR);
+WORD WINAPI GetPrivateProfileSectionNames16(LPSTR,UINT16,LPCSTR);
+INT16 WINAPI GetPrivateProfileString16(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16,LPCSTR);
+FARPROC16 WINAPI GetProcAddress16(HMODULE16,SEGPTR);
+UINT16 WINAPI GetProfileInt16(LPCSTR,LPCSTR,INT16);
+INT16 WINAPI GetProfileString16(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16);
+UINT16 WINAPI GetSystemDirectory16(LPSTR,UINT16);
+UINT16 WINAPI GetTempFileName16(BYTE,LPCSTR,UINT16,LPSTR);
+LONG WINAPI GetVersion16(void);
+UINT16 WINAPI GetWindowsDirectory16(LPSTR,UINT16);
+DWORD WINAPI GlobalCompact16(DWORD);
+UINT16 WINAPI GlobalFlags16(HGLOBAL16);
+DWORD WINAPI GlobalHandle16(WORD);
+HGLOBAL16 WINAPI GlobalReAlloc16(HGLOBAL16,DWORD,UINT16);
+WORD WINAPI InitAtomTable16(WORD);
+BOOL16 WINAPI IsBadCodePtr16(SEGPTR);
+BOOL16 WINAPI IsBadHugeReadPtr16(SEGPTR,DWORD);
+BOOL16 WINAPI IsBadHugeWritePtr16(SEGPTR,DWORD);
+BOOL16 WINAPI IsBadReadPtr16(SEGPTR,UINT16);
+BOOL16 WINAPI IsBadStringPtr16(SEGPTR,UINT16);
+BOOL16 WINAPI IsBadWritePtr16(SEGPTR,UINT16);
+BOOL16 WINAPI IsDBCSLeadByte16(BYTE);
+HGLOBAL16 WINAPI LoadResource16(HINSTANCE16,HRSRC16);
+UINT16 WINAPI LocalCompact16(UINT16);
+UINT16 WINAPI LocalFlags16(HLOCAL16);
+HLOCAL16 WINAPI LocalFree16(HLOCAL16);
+HLOCAL16 WINAPI LocalHandle16(WORD);
+SEGPTR WINAPI LocalLock16(HLOCAL16);
+HLOCAL16 WINAPI LocalReAlloc16(HLOCAL16,WORD,UINT16);
+UINT16 WINAPI LocalShrink16(HGLOBAL16,UINT16);
+UINT16 WINAPI LocalSize16(HLOCAL16);
+BOOL16 WINAPI LocalUnlock16(HLOCAL16);
+HGLOBAL16 WINAPI LockSegment16(HGLOBAL16);
+FARPROC16 WINAPI MakeProcInstance16(FARPROC16,HANDLE16);
+VOID WINAPI OutputDebugString16(LPCSTR);
+DWORD WINAPI RegCreateKey16(HKEY,LPCSTR,LPHKEY);
+DWORD WINAPI RegDeleteKey16(HKEY,LPCSTR);
+DWORD WINAPI RegDeleteValue16(HKEY,LPSTR);
+DWORD WINAPI RegEnumKey16(HKEY,DWORD,LPSTR,DWORD);
+DWORD WINAPI RegEnumValue16(HKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
+DWORD WINAPI RegOpenKey16(HKEY,LPCSTR,LPHKEY);
+DWORD WINAPI RegQueryValue16(HKEY,LPSTR,LPSTR,LPDWORD);
+DWORD WINAPI RegQueryValueEx16(HKEY,LPSTR,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
+DWORD WINAPI RegSetValue16(HKEY,LPCSTR,DWORD,LPCSTR,DWORD);
+DWORD WINAPI RegSetValueEx16(HKEY,LPSTR,DWORD,DWORD,LPBYTE,DWORD);
+BOOL16 WINAPI RemoveDirectory16(LPCSTR);
+BOOL16 WINAPI SetCurrentDirectory16(LPCSTR);
+UINT16 WINAPI SetErrorMode16(UINT16);
+BOOL16 WINAPI SetFileAttributes16(LPCSTR,DWORD);
+UINT16 WINAPI SetHandleCount16(UINT16);
+LONG WINAPI SetSwapAreaSize16(WORD);
+DWORD WINAPI SizeofResource16(HMODULE16,HRSRC16);
+void WINAPI UnlockSegment16(HGLOBAL16);
+BOOL16 WINAPI WritePrivateProfileString16(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
+BOOL16 WINAPI WriteProfileString16(LPCSTR,LPCSTR,LPCSTR);
+VOID WINAPI Yield16(void);
+SEGPTR WINAPI lstrcat16(SEGPTR,LPCSTR);
+SEGPTR WINAPI lstrcatn16(SEGPTR,LPCSTR,INT16);
+SEGPTR WINAPI lstrcpy16(SEGPTR,LPCSTR);
+SEGPTR WINAPI lstrcpyn16(SEGPTR,LPCSTR,INT16);
+INT16 WINAPI lstrlen16(LPCSTR);
+HINSTANCE16 WINAPI WinExec16(LPCSTR,UINT16);
+LONG WINAPI _hread16(HFILE16,LPVOID,LONG);
+LONG WINAPI _hwrite16(HFILE16,LPCSTR,LONG);
+HFILE16 WINAPI _lcreat16(LPCSTR,INT16);
+HFILE16 WINAPI _lclose16(HFILE16);
+LONG WINAPI _llseek16(HFILE16,LONG,INT16);
+HFILE16 WINAPI _lopen16(LPCSTR,INT16);
+UINT16 WINAPI _lread16(HFILE16,LPVOID,UINT16);
+UINT16 WINAPI _lwrite16(HFILE16,LPCSTR,UINT16);
+BOOL16 WINAPI WritePrivateProfileSection16(LPCSTR,LPCSTR,LPCSTR);
+BOOL16 WINAPI WritePrivateProfileStruct16(LPCSTR,LPCSTR,LPVOID,UINT16,LPCSTR);
+DWORD WINAPI GetSelectorBase(WORD);
+WORD WINAPI SetSelectorBase(WORD,DWORD);
+
+/* Extra functions that don't exist in the Windows API */
+
+HPEN16 WINAPI GetSysColorPen16(INT16);
+UINT32 WINAPI WIN16_GetTempDrive(BYTE);
+SEGPTR WINAPI WIN16_LockResource16(HGLOBAL16);
+LONG WINAPI WIN16_hread(HFILE16,SEGPTR,LONG);
+UINT16 WINAPI WIN16_lread(HFILE16,SEGPTR,UINT16);
+
+#endif /* _INCLUDE_WINE_WINBASE16_H */
diff --git a/include/wine/winesound.h b/include/wine/winesound.h
new file mode 100644
index 0000000..0200bbe
--- /dev/null
+++ b/include/wine/winesound.h
@@ -0,0 +1,53 @@
+#ifndef _WINE_SOUND_H
+#define _WINE_SOUND_H
+
+#include "wintypes.h"
+
+VOID WINAPI CloseSound(VOID);
+INT16 WINAPI CountVoiceNotes16(INT16);
+DWORD WINAPI CountVoiceNotes32(DWORD);
+#define CountVoiceNotes WINELIB_NAME(CountVoiceNotes)
+LPINT16 WINAPI GetThresholdEvent16(void);
+LPDWORD WINAPI GetThresholdEvent32(void);
+#define GetThresholdEvent WINELIB_NAME(GetThresholdEvent)
+INT16 WINAPI GetThresholdStatus16(void);
+DWORD WINAPI GetThresholdStatus32(void);
+#define GetThresholdStatus WINELIB_NAME(GetThresholdStatus)
+INT16 WINAPI OpenSound16(void);
+VOID WINAPI OpenSound32(void);
+#define OpenSound WINELIB_NAME(OpenSound)
+INT16 WINAPI SetSoundNoise16(INT16,INT16);
+DWORD WINAPI SetSoundNoise32(DWORD,DWORD);
+#define SetSoundNoise WINELIB_NAME(SetSoundNoise)
+INT16 WINAPI SetVoiceAccent16(INT16,INT16,INT16,INT16,INT16);
+DWORD WINAPI SetVoiceAccent32(DWORD,DWORD,DWORD,DWORD,DWORD);
+#define SetVoiceAccent WINELIB_NAME(SetVoiceAccent)
+INT16 WINAPI SetVoiceEnvelope16(INT16,INT16,INT16);
+DWORD WINAPI SetVoiceEnvelope32(DWORD,DWORD,DWORD);
+#define SetVoiceEnvelope WINELIB_NAME(SetVoiceEnvelope)
+INT16 WINAPI SetVoiceNote16(INT16,INT16,INT16,INT16);
+DWORD WINAPI SetVoiceNote32(DWORD,DWORD,DWORD,DWORD);
+#define SetVoiceNote WINELIB_NAME(SetVoiceNote)
+INT16 WINAPI SetVoiceQueueSize16(INT16,INT16);
+DWORD WINAPI SetVoiceQueueSize32(DWORD,DWORD);
+#define SetVoiceQueueSize WINELIB_NAME(SetVoiceQueueSize)
+INT16 WINAPI SetVoiceSound16(INT16,DWORD,INT16);
+DWORD WINAPI SetVoiceSound32(DWORD,DWORD,DWORD);
+#define SetVoiceSound WINELIB_NAME(SetVoiceSound)
+INT16 WINAPI SetVoiceThreshold16(INT16,INT16);
+DWORD WINAPI SetVoiceThreshold32(DWORD,DWORD);
+#define SetVoiceThreshold WINELIB_NAME(SetVoiceThreshold)
+INT16 WINAPI StartSound16(void);
+VOID WINAPI StartSound32(void);
+#define StartSound WINELIB_NAME(StartSound)
+INT16 WINAPI StopSound16(void);
+VOID WINAPI StopSound32(void);
+#define StopSound WINELIB_NAME(StopSound)
+INT16 WINAPI SyncAllVoices16(void);
+DWORD WINAPI SyncAllVoices32(void);
+#define SyncAllVoices WINELIB_NAME(SyncAllVoices)
+INT16 WINAPI WaitSoundState16(INT16);
+DWORD WINAPI WaitSoundState32(DWORD);
+#define WaitSoundState WINELIB_NAME(WaitSoundState)
+
+#endif /* _WINE_SOUND_H */
diff --git a/include/wine/winestring.h b/include/wine/winestring.h
new file mode 100644
index 0000000..298ed8f
--- /dev/null
+++ b/include/wine/winestring.h
@@ -0,0 +1,17 @@
+#ifndef _INCLUDE_WINE_STRINGS_H
+#define _INCLUDE_WINE_STRINGS_H
+INT16 WINAPI WideCharToLocal16(LPSTR,LPWSTR,INT16);
+INT32 WINAPI WideCharToLocal32(LPSTR,LPWSTR,INT32);
+#define WideCharToLocal WINELIB_NAME(WideCharToLocal)
+INT16 WINAPI LocalToWideChar16(LPWSTR,LPSTR,INT16);
+INT32 WINAPI LocalToWideChar32(LPWSTR,LPSTR,INT32);
+#define LocalToWideChar WINELIB_NAME(LocalToWideChar)
+INT32 WINAPI lstrncmp32A(LPCSTR,LPCSTR,INT32);
+INT32 WINAPI lstrncmp32W(LPCWSTR,LPCWSTR,INT32);
+INT32 WINAPI lstrncmpi32A(LPCSTR,LPCSTR,INT32);
+INT32 WINAPI lstrncmpi32W(LPCWSTR,LPCWSTR,INT32);
+LPWSTR WINAPI lstrcpyAtoW(LPWSTR,LPCSTR);
+LPSTR WINAPI lstrcpyWtoA(LPSTR,LPCWSTR);
+LPWSTR WINAPI lstrcpynAtoW(LPWSTR,LPCSTR,INT32);
+LPSTR WINAPI lstrcpynWtoA(LPSTR,LPCWSTR,INT32);
+#endif /* _INCLUDE_WINE_STRINGS_H */
diff --git a/include/wine/winuser16.h b/include/wine/winuser16.h
index 491143c..6dabd8e 100644
--- a/include/wine/winuser16.h
+++ b/include/wine/winuser16.h
@@ -190,9 +190,313 @@
DWORD dwLanguageId;
} MSGBOXPARAMS16,*LPMSGBOXPARAMS16;
+ /* Windows */
+
+typedef struct
+{
+ LPVOID lpCreateParams;
+ HINSTANCE16 hInstance;
+ HMENU16 hMenu;
+ HWND16 hwndParent;
+ INT16 cy;
+ INT16 cx;
+ INT16 y;
+ INT16 x;
+ LONG style WINE_PACKED;
+ SEGPTR lpszName WINE_PACKED;
+ SEGPTR lpszClass WINE_PACKED;
+ DWORD dwExStyle WINE_PACKED;
+} CREATESTRUCT16, *LPCREATESTRUCT16;
+
+typedef struct
+{
+ HMENU16 hWindowMenu;
+ UINT16 idFirstChild;
+} CLIENTCREATESTRUCT16, *LPCLIENTCREATESTRUCT16;
+
+typedef struct
+{
+ SEGPTR szClass;
+ SEGPTR szTitle;
+ HINSTANCE16 hOwner;
+ INT16 x;
+ INT16 y;
+ INT16 cx;
+ INT16 cy;
+ DWORD style WINE_PACKED;
+ LPARAM lParam WINE_PACKED;
+} MDICREATESTRUCT16, *LPMDICREATESTRUCT16;
+
+ /* WM_GETMINMAXINFO struct */
+typedef struct
+{
+ POINT16 ptReserved;
+ POINT16 ptMaxSize;
+ POINT16 ptMaxPosition;
+ POINT16 ptMinTrackSize;
+ POINT16 ptMaxTrackSize;
+} MINMAXINFO16;
+
+ /* WM_WINDOWPOSCHANGING/CHANGED struct */
+typedef struct
+{
+ HWND16 hwnd;
+ HWND16 hwndInsertAfter;
+ INT16 x;
+ INT16 y;
+ INT16 cx;
+ INT16 cy;
+ UINT16 flags;
+} WINDOWPOS16, *LPWINDOWPOS16;
+
+ /* WM_NCCALCSIZE parameter structure */
+typedef struct
+{
+ RECT16 rgrc[3];
+ SEGPTR lppos;
+} NCCALCSIZE_PARAMS16, *LPNCCALCSIZE_PARAMS16;
+
+ /* Journalling hook structure */
+
+typedef struct
+{
+ UINT16 message;
+ UINT16 paramL;
+ UINT16 paramH;
+ DWORD time WINE_PACKED;
+} EVENTMSG16, *LPEVENTMSG16;
+
+ /* Mouse hook structure */
+
+typedef struct
+{
+ POINT16 pt;
+ HWND16 hwnd;
+ UINT16 wHitTestCode;
+ DWORD dwExtraInfo;
+} MOUSEHOOKSTRUCT16, *LPMOUSEHOOKSTRUCT16;
+
+ /* Hardware hook structure */
+
+typedef struct
+{
+ HWND16 hWnd;
+ UINT16 wMessage;
+ WPARAM16 wParam;
+ LPARAM lParam WINE_PACKED;
+} HARDWAREHOOKSTRUCT16, *LPHARDWAREHOOKSTRUCT16;
+
+/* Scrollbar messages */
+#define SBM_SETPOS16 (WM_USER+0)
+#define SBM_GETPOS16 (WM_USER+1)
+#define SBM_SETRANGE16 (WM_USER+2)
+#define SBM_GETRANGE16 (WM_USER+3)
+#define SBM_ENABLE_ARROWS16 (WM_USER+4)
+#define SBM_SETRANGEREDRAW16 WM_NULL /* Not in Win16 */
+#define SBM_SETSCROLLINFO16 WM_NULL /* Not in Win16 */
+#define SBM_GETSCROLLINFO16 WM_NULL /* Not in Win16 */
+
+ /* CBT hook structures */
+
+typedef struct
+{
+ CREATESTRUCT16 *lpcs;
+ HWND16 hwndInsertAfter;
+} CBT_CREATEWND16, *LPCBT_CREATEWND16;
+
+typedef struct
+{
+ BOOL16 fMouse;
+ HWND16 hWndActive;
+} CBTACTIVATESTRUCT16, *LPCBTACTIVATESTRUCT16;
+
+ /* Debug hook structure */
+
+typedef struct
+{
+ HMODULE16 hModuleHook;
+ LPARAM reserved WINE_PACKED;
+ LPARAM lParam WINE_PACKED;
+ WPARAM16 wParam;
+ INT16 code;
+} DEBUGHOOKINFO16, *LPDEBUGHOOKINFO16;
+
+#define GETMAXLPT 8
+#define GETMAXCOM 9
+
+/* GetFreeSystemResources() parameters */
+
+#define GFSR_SYSTEMRESOURCES 0x0000
+#define GFSR_GDIRESOURCES 0x0001
+#define GFSR_USERRESOURCES 0x0002
+
+#define MAKEINTRESOURCE16(i) (SEGPTR)((DWORD)((WORD)(i)))
+
+/* Predefined resource types */
+#define RT_CURSOR16 MAKEINTRESOURCE16(1)
+#define RT_BITMAP16 MAKEINTRESOURCE16(2)
+#define RT_ICON16 MAKEINTRESOURCE16(3)
+#define RT_MENU16 MAKEINTRESOURCE16(4)
+#define RT_DIALOG16 MAKEINTRESOURCE16(5)
+#define RT_STRING16 MAKEINTRESOURCE16(6)
+#define RT_FONTDIR16 MAKEINTRESOURCE16(7)
+#define RT_FONT16 MAKEINTRESOURCE16(8)
+#define RT_ACCELERATOR16 MAKEINTRESOURCE16(9)
+#define RT_RCDATA16 MAKEINTRESOURCE16(10)
+#define RT_MESSAGELIST16 MAKEINTRESOURCE16(11)
+#define RT_GROUP_CURSOR16 MAKEINTRESOURCE16(12)
+#define RT_GROUP_ICON16 MAKEINTRESOURCE16(14)
+/* Predefined resources */
+#define IDI_APPLICATION16 MAKEINTRESOURCE16(32512)
+#define IDI_HAND16 MAKEINTRESOURCE16(32513)
+#define IDI_QUESTION16 MAKEINTRESOURCE16(32514)
+#define IDI_EXCLAMATION16 MAKEINTRESOURCE16(32515)
+#define IDI_ASTERISK16 MAKEINTRESOURCE16(32516)
+
+#define IDC_BUMMER16 MAKEINTRESOURCE16(100)
+#define IDC_ARROW16 MAKEINTRESOURCE16(32512)
+#define IDC_IBEAM16 MAKEINTRESOURCE16(32513)
+#define IDC_WAIT16 MAKEINTRESOURCE16(32514)
+#define IDC_CROSS16 MAKEINTRESOURCE16(32515)
+#define IDC_UPARROW16 MAKEINTRESOURCE16(32516)
+#define IDC_SIZE16 MAKEINTRESOURCE16(32640)
+#define IDC_ICON16 MAKEINTRESOURCE16(32641)
+#define IDC_SIZENWSE16 MAKEINTRESOURCE16(32642)
+#define IDC_SIZENESW16 MAKEINTRESOURCE16(32643)
+#define IDC_SIZEWE16 MAKEINTRESOURCE16(32644)
+#define IDC_SIZENS16 MAKEINTRESOURCE16(32645)
+#define IDC_SIZEALL16 MAKEINTRESOURCE16(32646)
+#define IDC_NO16 MAKEINTRESOURCE16(32648)
+#define IDC_APPSTARTING16 MAKEINTRESOURCE16(32650)
+#define IDC_HELP16 MAKEINTRESOURCE16(32651)
+
+/* CreateWindow() coordinates */
+#define CW_USEDEFAULT16 ((INT16)0x8000)
+
+/* Win16 button control messages */
+#define BM_GETCHECK16 (WM_USER+0)
+#define BM_SETCHECK16 (WM_USER+1)
+#define BM_GETSTATE16 (WM_USER+2)
+#define BM_SETSTATE16 (WM_USER+3)
+#define BM_SETSTYLE16 (WM_USER+4)
+#define BM_CLICK16 WM_NULL /* Does not exist in Win16 */
+#define BM_GETIMAGE16 WM_NULL /* Does not exist in Win16 */
+#define BM_SETIMAGE16 WM_NULL /* Does not exist in Win16 */
+
+/* Static Control Messages */
+#define STM_SETICON16 (WM_USER+0)
+#define STM_GETICON16 (WM_USER+1)
+
+/* Edit control messages */
+#define EM_GETSEL16 (WM_USER+0)
+#define EM_SETSEL16 (WM_USER+1)
+#define EM_GETRECT16 (WM_USER+2)
+#define EM_SETRECT16 (WM_USER+3)
+#define EM_SETRECTNP16 (WM_USER+4)
+#define EM_SCROLL16 (WM_USER+5)
+#define EM_LINESCROLL16 (WM_USER+6)
+#define EM_SCROLLCARET16 (WM_USER+7)
+#define EM_GETMODIFY16 (WM_USER+8)
+#define EM_SETMODIFY16 (WM_USER+9)
+#define EM_GETLINECOUNT16 (WM_USER+10)
+#define EM_LINEINDEX16 (WM_USER+11)
+#define EM_SETHANDLE16 (WM_USER+12)
+#define EM_GETHANDLE16 (WM_USER+13)
+#define EM_GETTHUMB16 (WM_USER+14)
+#define EM_LINELENGTH16 (WM_USER+17)
+#define EM_REPLACESEL16 (WM_USER+18)
+#define EM_GETLINE16 (WM_USER+20)
+#define EM_LIMITTEXT16 (WM_USER+21)
+#define EM_CANUNDO16 (WM_USER+22)
+#define EM_UNDO16 (WM_USER+23)
+#define EM_FMTLINES16 (WM_USER+24)
+#define EM_LINEFROMCHAR16 (WM_USER+25)
+#define EM_SETTABSTOPS16 (WM_USER+27)
+#define EM_SETPASSWORDCHAR16 (WM_USER+28)
+#define EM_EMPTYUNDOBUFFER16 (WM_USER+29)
+#define EM_GETFIRSTVISIBLELINE16 (WM_USER+30)
+#define EM_SETREADONLY16 (WM_USER+31)
+#define EM_SETWORDBREAKPROC16 (WM_USER+32)
+#define EM_GETWORDBREAKPROC16 (WM_USER+33)
+#define EM_GETPASSWORDCHAR16 (WM_USER+34)
+/*
+ not in win16:
+ EM_SETMARGINS16 WM_NULL
+ EM_GETMARGINS16 WM_NULL
+ EM_GETLIMITTEXT16 WM_NULL
+ EM_POSFROMCHAR16 WM_NULL
+ EM_CHARFROMPOS16 WM_NULL
+ EM_SETLIMITTEXT16 WM_NULL - no name change in win16
+*/
+
+typedef struct
+{
+ UINT16 CtlType;
+ UINT16 CtlID;
+ UINT16 itemID;
+ UINT16 itemAction;
+ UINT16 itemState;
+ HWND16 hwndItem;
+ HDC16 hDC;
+ RECT16 rcItem WINE_PACKED;
+ DWORD itemData WINE_PACKED;
+} DRAWITEMSTRUCT16, *PDRAWITEMSTRUCT16, *LPDRAWITEMSTRUCT16;
+
+typedef struct
+{
+ UINT16 CtlType;
+ UINT16 CtlID;
+ UINT16 itemID;
+ UINT16 itemWidth;
+ UINT16 itemHeight;
+ DWORD itemData WINE_PACKED;
+} MEASUREITEMSTRUCT16, *PMEASUREITEMSTRUCT16, *LPMEASUREITEMSTRUCT16;
+
+typedef struct
+{
+ UINT16 CtlType;
+ UINT16 CtlID;
+ UINT16 itemID;
+ HWND16 hwndItem;
+ DWORD itemData;
+} DELETEITEMSTRUCT16, *LPDELETEITEMSTRUCT16;
+
+typedef struct
+{
+ UINT16 CtlType;
+ UINT16 CtlID;
+ HWND16 hwndItem;
+ UINT16 itemID1;
+ DWORD itemData1;
+ UINT16 itemID2;
+ DWORD itemData2 WINE_PACKED;
+} COMPAREITEMSTRUCT16, *LPCOMPAREITEMSTRUCT16;
#pragma pack(4)
+BOOL16 WINAPI CheckMenuRadioItem16(HMENU16,UINT16,UINT16,UINT16,UINT16);
+HICON16 WINAPI CopyImage16(HANDLE16,UINT16,INT16,INT16,UINT16);
+HICON16 WINAPI CreateIconFromResource16(LPBYTE,UINT16,BOOL16,DWORD);
+BOOL16 WINAPI EnumChildWindows16(HWND16,WNDENUMPROC16,LPARAM);
+INT16 WINAPI EnumProps16(HWND16,PROPENUMPROC16);
+BOOL16 WINAPI EnumWindows16(WNDENUMPROC16,LPARAM);
+DWORD WINAPI GetAppCompatFlags16(HTASK16);
+INT16 WINAPI GetKBCodePage16(void);
+INT16 WINAPI GetKeyboardType16(INT16);
+INT16 WINAPI GetKeyNameText16(LONG,LPSTR,INT16);
+INT16 WINAPI GetWindowRgn16(HWND16,HRGN16);
+BOOL16 WINAPI IsWindow16(HWND16);
+INT16 WINAPI LookupIconIdFromDirectory16(LPBYTE,BOOL16);
+UINT16 WINAPI MapVirtualKey16(UINT16,UINT16);
+LRESULT WINAPI SendMessageTimeout16(HWND16,UINT16,WPARAM16,LPARAM,UINT16,
+ UINT16,LPWORD);
+FARPROC16 WINAPI SetWindowsHook16(INT16,HOOKPROC16);
+HHOOK WINAPI SetWindowsHookEx16(INT16,HOOKPROC16,HINSTANCE16,HTASK16);
+BOOL16 WINAPI UnhookWindowsHook16(INT16,HOOKPROC16);
+BOOL16 WINAPI UnhookWindowsHookEx16(HHOOK);
+INT16 WINAPIV wsnprintf16(LPSTR,UINT16,LPCSTR,...);
+INT16 WINAPIV wsprintf16(LPSTR,LPCSTR,...);
+INT16 WINAPI wvsnprintf16(LPSTR,UINT16,LPCSTR,LPCVOID);
VOID WINAPI CalcChildScroll(HWND16,WORD);
VOID WINAPI CascadeChildWindows(HWND16,WORD);
INT16 WINAPI CloseComm(INT16);
@@ -297,8 +601,6 @@
INT16 WINAPI DlgDirList16(HWND16,LPSTR,INT16,INT16,UINT16);
INT16 WINAPI DlgDirListComboBox16(HWND16,LPSTR,INT16,INT16,UINT16);
BOOL16 WINAPI DlgDirSelectComboBoxEx16(HWND16,LPSTR,INT16,INT16);
-BOOL32 WINAPI DlgDirSelectComboBoxEx32A(HWND32,LPSTR,INT32,INT32);
-BOOL32 WINAPI DlgDirSelectComboBoxEx32W(HWND32,LPWSTR,INT32,INT32);
BOOL16 WINAPI DlgDirSelectEx16(HWND16,LPSTR,INT16,INT16);
BOOL16 WINAPI DragDetect16(HWND16,POINT16);
DWORD WINAPI DragObject16(HWND16,HWND16,UINT16,HANDLE16,WORD,HCURSOR16);
@@ -548,6 +850,23 @@
BOOL16 WINAPI BuildCommDCB16(LPCSTR,LPDCB16);
INT16 WINAPI GetCommState16(INT16,LPDCB16);
INT16 WINAPI SetCommState16(LPDCB16);
+INT16 WINAPI lstrcmp16(LPCSTR,LPCSTR);
+INT16 WINAPI lstrcmpi16(LPCSTR,LPCSTR);
+
+#ifdef __WINE__
+typedef VOID (*SYSTEMTIMERPROC)(WORD);
+
+WORD WINAPI CreateSystemTimer(WORD,SYSTEMTIMERPROC);
+VOID WINAPI DisableSystemTimers(void);
+VOID WINAPI EnableSystemTimers(void);
+DWORD WINAPI GetFileResourceSize(LPCSTR,SEGPTR,SEGPTR,LPDWORD);
+DWORD WINAPI GetFileResource(LPCSTR,SEGPTR,SEGPTR,DWORD,DWORD,LPVOID);
+BYTE WINAPI GetTempDrive(BYTE);
+FARPROC16 WINAPI SetTaskSignalProc(HTASK16,FARPROC16);
+#endif /* __WINE__ */
+BOOL16 WINAPI GrayString16(HDC16,HBRUSH16,GRAYSTRINGPROC16,LPARAM,
+ INT16,INT16,INT16,INT16,INT16);
+BOOL16 WINAPI EnumTaskWindows16(HTASK16,WNDENUMPROC16,LPARAM);
#endif /* __WINE_WINUSER16_H */
diff --git a/include/winnetwk.h b/include/winnetwk.h
new file mode 100644
index 0000000..9999706
--- /dev/null
+++ b/include/winnetwk.h
@@ -0,0 +1,84 @@
+#ifndef _WINNETWK_H_
+#define _WINNETWK_H_
+
+#include "wintypes.h"
+
+
+typedef struct {
+ DWORD dwScope;
+ DWORD dwType;
+ DWORD dwDisplayType;
+ DWORD dwUsage;
+ LPSTR lpLocalName;
+ LPSTR lpRemoteName;
+ LPSTR lpComment ;
+ LPSTR lpProvider;
+} NETRESOURCE32A,*LPNETRESOURCE32A;
+
+typedef struct {
+ DWORD dwScope;
+ DWORD dwType;
+ DWORD dwDisplayType;
+ DWORD dwUsage;
+ LPWSTR lpLocalName;
+ LPWSTR lpRemoteName;
+ LPWSTR lpComment ;
+ LPWSTR lpProvider;
+} NETRESOURCE32W,*LPNETRESOURCE32W;
+
+DECL_WINELIB_TYPE_AW(NETRESOURCE)
+DECL_WINELIB_TYPE_AW(LPNETRESOURCE)
+
+typedef struct {
+ DWORD cbStructure; /* size of this structure in bytes */
+ HWND32 hwndOwner; /* owner window for the dialog */
+ LPNETRESOURCE32A lpConnRes;/* Requested Resource info */
+ DWORD dwFlags; /* flags (see below) */
+ DWORD dwDevNum; /* number of devices connected to */
+} CONNECTDLGSTRUCT32A, *LPCONNECTDLGSTRUCT32A;
+typedef struct {
+ DWORD cbStructure; /* size of this structure in bytes */
+ HWND32 hwndOwner; /* owner window for the dialog */
+ LPNETRESOURCE32W lpConnRes;/* Requested Resource info */
+ DWORD dwFlags; /* flags (see below) */
+ DWORD dwDevNum; /* number of devices connected to */
+} CONNECTDLGSTRUCT32W, *LPCONNECTDLGSTRUCT32W;
+
+DECL_WINELIB_TYPE_AW(CONNECTDLGSTRUCT)
+DECL_WINELIB_TYPE_AW(LPCONNECTDLGSTRUCT)
+
+
+/**/
+#define CONNDLG_RO_PATH 0x00000001 /* Resource path should be read-only */
+#define CONNDLG_CONN_POINT 0x00000002 /* Netware -style movable connection point enabled */
+#define CONNDLG_USE_MRU 0x00000004 /* Use MRU combobox */
+#define CONNDLG_HIDE_BOX 0x00000008 /* Hide persistent connect checkbox */
+#define CONNDLG_PERSIST 0x00000010 /* Force persistent connection */
+#define CONNDLG_NOT_PERSIST 0x00000020 /* Force connection NOT persistent */
+
+
+typedef struct {
+ DWORD cbStructure;
+ DWORD dwFlags;
+ DWORD dwSpeed;
+ DWORD dwDelay;
+ DWORD dwOptDataSize;
+} NETCONNECTINFOSTRUCT,*LPNETCONNECTINFOSTRUCT;
+
+
+UINT32 WINAPI WNetAddConnection2_32A(LPNETRESOURCE32A,LPCSTR,LPCSTR,DWORD);
+UINT32 WINAPI WNetAddConnection2_32W(LPNETRESOURCE32W,LPCWSTR,LPCWSTR,DWORD);
+#define WNetAddConnection2 WINELIB_NAME_AW(WNetAddConnection2_)
+UINT32 WINAPI WNetAddConnection3_32A(HWND32,LPNETRESOURCE32A,LPCSTR,LPCSTR,DWORD);
+UINT32 WINAPI WNetAddConnection3_32W(HWND32,LPNETRESOURCE32W,LPCWSTR,LPCWSTR,DWORD);
+#define WNetAddConnection3 WINELIB_NAME_AW(WNetAddConnection3_)
+UINT32 WINAPI WNetConnectionDialog1_32(HWND32,DWORD);
+UINT32 WINAPI WNetConnectionDialog1_32A(LPCONNECTDLGSTRUCT32A);
+UINT32 WINAPI WNetConnectionDialog1_32W(LPCONNECTDLGSTRUCT32W);
+#define WNetConnectionDialog1 WINELIB_NAME_AW(WNetConnectionDialog1_)
+UINT32 WINAPI MultinetGetErrorText32A(DWORD,DWORD,DWORD);
+UINT32 WINAPI MultinetGetErrorText32W(DWORD,DWORD,DWORD);
+#define MultinetGetErrorText WINELIB_NAME_AW(MultinetGetErrorText_)
+
+
+#endif /* _WINNETWK_H_ */
diff --git a/include/winnls.h b/include/winnls.h
index 45eb8bf..21de998 100644
--- a/include/winnls.h
+++ b/include/winnls.h
@@ -1,6 +1,11 @@
#ifndef __WINE_WINNLS_H
#define __WINE_WINNLS_H
+#ifdef HAVE_WCTYPE_H
+#include <wctype.h> /* needed for towupper */
+#endif
+#include "wintypes.h"
+
/* flags to GetLocaleInfo */
#define LOCALE_NOUSEROVERRIDE 0x80000000
#define LOCALE_USE_CP_ACP 0x40000000
@@ -381,9 +386,11 @@
/* use this in a WineLib program if you really want all types */
#define LOCALE_TIMEDATEBOTH 0x00000300 /* full set */
+#ifndef HAVE_WCTYPE_H /* fight native wctype.h */
/* Prototypes for Unicode case conversion routines */
WCHAR towupper(WCHAR);
WCHAR towlower(WCHAR);
+#endif
/* Definitions for IsTextUnicode() function */
#define IS_TEXT_UNICODE_ASCII16 0x0001
@@ -398,4 +405,56 @@
IS_TEXT_UNICODE_SIGNATURE| \
IS_TEXT_UNICODE_ODD_LENGTH
+
+/* Character Type Flags */
+#define CT_CTYPE1 0x00000001 /* usual ctype */
+#define CT_CTYPE2 0x00000002 /* bidirectional layout info */
+#define CT_CTYPE3 0x00000004 /* textprocessing info */
+
+/* CType 1 Flag Bits */
+#define C1_UPPER 0x0001
+#define C1_LOWER 0x0002
+#define C1_DIGIT 0x0004
+#define C1_SPACE 0x0008
+#define C1_PUNCT 0x0010
+#define C1_CNTRL 0x0020
+#define C1_BLANK 0x0040
+#define C1_XDIGIT 0x0080
+#define C1_ALPHA 0x0100
+
+/* CType 2 Flag Bits */
+#define C2_LEFTTORIGHT 0x0001
+#define C2_RIGHTTOLEFT 0x0002
+#define C2_EUROPENUMBER 0x0003
+#define C2_EUROPESEPARATOR 0x0004
+#define C2_EUROPETERMINATOR 0x0005
+#define C2_ARABICNUMBER 0x0006
+#define C2_COMMONSEPARATOR 0x0007
+#define C2_BLOCKSEPARATOR 0x0008
+#define C2_SEGMENTSEPARATOR 0x0009
+#define C2_WHITESPACE 0x000A
+#define C2_OTHERNEUTRAL 0x000B
+#define C2_NOTAPPLICABLE 0x0000
+
+/* CType 3 Flag Bits */
+#define C3_NONSPACING 0x0001
+#define C3_DIACRITIC 0x0002
+#define C3_VOWELMARK 0x0004
+#define C3_SYMBOL 0x0008
+#define C3_KATAKANA 0x0010
+#define C3_HIRAGANA 0x0020
+#define C3_HALFWIDTH 0x0040
+#define C3_FULLWIDTH 0x0080
+#define C3_IDEOGRAPH 0x0100
+#define C3_KASHIDA 0x0200
+#define C3_LEXICAL 0x0400
+#define C3_ALPHA 0x8000
+#define C3_NOTAPPLICABLE 0x0000
+
+ /* FIXME: This does not belong to an interface file */
+UINT16 WINAPI CompareString16(DWORD,DWORD,LPCSTR,DWORD,LPCSTR,DWORD);
+INT16 WINAPI GetLocaleInfo16(LCID,LCTYPE,LPSTR,INT16);
+BOOL16 WINAPI GetStringType16(LCID,DWORD,LPCSTR,INT16,LPWORD);
+
+
#endif /* __WINE_WINNLS_H */
diff --git a/include/winnt.h b/include/winnt.h
index c98c365..8edbdd1 100644
--- a/include/winnt.h
+++ b/include/winnt.h
@@ -7,10 +7,33 @@
#ifndef __WINE_WINNT_H
#define __WINE_WINNT_H
-#include "windows.h"
+#include "wintypes.h"
+#pragma pack(1)
/* Defines */
+/* Argument 1 passed to the DllEntryProc. */
+#define DLL_PROCESS_DETACH 0 /* detach process (unload library) */
+#define DLL_PROCESS_ATTACH 1 /* attach process (load library) */
+#define DLL_THREAD_ATTACH 2 /* attach new thread */
+#define DLL_THREAD_DETACH 3 /* detach thread */
+
+
+/* u.x.wProcessorArchitecture (NT) */
+#define PROCESSOR_ARCHITECTURE_INTEL 0
+#define PROCESSOR_ARCHITECTURE_MIPS 1
+#define PROCESSOR_ARCHITECTURE_ALPHA 2
+#define PROCESSOR_ARCHITECTURE_PPC 3
+#define PROCESSOR_ARCHITECTURE_UNKNOWN 0xFFFF
+
+/* dwProcessorType */
+#define PROCESSOR_INTEL_386 386
+#define PROCESSOR_INTEL_486 486
+#define PROCESSOR_INTEL_PENTIUM 586
+#define PROCESSOR_MIPS_R4000 4000
+#define PROCESSOR_ALPHA_21064 21064
+
+
#define ANYSIZE_ARRAY 1
#define FIELD_OFFSET(type, field) \
@@ -292,6 +315,19 @@
PCONTEXT ContextRecord;
} EXCEPTION_POINTERS, *PEXCEPTION_POINTERS;
+typedef struct {
+ BYTE Value[6];
+} SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY,*LPSID_IDENTIFIER_AUTHORITY;
+
+typedef struct _SID {
+ BYTE Revision;
+ BYTE SubAuthorityCount;
+ SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
+ DWORD SubAuthority[1];
+} SID,*PSID,*LPSID;
+
+
+#pragma pack(4)
/*
* function pointer to a exception filter
*/
@@ -360,6 +396,20 @@
* LUID_AND_ATTRIBUTES
*/
+typedef struct _LARGE_INTEGER
+{
+ DWORD LowPart;
+ LONG HighPart;
+} LARGE_INTEGER,*LPLARGE_INTEGER;
+
+typedef struct _ULARGE_INTEGER
+{
+ DWORD LowPart;
+ DWORD HighPart;
+} ULARGE_INTEGER,*LPULARGE_INTEGER;
+
+typedef LARGE_INTEGER LUID,*LPLUID; /* locally unique ids */
+
typedef struct _LUID_AND_ATTRIBUTES {
LUID Luid;
DWORD Attributes;
@@ -394,16 +444,14 @@
/*
* ACL (and PACL LPACL?).
*/
-/*
-are defined in ntddl.h.
typedef struct _ACL {
- BYTE AclRevision;
- BYTE Sbz1;
- WORD AclSize;
- WORD AceCount;
- WORD Sbz2;
-} ACL, *PACL; PACL <=> LPACL? */
+ BYTE AclRevision;
+ BYTE Sbz1;
+ WORD AclSize;
+ WORD AceCount;
+ WORD Sbz2;
+} ACL, *LPACL;
/*
* TOKEN_DEFAULT_DACL
@@ -546,6 +594,36 @@
FILE_READ_ATTRIBUTES | SYNCHRONIZE)
+/* File attribute flags
+ */
+#define FILE_SHARE_READ 0x00000001L
+#define FILE_SHARE_WRITE 0x00000002L
+#define FILE_SHARE_DELETE 0x00000004L
+#define FILE_ATTRIBUTE_READONLY 0x00000001L
+#define FILE_ATTRIBUTE_HIDDEN 0x00000002L
+#define FILE_ATTRIBUTE_SYSTEM 0x00000004L
+#define FILE_ATTRIBUTE_LABEL 0x00000008L /* Not in Windows API */
+#define FILE_ATTRIBUTE_DIRECTORY 0x00000010L
+#define FILE_ATTRIBUTE_ARCHIVE 0x00000020L
+#define FILE_ATTRIBUTE_NORMAL 0x00000080L
+#define FILE_ATTRIBUTE_TEMPORARY 0x00000100L
+#define FILE_ATTRIBUTE_ATOMIC_WRITE 0x00000200L
+#define FILE_ATTRIBUTE_XACTION_WRITE 0x00000400L
+#define FILE_ATTRIBUTE_COMPRESSED 0x00000800L
+#define FILE_ATTRIBUTE_OFFLINE 0x00001000L
+
+/* File alignments (NT) */
+#define FILE_BYTE_ALIGNMENT 0x00000000
+#define FILE_WORD_ALIGNMENT 0x00000001
+#define FILE_LONG_ALIGNMENT 0x00000003
+#define FILE_QUAD_ALIGNMENT 0x00000007
+#define FILE_OCTA_ALIGNMENT 0x0000000f
+#define FILE_32_BYTE_ALIGNMENT 0x0000001f
+#define FILE_64_BYTE_ALIGNMENT 0x0000003f
+#define FILE_128_BYTE_ALIGNMENT 0x0000007f
+#define FILE_256_BYTE_ALIGNMENT 0x000000ff
+#define FILE_512_BYTE_ALIGNMENT 0x000001ff
+
/* Registry security values */
#define OWNER_SECURITY_INFORMATION 0x00000001
#define GROUP_SECURITY_INFORMATION 0x00000002
diff --git a/include/winreg.h b/include/winreg.h
index 9b6e1af..e86cc35 100644
--- a/include/winreg.h
+++ b/include/winreg.h
@@ -4,7 +4,7 @@
#ifndef __WINE_WINREG_H
#define __WINE_WINREG_H
-#include "wintypes.h"
+#include "winbase.h"
/* FIXME: should be in security.h or whereever */
#ifndef READ_CONTROL
@@ -88,7 +88,128 @@
KEY_CREATE_LINK \
)
+/* Used by: ControlService */
+typedef struct _SERVICE_STATUS {
+ DWORD dwServiceType;
+ DWORD dwCurrentState;
+ DWORD dwControlsAccepted;
+ DWORD dwWin32ExitCode;
+ DWORD dwServiceSpecificExitCode;
+ DWORD dwCheckPoint;
+ DWORD dwWaitHint;
+} SERVICE_STATUS, *LPSERVICE_STATUS;
+
+HANDLE32 WINAPI OpenSCManager32A(LPCSTR,LPCSTR,DWORD);
+HANDLE32 WINAPI OpenSCManager32W(LPCWSTR,LPCWSTR,DWORD);
+#define OpenSCManager WINELIB_NAME_AW(OpenSCManager)
+HANDLE32 WINAPI OpenService32A(HANDLE32,LPCSTR,DWORD);
+HANDLE32 WINAPI OpenService32W(HANDLE32,LPCWSTR,DWORD);
+#define OpenService WINELIB_NAME_AW(OpenService)
+BOOL32 WINAPI LookupPrivilegeValue32A(LPCSTR,LPCSTR,LPVOID);
+BOOL32 WINAPI LookupPrivilegeValue32W(LPCWSTR,LPCWSTR,LPVOID);
+#define LookupPrivilegeValue WINELIB_NAME_AW(LookupPrivilegeValue)
+HANDLE32 WINAPI RegisterEventSource32A(LPCSTR,LPCSTR);
+HANDLE32 WINAPI RegisterEventSource32W(LPCWSTR,LPCWSTR);
+#define RegisterEventSource WINELIB_NAME_AW(RegisterEventSource)
+DWORD WINAPI RegCreateKeyEx32A(HKEY,LPCSTR,DWORD,LPSTR,DWORD,REGSAM,
+ LPSECURITY_ATTRIBUTES,LPHKEY,LPDWORD);
+DWORD WINAPI RegCreateKeyEx32W(HKEY,LPCWSTR,DWORD,LPWSTR,DWORD,REGSAM,
+ LPSECURITY_ATTRIBUTES,LPHKEY,LPDWORD);
+#define RegCreateKeyEx WINELIB_NAME_AW(RegCreateKeyEx)
+LONG WINAPI RegSaveKey32A(HKEY,LPCSTR,LPSECURITY_ATTRIBUTES);
+LONG WINAPI RegSaveKey32W(HKEY,LPCWSTR,LPSECURITY_ATTRIBUTES);
+#define RegSaveKey WINELIB_NAME_AW(RegSaveKey)
+LONG WINAPI RegSetKeySecurity(HKEY,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR);
+BOOL32 WINAPI CloseServiceHandle(HANDLE32);
+BOOL32 WINAPI ControlService(HANDLE32,DWORD,LPSERVICE_STATUS);
+BOOL32 WINAPI DeleteService(HANDLE32);
+BOOL32 WINAPI DeregisterEventSource(HANDLE32);
+BOOL32 WINAPI GetFileSecurity32A(LPCSTR,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR,DWORD,LPDWORD);
+BOOL32 WINAPI GetFileSecurity32W(LPCWSTR,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR,DWORD,LPDWORD);
+#define GetFileSecurity WINELIB_NAME_AW(GetFileSecurity)
+BOOL32 WINAPI GetUserName32A(LPSTR,LPDWORD);
+BOOL32 WINAPI GetUserName32W(LPWSTR,LPDWORD);
+#define GetUserName WINELIB_NAME_AW(GetUserName)
+BOOL32 WINAPI OpenProcessToken(HANDLE32,DWORD,HANDLE32*);
+LONG WINAPI RegConnectRegistry32A(LPCSTR,HKEY,LPHKEY);
+LONG WINAPI RegConnectRegistry32W(LPCWSTR,HKEY,LPHKEY);
+#define RegConnectRegistry WINELIB_NAME_AW(RegConnectRegistry)
+DWORD WINAPI RegEnumKeyEx32A(HKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPSTR,
+ LPDWORD,LPFILETIME);
+DWORD WINAPI RegEnumKeyEx32W(HKEY,DWORD,LPWSTR,LPDWORD,LPDWORD,LPWSTR,
+ LPDWORD,LPFILETIME);
+#define RegEnumKeyEx WINELIB_NAME_AW(RegEnumKeyEx)
+LONG WINAPI RegGetKeySecurity(HKEY,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR,LPDWORD);
+LONG WINAPI RegLoadKey32A(HKEY,LPCSTR,LPCSTR);
+LONG WINAPI RegLoadKey32W(HKEY,LPCWSTR,LPCWSTR);
+#define RegLoadKey WINELIB_NAME_AW(RegLoadKey)
+LONG WINAPI RegNotifyChangeKeyValue(HKEY,BOOL32,DWORD,HANDLE32,BOOL32);
+DWORD WINAPI RegOpenKeyEx32W(HKEY,LPCWSTR,DWORD,REGSAM,LPHKEY);
+DWORD WINAPI RegOpenKeyEx32A(HKEY,LPCSTR,DWORD,REGSAM,LPHKEY);
+#define RegOpenKeyEx WINELIB_NAME_AW(RegOpenKeyEx)
+DWORD WINAPI RegQueryInfoKey32W(HKEY,LPWSTR,LPDWORD,LPDWORD,LPDWORD,
+ LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,
+ LPDWORD,LPFILETIME);
+DWORD WINAPI RegQueryInfoKey32A(HKEY,LPSTR,LPDWORD,LPDWORD,LPDWORD,
+ LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,
+ LPDWORD,LPFILETIME);
+#define RegQueryInfoKey WINELIB_NAME_AW(RegQueryInfoKey)
+LONG WINAPI RegReplaceKey32A(HKEY,LPCSTR,LPCSTR,LPCSTR);
+LONG WINAPI RegReplaceKey32W(HKEY,LPCWSTR,LPCWSTR,LPCWSTR);
+#define RegReplaceKey WINELIB_NAME_AW(RegReplaceKey)
+LONG WINAPI RegRestoreKey32A(HKEY,LPCSTR,DWORD);
+LONG WINAPI RegRestoreKey32W(HKEY,LPCWSTR,DWORD);
+#define RegRestoreKey WINELIB_NAME_AW(RegRestoreKey)
+LONG WINAPI RegUnLoadKey32A(HKEY,LPCSTR);
+LONG WINAPI RegUnLoadKey32W(HKEY,LPCWSTR);
+#define RegUnLoadKey WINELIB_NAME_AW(RegUnLoadKey)
+BOOL32 WINAPI SetFileSecurity32A(LPCSTR,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR);
+BOOL32 WINAPI SetFileSecurity32W(LPCWSTR,SECURITY_INFORMATION,LPSECURITY_DESCRIPTOR);
+#define SetFileSecurity WINELIB_NAME_AW(SetFileSecurity)
+BOOL32 WINAPI StartService32A(HANDLE32,DWORD,LPCSTR*);
+BOOL32 WINAPI StartService32W(HANDLE32,DWORD,LPCWSTR*);
+#define StartService WINELIB_NAME_AW(StartService)
+
+/* Declarations for functions that are the same in Win16 and Win32 */
+
+DWORD WINAPI RegCloseKey(HKEY);
+DWORD WINAPI RegFlushKey(HKEY);
+
+DWORD WINAPI RegCreateKey32A(HKEY,LPCSTR,LPHKEY);
+DWORD WINAPI RegCreateKey32W(HKEY,LPCWSTR,LPHKEY);
+#define RegCreateKey WINELIB_NAME_AW(RegCreateKey)
+DWORD WINAPI RegDeleteKey32A(HKEY,LPCSTR);
+DWORD WINAPI RegDeleteKey32W(HKEY,LPWSTR);
+#define RegDeleteKey WINELIB_NAME_AW(RegDeleteKey)
+DWORD WINAPI RegDeleteValue32A(HKEY,LPSTR);
+DWORD WINAPI RegDeleteValue32W(HKEY,LPWSTR);
+#define RegDeleteValue WINELIB_NAME_AW(RegDeleteValue)
+DWORD WINAPI RegEnumKey32A(HKEY,DWORD,LPSTR,DWORD);
+DWORD WINAPI RegEnumKey32W(HKEY,DWORD,LPWSTR,DWORD);
+#define RegEnumKey WINELIB_NAME_AW(RegEnumKey)
+DWORD WINAPI RegEnumValue32A(HKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
+DWORD WINAPI RegEnumValue32W(HKEY,DWORD,LPWSTR,LPDWORD,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
+#define RegEnumValue WINELIB_NAME_AW(RegEnumValue)
+DWORD WINAPI RegOpenKey32A(HKEY,LPCSTR,LPHKEY);
+DWORD WINAPI RegOpenKey32W(HKEY,LPCWSTR,LPHKEY);
+#define RegOpenKey WINELIB_NAME_AW(RegOpenKey)
+DWORD WINAPI RegQueryValue32A(HKEY,LPSTR,LPSTR,LPDWORD);
+DWORD WINAPI RegQueryValue32W(HKEY,LPWSTR,LPWSTR,LPDWORD);
+#define RegQueryValue WINELIB_NAME_AW(RegQueryValue)
+DWORD WINAPI RegQueryValueEx32A(HKEY,LPSTR,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
+DWORD WINAPI RegQueryValueEx32W(HKEY,LPWSTR,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
+#define RegQueryValueEx WINELIB_NAME_AW(RegQueryValueEx)
+DWORD WINAPI RegSetValue32A(HKEY,LPCSTR,DWORD,LPCSTR,DWORD);
+DWORD WINAPI RegSetValue32W(HKEY,LPCWSTR,DWORD,LPCWSTR,DWORD);
+#define RegSetValue WINELIB_NAME_AW(RegSetValue)
+DWORD WINAPI RegSetValueEx32A(HKEY,LPSTR,DWORD,DWORD,LPBYTE,DWORD);
+DWORD WINAPI RegSetValueEx32W(HKEY,LPWSTR,DWORD,DWORD,LPBYTE,DWORD);
+#define RegSetValueEx WINELIB_NAME_AW(RegSetValueEx)
+
void SHELL_Init(void);
void SHELL_SaveRegistry(void);
void SHELL_LoadRegistry(void);
+
+
+
#endif /* __WINE_WINREG_H */
diff --git a/include/wintypes.h b/include/wintypes.h
index fc981dd..0b7f07e 100644
--- a/include/wintypes.h
+++ b/include/wintypes.h
@@ -4,6 +4,23 @@
* Copyright 1996 Alexandre Julliard
*/
+/* Misc. constants. */
+
+#ifdef FALSE
+#undef FALSE
+#endif
+#define FALSE 0
+
+#ifdef TRUE
+#undef TRUE
+#endif
+#define TRUE 1
+
+#ifdef NULL
+#undef NULL
+#endif
+#define NULL 0
+
#ifndef __WINE_WINTYPES_H
#define __WINE_WINTYPES_H
@@ -324,23 +341,6 @@
DECL_WINELIB_TYPE(HWAVEOUT)
DECL_WINELIB_TYPE(HWND)
-/* Misc. constants. */
-
-#ifdef FALSE
-#undef FALSE
-#endif
-#define FALSE 0
-
-#ifdef TRUE
-#undef TRUE
-#endif
-#define TRUE 1
-
-#ifdef NULL
-#undef NULL
-#endif
-#define NULL 0
-
/* Define some empty macros for compatibility with Windows code. */
#ifndef __WINE__
diff --git a/include/winuser.h b/include/winuser.h
index db0e11c..4db2347 100644
--- a/include/winuser.h
+++ b/include/winuser.h
@@ -6,9 +6,119 @@
#endif
#include "wintypes.h"
#include "wingdi.h"
+#include "wine/winestring.h"
#pragma pack(1)
+/* flags for HIGHCONTRAST dwFlags field */
+#define HCF_HIGHCONTRASTON 0x00000001
+#define HCF_AVAILABLE 0x00000002
+#define HCF_HOTKEYACTIVE 0x00000004
+#define HCF_CONFIRMHOTKEY 0x00000008
+#define HCF_HOTKEYSOUND 0x00000010
+#define HCF_INDICATOR 0x00000020
+#define HCF_HOTKEYAVAILABLE 0x00000040
+typedef struct tagHIGHCONTRASTA
+{
+ UINT32 cbSize;
+ DWORD dwFlags;
+ LPSTR lpszDefaultScheme;
+} HIGHCONTRASTA, *LPHIGHCONTRASTA;
+
+typedef struct tagHIGHCONTRASTW
+{
+ UINT32 cbSize;
+ DWORD dwFlags;
+ LPWSTR lpszDefaultScheme;
+} HIGHCONTRASTW, *LPHIGHCONTRASTW;
+
+typedef struct
+{
+ UINT32 message;
+ UINT32 paramL;
+ UINT32 paramH;
+ DWORD time;
+ HWND32 hwnd;
+} EVENTMSG32, *LPEVENTMSG32;
+
+DECL_WINELIB_TYPE(EVENTMSG)
+DECL_WINELIB_TYPE(LPEVENTMSG)
+
+ /* Mouse hook structure */
+
+typedef struct
+{
+ POINT32 pt;
+ HWND32 hwnd;
+ UINT32 wHitTestCode;
+ DWORD dwExtraInfo;
+} MOUSEHOOKSTRUCT32, *LPMOUSEHOOKSTRUCT32;
+
+DECL_WINELIB_TYPE(MOUSEHOOKSTRUCT)
+DECL_WINELIB_TYPE(LPMOUSEHOOKSTRUCT)
+
+ /* Hardware hook structure */
+
+typedef struct
+{
+ HWND32 hWnd;
+ UINT32 wMessage;
+ WPARAM32 wParam;
+ LPARAM lParam;
+} HARDWAREHOOKSTRUCT32, *LPHARDWAREHOOKSTRUCT32;
+
+DECL_WINELIB_TYPE(HARDWAREHOOKSTRUCT)
+DECL_WINELIB_TYPE(LPHARDWAREHOOKSTRUCT)
+
+ /* Debug hook structure */
+
+typedef struct
+{
+ DWORD idThread;
+ DWORD idThreadInstaller;
+ LPARAM lParam;
+ WPARAM32 wParam;
+ INT32 code;
+} DEBUGHOOKINFO32, *LPDEBUGHOOKINFO32;
+
+DECL_WINELIB_TYPE(DEBUGHOOKINFO)
+DECL_WINELIB_TYPE(LPDEBUGHOOKINFO)
+
+ /***** Dialogs *****/
+#ifdef FSHIFT
+/* Gcc on Solaris has a version of this that we don't care about. */
+#undef FSHIFT
+#endif
+
+#define FVIRTKEY TRUE /* Assumed to be == TRUE */
+#define FNOINVERT 0x02
+#define FSHIFT 0x04
+#define FCONTROL 0x08
+#define FALT 0x10
+
+
+typedef struct tagANIMATIONINFO
+{
+ UINT32 cbSize;
+ INT32 iMinAnimate;
+} ANIMATIONINFO, *LPANIMATIONINFO;
+
+typedef struct tagNMHDR
+{
+ HWND32 hwndFrom;
+ UINT32 idFrom;
+ UINT32 code;
+} NMHDR, *LPNMHDR;
+
+typedef struct
+{
+ UINT32 cbSize;
+ INT32 iTabLength;
+ INT32 iLeftMargin;
+ INT32 iRightMargin;
+ UINT32 uiLengthDrawn;
+} DRAWTEXTPARAMS,*LPDRAWTEXTPARAMS;
+
#define WM_USER 0x0400
typedef struct
@@ -28,10 +138,873 @@
#define WPF_SETMINPOSITION 0x0001
#define WPF_RESTORETOMAXIMIZED 0x0002
+/***** Dialogs *****/
+
+ /* cbWndExtra bytes for dialog class */
+#define DLGWINDOWEXTRA 30
+
+/* Button control styles */
+#define BS_PUSHBUTTON 0x00000000L
+#define BS_DEFPUSHBUTTON 0x00000001L
+#define BS_CHECKBOX 0x00000002L
+#define BS_AUTOCHECKBOX 0x00000003L
+#define BS_RADIOBUTTON 0x00000004L
+#define BS_3STATE 0x00000005L
+#define BS_AUTO3STATE 0x00000006L
+#define BS_GROUPBOX 0x00000007L
+#define BS_USERBUTTON 0x00000008L
+#define BS_AUTORADIOBUTTON 0x00000009L
+#define BS_OWNERDRAW 0x0000000BL
+#define BS_LEFTTEXT 0x00000020L
+
+ /* Dialog styles */
+#define DS_ABSALIGN 0x0001
+#define DS_SYSMODAL 0x0002
+#define DS_3DLOOK 0x0004 /* win95 */
+#define DS_FIXEDSYS 0x0008 /* win95 */
+#define DS_NOFAILCREATE 0x0010 /* win95 */
+#define DS_LOCALEDIT 0x0020
+#define DS_SETFONT 0x0040
+#define DS_MODALFRAME 0x0080
+#define DS_NOIDLEMSG 0x0100
+#define DS_SETFOREGROUND 0x0200 /* win95 */
+#define DS_CONTROL 0x0400 /* win95 */
+#define DS_CENTER 0x0800 /* win95 */
+#define DS_CENTERMOUSE 0x1000 /* win95 */
+#define DS_CONTEXTHELP 0x2000 /* win95 */
+
+
+ /* Dialog messages */
+#define DM_GETDEFID (WM_USER+0)
+#define DM_SETDEFID (WM_USER+1)
+
+#define DC_HASDEFID 0x534b
+
+/* Owner draw control types */
+#define ODT_MENU 1
+#define ODT_LISTBOX 2
+#define ODT_COMBOBOX 3
+#define ODT_BUTTON 4
+
+/* Owner draw actions */
+#define ODA_DRAWENTIRE 0x0001
+#define ODA_SELECT 0x0002
+#define ODA_FOCUS 0x0004
+
+/* Owner draw state */
+#define ODS_SELECTED 0x0001
+#define ODS_GRAYED 0x0002
+#define ODS_DISABLED 0x0004
+#define ODS_CHECKED 0x0008
+#define ODS_FOCUS 0x0010
+
+/* Edit control styles */
+#define ES_LEFT 0x00000000
+#define ES_CENTER 0x00000001
+#define ES_RIGHT 0x00000002
+#define ES_MULTILINE 0x00000004
+#define ES_UPPERCASE 0x00000008
+#define ES_LOWERCASE 0x00000010
+#define ES_PASSWORD 0x00000020
+#define ES_AUTOVSCROLL 0x00000040
+#define ES_AUTOHSCROLL 0x00000080
+#define ES_NOHIDESEL 0x00000100
+#define ES_OEMCONVERT 0x00000400
+#define ES_READONLY 0x00000800
+#define ES_WANTRETURN 0x00001000
+#define ES_NUMBER 0x00002000
+
+/* OEM Resource Ordinal Numbers */
+#define OBM_CLOSE 32754
+#define OBM_UPARROW 32753
+#define OBM_DNARROW 32752
+#define OBM_RGARROW 32751
+#define OBM_LFARROW 32750
+#define OBM_REDUCE 32749
+#define OBM_ZOOM 32748
+#define OBM_RESTORE 32747
+#define OBM_REDUCED 32746
+#define OBM_ZOOMD 32745
+#define OBM_RESTORED 32744
+#define OBM_UPARROWD 32743
+#define OBM_DNARROWD 32742
+#define OBM_RGARROWD 32741
+#define OBM_LFARROWD 32740
+#define OBM_MNARROW 32739
+#define OBM_COMBO 32738
+#define OBM_UPARROWI 32737
+#define OBM_DNARROWI 32736
+#define OBM_RGARROWI 32735
+#define OBM_LFARROWI 32734
+
+#define OBM_FOLDER 32733
+#define OBM_FOLDER2 32732
+#define OBM_FLOPPY 32731
+#define OBM_HDISK 32730
+#define OBM_CDROM 32729
+#define OBM_TRTYPE 32728
+
+/* Wine extension, I think. */
+#define OBM_RADIOCHECK 32727
+
+#define OBM_OLD_CLOSE 32767
+#define OBM_SIZE 32766
+#define OBM_OLD_UPARROW 32765
+#define OBM_OLD_DNARROW 32764
+#define OBM_OLD_RGARROW 32763
+#define OBM_OLD_LFARROW 32762
+#define OBM_BTSIZE 32761
+#define OBM_CHECK 32760
+#define OBM_CHECKBOXES 32759
+#define OBM_BTNCORNERS 32758
+#define OBM_OLD_REDUCE 32757
+#define OBM_OLD_ZOOM 32756
+#define OBM_OLD_RESTORE 32755
+
+#define OCR_BUMMER 100
+#define OCR_DRAGOBJECT 101
+
+#define OCR_NORMAL 32512
+#define OCR_IBEAM 32513
+#define OCR_WAIT 32514
+#define OCR_CROSS 32515
+#define OCR_UP 32516
+#define OCR_SIZE 32640
+#define OCR_ICON 32641
+#define OCR_SIZENWSE 32642
+#define OCR_SIZENESW 32643
+#define OCR_SIZEWE 32644
+#define OCR_SIZENS 32645
+#define OCR_SIZEALL 32646
+#define OCR_ICOCUR 32647
+#define OCR_NO 32648
+#define OCR_APPSTARTING 32650
+#define OCR_HELP 32651 /* only defined in wine */
+
+#define OIC_SAMPLE 32512
+#define OIC_HAND 32513
+#define OIC_QUES 32514
+#define OIC_BANG 32515
+#define OIC_NOTE 32516
+#define OIC_PORTRAIT 32517
+#define OIC_LANDSCAPE 32518
+#define OIC_WINEICON 32519
+
+/* Edit control messages */
+#define EM_GETSEL32 0x00b0
+#define EM_GETSEL WINELIB_NAME(EM_GETSEL)
+#define EM_SETSEL32 0x00b1
+#define EM_SETSEL WINELIB_NAME(EM_SETSEL)
+#define EM_GETRECT32 0x00b2
+#define EM_GETRECT WINELIB_NAME(EM_GETRECT)
+#define EM_SETRECT32 0x00b3
+#define EM_SETRECT WINELIB_NAME(EM_SETRECT)
+#define EM_SETRECTNP32 0x00b4
+#define EM_SETRECTNP WINELIB_NAME(EM_SETRECTNP)
+#define EM_SCROLL32 0x00b5
+#define EM_SCROLL WINELIB_NAME(EM_SCROLL)
+#define EM_LINESCROLL32 0x00b6
+#define EM_LINESCROLL WINELIB_NAME(EM_LINESCROLL)
+#define EM_SCROLLCARET32 0x00b7
+#define EM_SCROLLCARET WINELIB_NAME(EM_SCROLLCARET)
+#define EM_GETMODIFY32 0x00b8
+#define EM_GETMODIFY WINELIB_NAME(EM_GETMODIFY)
+#define EM_SETMODIFY32 0x00b9
+#define EM_SETMODIFY WINELIB_NAME(EM_SETMODIFY)
+#define EM_GETLINECOUNT32 0x00ba
+#define EM_GETLINECOUNT WINELIB_NAME(EM_GETLINECOUNT)
+#define EM_LINEINDEX32 0x00bb
+#define EM_LINEINDEX WINELIB_NAME(EM_LINEINDEX)
+#define EM_SETHANDLE32 0x00bc
+#define EM_SETHANDLE WINELIB_NAME(EM_SETHANDLE)
+#define EM_GETHANDLE32 0x00bd
+#define EM_GETHANDLE WINELIB_NAME(EM_GETHANDLE)
+#define EM_GETTHUMB32 0x00be
+#define EM_GETTHUMB WINELIB_NAME(EM_GETTHUMB)
+/* FIXME : missing from specs 0x00bf and 0x00c0 */
+#define EM_LINELENGTH32 0x00c1
+#define EM_LINELENGTH WINELIB_NAME(EM_LINELENGTH)
+#define EM_REPLACESEL32 0x00c2
+#define EM_REPLACESEL WINELIB_NAME(EM_REPLACESEL)
+/* FIXME : missing from specs 0x00c3 */
+#define EM_GETLINE32 0x00c4
+#define EM_GETLINE WINELIB_NAME(EM_GETLINE)
+#define EM_LIMITTEXT32 0x00c5
+#define EM_LIMITTEXT WINELIB_NAME(EM_LIMITTEXT)
+#define EM_CANUNDO32 0x00c6
+#define EM_CANUNDO WINELIB_NAME(EM_CANUNDO)
+#define EM_UNDO32 0x00c7
+#define EM_UNDO WINELIB_NAME(EM_UNDO)
+#define EM_FMTLINES32 0x00c8
+#define EM_FMTLINES WINELIB_NAME(EM_FMTLINES)
+#define EM_LINEFROMCHAR32 0x00c9
+#define EM_LINEFROMCHAR WINELIB_NAME(EM_LINEFROMCHAR)
+/* FIXME : missing from specs 0x00ca */
+#define EM_SETTABSTOPS32 0x00cb
+#define EM_SETTABSTOPS WINELIB_NAME(EM_SETTABSTOPS)
+#define EM_SETPASSWORDCHAR32 0x00cc
+#define EM_SETPASSWORDCHAR WINELIB_NAME(EM_SETPASSWORDCHAR)
+#define EM_EMPTYUNDOBUFFER32 0x00cd
+#define EM_EMPTYUNDOBUFFER WINELIB_NAME(EM_EMPTYUNDOBUFFER)
+#define EM_GETFIRSTVISIBLELINE32 0x00ce
+#define EM_GETFIRSTVISIBLELINE WINELIB_NAME(EM_GETFIRSTVISIBLELINE)
+#define EM_SETREADONLY32 0x00cf
+#define EM_SETREADONLY WINELIB_NAME(EM_SETREADONLY)
+#define EM_SETWORDBREAKPROC32 0x00d0
+#define EM_SETWORDBREAKPROC WINELIB_NAME(EM_SETWORDBREAKPROC)
+#define EM_GETWORDBREAKPROC32 0x00d1
+#define EM_GETWORDBREAKPROC WINELIB_NAME(EM_GETWORDBREAKPROC)
+#define EM_GETPASSWORDCHAR32 0x00d2
+#define EM_GETPASSWORDCHAR WINELIB_NAME(EM_GETPASSWORDCHAR)
+#define EM_SETMARGINS32 0x00d3
+#define EM_SETMARGINS WINELIB_NAME(EM_SETMARGINS)
+#define EM_GETMARGINS32 0x00d4
+#define EM_GETMARGINS WINELIB_NAME(EM_GETMARGINS)
+#define EM_GETLIMITTEXT32 0x00d5
+#define EM_GETLIMITTEXT WINELIB_NAME(EM_GETLIMITTEXT)
+#define EM_POSFROMCHAR32 0x00d6
+#define EM_POSFROMCHAR WINELIB_NAME(EM_POSFROMCHAR)
+#define EM_CHARFROMPOS32 0x00d7
+#define EM_CHARFROMPOS WINELIB_NAME(EM_CHARFROMPOS)
+/* a name change since win95 */
+#define EM_SETLIMITTEXT32 EM_LIMITTEXT32
+#define EM_SETLIMITTEXT WINELIB_NAME(EM_SETLIMITTEXT)
+
+/* EDITWORDBREAKPROC code values */
+#define WB_LEFT 0
+#define WB_RIGHT 1
+#define WB_ISDELIMITER 2
+
+/* Edit control notification codes */
+#define EN_SETFOCUS 0x0100
+#define EN_KILLFOCUS 0x0200
+#define EN_CHANGE 0x0300
+#define EN_UPDATE 0x0400
+#define EN_ERRSPACE 0x0500
+#define EN_MAXTEXT 0x0501
+#define EN_HSCROLL 0x0601
+#define EN_VSCROLL 0x0602
+
+/* New since win95 : EM_SETMARGIN parameters */
+#define EC_LEFTMARGIN 0x0001
+#define EC_RIGHTMARGIN 0x0002
+#define EC_USEFONTINFO 0xffff
+
+
+/* Messages */
+
+ /* WM_GETDLGCODE values */
+
+
+#define WM_NULL 0x0000
+#define WM_CREATE 0x0001
+#define WM_DESTROY 0x0002
+#define WM_MOVE 0x0003
+#define WM_SIZEWAIT 0x0004
+#define WM_SIZE 0x0005
+#define WM_ACTIVATE 0x0006
+#define WM_SETFOCUS 0x0007
+#define WM_KILLFOCUS 0x0008
+#define WM_SETVISIBLE 0x0009
+#define WM_ENABLE 0x000a
+#define WM_SETREDRAW 0x000b
+#define WM_SETTEXT 0x000c
+#define WM_GETTEXT 0x000d
+#define WM_GETTEXTLENGTH 0x000e
+#define WM_PAINT 0x000f
+#define WM_CLOSE 0x0010
+#define WM_QUERYENDSESSION 0x0011
+#define WM_QUIT 0x0012
+#define WM_QUERYOPEN 0x0013
+#define WM_ERASEBKGND 0x0014
+#define WM_SYSCOLORCHANGE 0x0015
+#define WM_ENDSESSION 0x0016
+#define WM_SYSTEMERROR 0x0017
+#define WM_SHOWWINDOW 0x0018
+#define WM_CTLCOLOR 0x0019
+#define WM_WININICHANGE 0x001a
+#define WM_SETTINGCHANGE WM_WININICHANGE
+#define WM_DEVMODECHANGE 0x001b
+#define WM_ACTIVATEAPP 0x001c
+#define WM_FONTCHANGE 0x001d
+#define WM_TIMECHANGE 0x001e
+#define WM_CANCELMODE 0x001f
+#define WM_SETCURSOR 0x0020
+#define WM_MOUSEACTIVATE 0x0021
+#define WM_CHILDACTIVATE 0x0022
+#define WM_QUEUESYNC 0x0023
+#define WM_GETMINMAXINFO 0x0024
+
+#define WM_PAINTICON 0x0026
+#define WM_ICONERASEBKGND 0x0027
+#define WM_NEXTDLGCTL 0x0028
+#define WM_ALTTABACTIVE 0x0029
+#define WM_SPOOLERSTATUS 0x002a
+#define WM_DRAWITEM 0x002b
+#define WM_MEASUREITEM 0x002c
+#define WM_DELETEITEM 0x002d
+#define WM_VKEYTOITEM 0x002e
+#define WM_CHARTOITEM 0x002f
+#define WM_SETFONT 0x0030
+#define WM_GETFONT 0x0031
+#define WM_SETHOTKEY 0x0032
+#define WM_GETHOTKEY 0x0033
+#define WM_FILESYSCHANGE 0x0034
+#define WM_ISACTIVEICON 0x0035
+#define WM_QUERYPARKICON 0x0036
+#define WM_QUERYDRAGICON 0x0037
+#define WM_QUERYSAVESTATE 0x0038
+#define WM_COMPAREITEM 0x0039
+#define WM_TESTING 0x003a
+
+#define WM_OTHERWINDOWCREATED 0x003c
+#define WM_OTHERWINDOWDESTROYED 0x003d
+#define WM_ACTIVATESHELLWINDOW 0x003e
+
+#define WM_COMPACTING 0x0041
+
+#define WM_COMMNOTIFY 0x0044
+#define WM_WINDOWPOSCHANGING 0x0046
+#define WM_WINDOWPOSCHANGED 0x0047
+#define WM_POWER 0x0048
+
+ /* Win32 4.0 messages */
+#define WM_COPYDATA 0x004a
+#define WM_CANCELJOURNAL 0x004b
+#define WM_NOTIFY 0x004e
+#define WM_HELP 0x0053
+#define WM_NOTIFYFORMAT 0x0055
+
+#define WM_CONTEXTMENU 0x007b
+#define WM_STYLECHANGING 0x007c
+#define WM_STYLECHANGED 0x007d
+#define WM_DISPLAYCHANGE 0x007e
+#define WM_GETICON 0x007f
+#define WM_SETICON 0x0080
+
+ /* Non-client system messages */
+#define WM_NCCREATE 0x0081
+#define WM_NCDESTROY 0x0082
+#define WM_NCCALCSIZE 0x0083
+#define WM_NCHITTEST 0x0084
+#define WM_NCPAINT 0x0085
+#define WM_NCACTIVATE 0x0086
+
+#define WM_GETDLGCODE 0x0087
+#define WM_SYNCPAINT 0x0088
+#define WM_SYNCTASK 0x0089
+
+ /* Non-client mouse messages */
+#define WM_NCMOUSEMOVE 0x00a0
+#define WM_NCLBUTTONDOWN 0x00a1
+#define WM_NCLBUTTONUP 0x00a2
+#define WM_NCLBUTTONDBLCLK 0x00a3
+#define WM_NCRBUTTONDOWN 0x00a4
+#define WM_NCRBUTTONUP 0x00a5
+#define WM_NCRBUTTONDBLCLK 0x00a6
+#define WM_NCMBUTTONDOWN 0x00a7
+#define WM_NCMBUTTONUP 0x00a8
+#define WM_NCMBUTTONDBLCLK 0x00a9
+
+ /* Keyboard messages */
+#define WM_KEYDOWN 0x0100
+#define WM_KEYUP 0x0101
+#define WM_CHAR 0x0102
+#define WM_DEADCHAR 0x0103
+#define WM_SYSKEYDOWN 0x0104
+#define WM_SYSKEYUP 0x0105
+#define WM_SYSCHAR 0x0106
+#define WM_SYSDEADCHAR 0x0107
+#define WM_KEYFIRST WM_KEYDOWN
+#define WM_KEYLAST 0x0108
+
+#define WM_INITDIALOG 0x0110
+#define WM_COMMAND 0x0111
+#define WM_SYSCOMMAND 0x0112
+#define WM_TIMER 0x0113
+#define WM_SYSTIMER 0x0118
+
+ /* scroll messages */
+#define WM_HSCROLL 0x0114
+#define WM_VSCROLL 0x0115
+
+/* Menu messages */
+#define WM_INITMENU 0x0116
+#define WM_INITMENUPOPUP 0x0117
+
+#define WM_MENUSELECT 0x011F
+#define WM_MENUCHAR 0x0120
+#define WM_ENTERIDLE 0x0121
+
+#define WM_LBTRACKPOINT 0x0131
+
+ /* Win32 CTLCOLOR messages */
+#define WM_CTLCOLORMSGBOX 0x0132
+#define WM_CTLCOLOREDIT 0x0133
+#define WM_CTLCOLORLISTBOX 0x0134
+#define WM_CTLCOLORBTN 0x0135
+#define WM_CTLCOLORDLG 0x0136
+#define WM_CTLCOLORSCROLLBAR 0x0137
+#define WM_CTLCOLORSTATIC 0x0138
+
+ /* Mouse messages */
+#define WM_MOUSEMOVE 0x0200
+#define WM_LBUTTONDOWN 0x0201
+#define WM_LBUTTONUP 0x0202
+#define WM_LBUTTONDBLCLK 0x0203
+#define WM_RBUTTONDOWN 0x0204
+#define WM_RBUTTONUP 0x0205
+#define WM_RBUTTONDBLCLK 0x0206
+#define WM_MBUTTONDOWN 0x0207
+#define WM_MBUTTONUP 0x0208
+#define WM_MBUTTONDBLCLK 0x0209
+#define WM_MOUSEFIRST WM_MOUSEMOVE
+#define WM_MOUSELAST WM_MBUTTONDBLCLK
+
+#define WM_PARENTNOTIFY 0x0210
+#define WM_ENTERMENULOOP 0x0211
+#define WM_EXITMENULOOP 0x0212
+#define WM_NEXTMENU 0x0213
+
+ /* Win32 4.0 messages */
+#define WM_SIZING 0x0214
+#define WM_CAPTURECHANGED 0x0215
+#define WM_MOVING 0x0216
+
+ /* MDI messages */
+#define WM_MDICREATE 0x0220
+#define WM_MDIDESTROY 0x0221
+#define WM_MDIACTIVATE 0x0222
+#define WM_MDIRESTORE 0x0223
+#define WM_MDINEXT 0x0224
+#define WM_MDIMAXIMIZE 0x0225
+#define WM_MDITILE 0x0226
+#define WM_MDICASCADE 0x0227
+#define WM_MDIICONARRANGE 0x0228
+#define WM_MDIGETACTIVE 0x0229
+#define WM_MDIREFRESHMENU 0x0234
+
+ /* D&D messages */
+#define WM_DROPOBJECT 0x022A
+#define WM_QUERYDROPOBJECT 0x022B
+#define WM_BEGINDRAG 0x022C
+#define WM_DRAGLOOP 0x022D
+#define WM_DRAGSELECT 0x022E
+#define WM_DRAGMOVE 0x022F
+#define WM_MDISETMENU 0x0230
+
+#define WM_ENTERSIZEMOVE 0x0231
+#define WM_EXITSIZEMOVE 0x0232
+#define WM_DROPFILES 0x0233
+
+#define WM_CUT 0x0300
+#define WM_COPY 0x0301
+#define WM_PASTE 0x0302
+#define WM_CLEAR 0x0303
+#define WM_UNDO 0x0304
+#define WM_RENDERFORMAT 0x0305
+#define WM_RENDERALLFORMATS 0x0306
+#define WM_DESTROYCLIPBOARD 0x0307
+#define WM_DRAWCLIPBOARD 0x0308
+#define WM_PAINTCLIPBOARD 0x0309
+#define WM_VSCROLLCLIPBOARD 0x030A
+#define WM_SIZECLIPBOARD 0x030B
+#define WM_ASKCBFORMATNAME 0x030C
+#define WM_CHANGECBCHAIN 0x030D
+#define WM_HSCROLLCLIPBOARD 0x030E
+#define WM_QUERYNEWPALETTE 0x030F
+#define WM_PALETTEISCHANGING 0x0310
+#define WM_PALETTECHANGED 0x0311
+#define WM_HOTKEY 0x0312
+
+#define WM_PRINT 0x0317
+#define WM_PRINTCLIENT 0x0318
+
+ /* FIXME: This does not belong to any libwine interface header */
+ /* MFC messages [370-37f] */
+
+#define WM_QUERYAFXWNDPROC 0x0360
+#define WM_SIZEPARENT 0x0361
+#define WM_SETMESSAGESTRING 0x0362
+#define WM_IDLEUPDATECMDUI 0x0363
+#define WM_INITIALUPDATE 0x0364
+#define WM_COMMANDHELP 0x0365
+#define WM_HELPHITTEST 0x0366
+#define WM_EXITHELPMODE 0x0367
+#define WM_RECALCPARENT 0x0368
+#define WM_SIZECHILD 0x0369
+#define WM_KICKIDLE 0x036A
+#define WM_QUERYCENTERWND 0x036B
+#define WM_DISABLEMODAL 0x036C
+#define WM_FLOATSTATUS 0x036D
+#define WM_ACTIVATETOPLEVEL 0x036E
+#define WM_QUERY3DCONTROLS 0x036F
+#define WM_SOCKET_NOTIFY 0x0373
+#define WM_SOCKET_DEAD 0x0374
+#define WM_POPMESSAGESTRING 0x0375
+#define WM_OCC_LOADFROMSTREAM 0x0376
+#define WM_OCC_LOADFROMSTORAGE 0x0377
+#define WM_OCC_INITNEW 0x0378
+#define WM_OCC_LOADFROMSTREAM_EX 0x037A
+#define WM_OCC_LOADFROMSTORAGE_EX 0x037B
+#define WM_QUEUE_SENTINEL 0x0379
+
+/* end of MFC messages */
+
+ /* FIXME: This does not belong to any libwine interface header */
+#define WM_COALESCE_FIRST 0x0390
+#define WM_COALESCE_LAST 0x039F
+
+
+
+#define DLGC_WANTARROWS 0x0001
+#define DLGC_WANTTAB 0x0002
+#define DLGC_WANTALLKEYS 0x0004
+#define DLGC_WANTMESSAGE 0x0004
+#define DLGC_HASSETSEL 0x0008
+#define DLGC_DEFPUSHBUTTON 0x0010
+#define DLGC_UNDEFPUSHBUTTON 0x0020
+#define DLGC_RADIOBUTTON 0x0040
+#define DLGC_WANTCHARS 0x0080
+#define DLGC_STATIC 0x0100
+#define DLGC_BUTTON 0x2000
+
+/* Standard dialog button IDs */
+#define IDOK 1
+#define IDCANCEL 2
+#define IDABORT 3
+#define IDRETRY 4
+#define IDIGNORE 5
+#define IDYES 6
+#define IDNO 7
+#define IDCLOSE 8
+#define IDHELP 9
+
/****** Window classes ******/
typedef struct
{
+ LPVOID lpCreateParams;
+ HINSTANCE32 hInstance;
+ HMENU32 hMenu;
+ HWND32 hwndParent;
+ INT32 cy;
+ INT32 cx;
+ INT32 y;
+ INT32 x;
+ LONG style;
+ LPCSTR lpszName;
+ LPCSTR lpszClass;
+ DWORD dwExStyle;
+} CREATESTRUCT32A, *LPCREATESTRUCT32A;
+
+typedef struct
+{
+ LPVOID lpCreateParams;
+ HINSTANCE32 hInstance;
+ HMENU32 hMenu;
+ HWND32 hwndParent;
+ INT32 cy;
+ INT32 cx;
+ INT32 y;
+ INT32 x;
+ LONG style;
+ LPCWSTR lpszName;
+ LPCWSTR lpszClass;
+ DWORD dwExStyle;
+} CREATESTRUCT32W, *LPCREATESTRUCT32W;
+
+DECL_WINELIB_TYPE_AW(CREATESTRUCT)
+DECL_WINELIB_TYPE_AW(LPCREATESTRUCT)
+
+typedef struct
+{
+ HMENU32 hWindowMenu;
+ UINT32 idFirstChild;
+} CLIENTCREATESTRUCT32, *LPCLIENTCREATESTRUCT32;
+
+DECL_WINELIB_TYPE(CLIENTCREATESTRUCT)
+DECL_WINELIB_TYPE(LPCLIENTCREATESTRUCT)
+
+typedef struct
+{
+ LPCSTR szClass;
+ LPCSTR szTitle;
+ HINSTANCE32 hOwner;
+ INT32 x;
+ INT32 y;
+ INT32 cx;
+ INT32 cy;
+ DWORD style;
+ LPARAM lParam;
+} MDICREATESTRUCT32A, *LPMDICREATESTRUCT32A;
+
+typedef struct
+{
+ LPCWSTR szClass;
+ LPCWSTR szTitle;
+ HINSTANCE32 hOwner;
+ INT32 x;
+ INT32 y;
+ INT32 cx;
+ INT32 cy;
+ DWORD style;
+ LPARAM lParam;
+} MDICREATESTRUCT32W, *LPMDICREATESTRUCT32W;
+
+DECL_WINELIB_TYPE_AW(MDICREATESTRUCT)
+DECL_WINELIB_TYPE_AW(LPMDICREATESTRUCT)
+
+#define MDITILE_VERTICAL 0x0000
+#define MDITILE_HORIZONTAL 0x0001
+#define MDITILE_SKIPDISABLED 0x0002
+
+#define MDIS_ALLCHILDSTYLES 0x0001
+
+typedef struct {
+ DWORD styleOld;
+ DWORD styleNew;
+} STYLESTRUCT, *LPSTYLESTRUCT;
+
+ /* Offsets for GetWindowLong() and GetWindowWord() */
+#define GWL_USERDATA (-21)
+#define GWL_EXSTYLE (-20)
+#define GWL_STYLE (-16)
+#define GWW_ID (-12)
+#define GWL_ID GWW_ID
+#define GWW_HWNDPARENT (-8)
+#define GWL_HWNDPARENT GWW_HWNDPARENT
+#define GWW_HINSTANCE (-6)
+#define GWL_HINSTANCE GWW_HINSTANCE
+#define GWL_WNDPROC (-4)
+#define DWL_MSGRESULT 0
+#define DWL_DLGPROC 4
+#define DWL_USER 8
+
+ /* GetWindow() constants */
+#define GW_HWNDFIRST 0
+#define GW_HWNDLAST 1
+#define GW_HWNDNEXT 2
+#define GW_HWNDPREV 3
+#define GW_OWNER 4
+#define GW_CHILD 5
+
+ /* WM_GETMINMAXINFO struct */
+typedef struct
+{
+ POINT32 ptReserved;
+ POINT32 ptMaxSize;
+ POINT32 ptMaxPosition;
+ POINT32 ptMinTrackSize;
+ POINT32 ptMaxTrackSize;
+} MINMAXINFO32;
+
+DECL_WINELIB_TYPE(MINMAXINFO)
+
+ /* RedrawWindow() flags */
+#define RDW_INVALIDATE 0x0001
+#define RDW_INTERNALPAINT 0x0002
+#define RDW_ERASE 0x0004
+#define RDW_VALIDATE 0x0008
+#define RDW_NOINTERNALPAINT 0x0010
+#define RDW_NOERASE 0x0020
+#define RDW_NOCHILDREN 0x0040
+#define RDW_ALLCHILDREN 0x0080
+#define RDW_UPDATENOW 0x0100
+#define RDW_ERASENOW 0x0200
+#define RDW_FRAME 0x0400
+#define RDW_NOFRAME 0x0800
+
+/* debug flags */
+#define DBGFILL_ALLOC 0xfd
+#define DBGFILL_FREE 0xfb
+#define DBGFILL_BUFFER 0xf9
+#define DBGFILL_STACK 0xf7
+
+ /* WM_WINDOWPOSCHANGING/CHANGED struct */
+typedef struct
+{
+ HWND32 hwnd;
+ HWND32 hwndInsertAfter;
+ INT32 x;
+ INT32 y;
+ INT32 cx;
+ INT32 cy;
+ UINT32 flags;
+} WINDOWPOS32, *LPWINDOWPOS32;
+
+DECL_WINELIB_TYPE(WINDOWPOS)
+DECL_WINELIB_TYPE(LPWINDOWPOS)
+
+ /* WM_MOUSEACTIVATE return values */
+#define MA_ACTIVATE 1
+#define MA_ACTIVATEANDEAT 2
+#define MA_NOACTIVATE 3
+#define MA_NOACTIVATEANDEAT 4
+
+ /* WM_ACTIVATE wParam values */
+#define WA_INACTIVE 0
+#define WA_ACTIVE 1
+#define WA_CLICKACTIVE 2
+
+ /* WM_NCCALCSIZE parameter structure */
+typedef struct
+{
+ RECT32 rgrc[3];
+ WINDOWPOS32 *lppos;
+} NCCALCSIZE_PARAMS32, *LPNCCALCSIZE_PARAMS32;
+
+DECL_WINELIB_TYPE(NCCALCSIZE_PARAMS)
+DECL_WINELIB_TYPE(LPNCCALCSIZE_PARAMS)
+
+ /* WM_NCCALCSIZE return flags */
+#define WVR_ALIGNTOP 0x0010
+#define WVR_ALIGNLEFT 0x0020
+#define WVR_ALIGNBOTTOM 0x0040
+#define WVR_ALIGNRIGHT 0x0080
+#define WVR_HREDRAW 0x0100
+#define WVR_VREDRAW 0x0200
+#define WVR_REDRAW (WVR_HREDRAW | WVR_VREDRAW)
+#define WVR_VALIDRECTS 0x0400
+
+ /* WM_NCHITTEST return codes */
+#define HTERROR (-2)
+#define HTTRANSPARENT (-1)
+#define HTNOWHERE 0
+#define HTCLIENT 1
+#define HTCAPTION 2
+#define HTSYSMENU 3
+#define HTSIZE 4
+#define HTMENU 5
+#define HTHSCROLL 6
+#define HTVSCROLL 7
+#define HTMINBUTTON 8
+#define HTMAXBUTTON 9
+#define HTLEFT 10
+#define HTRIGHT 11
+#define HTTOP 12
+#define HTTOPLEFT 13
+#define HTTOPRIGHT 14
+#define HTBOTTOM 15
+#define HTBOTTOMLEFT 16
+#define HTBOTTOMRIGHT 17
+#define HTBORDER 18
+#define HTGROWBOX HTSIZE
+#define HTREDUCE HTMINBUTTON
+#define HTZOOM HTMAXBUTTON
+#define HTOBJECT 19
+#define HTCLOSE 20
+#define HTHELP 21
+#define HTSIZEFIRST HTLEFT
+#define HTSIZELAST HTBOTTOMRIGHT
+
+ /* WM_SYSCOMMAND parameters */
+#ifdef SC_SIZE /* at least HP-UX: already defined in /usr/include/sys/signal.h */
+#undef SC_SIZE
+#endif
+#define SC_SIZE 0xf000
+#define SC_MOVE 0xf010
+#define SC_MINIMIZE 0xf020
+#define SC_MAXIMIZE 0xf030
+#define SC_NEXTWINDOW 0xf040
+#define SC_PREVWINDOW 0xf050
+#define SC_CLOSE 0xf060
+#define SC_VSCROLL 0xf070
+#define SC_HSCROLL 0xf080
+#define SC_MOUSEMENU 0xf090
+#define SC_KEYMENU 0xf100
+#define SC_ARRANGE 0xf110
+#define SC_RESTORE 0xf120
+#define SC_TASKLIST 0xf130
+#define SC_SCREENSAVE 0xf140
+#define SC_HOTKEY 0xf150
+
+#define CS_VREDRAW 0x0001
+#define CS_HREDRAW 0x0002
+#define CS_KEYCVTWINDOW 0x0004
+#define CS_DBLCLKS 0x0008
+#define CS_OWNDC 0x0020
+#define CS_CLASSDC 0x0040
+#define CS_PARENTDC 0x0080
+#define CS_NOKEYCVT 0x0100
+#define CS_NOCLOSE 0x0200
+#define CS_SAVEBITS 0x0800
+#define CS_BYTEALIGNCLIENT 0x1000
+#define CS_BYTEALIGNWINDOW 0x2000
+#define CS_GLOBALCLASS 0x4000
+
+ /* Offsets for GetClassLong() and GetClassWord() */
+#define GCL_MENUNAME (-8)
+#define GCW_HBRBACKGROUND (-10)
+#define GCL_HBRBACKGROUND GCW_HBRBACKGROUND
+#define GCW_HCURSOR (-12)
+#define GCL_HCURSOR GCW_HCURSOR
+#define GCW_HICON (-14)
+#define GCL_HICON GCW_HICON
+#define GCW_HMODULE (-16)
+#define GCL_HMODULE GCW_HMODULE
+#define GCW_CBWNDEXTRA (-18)
+#define GCL_CBWNDEXTRA GCW_CBWNDEXTRA
+#define GCW_CBCLSEXTRA (-20)
+#define GCL_CBCLSEXTRA GCW_CBCLSEXTRA
+#define GCL_WNDPROC (-24)
+#define GCW_STYLE (-26)
+#define GCL_STYLE GCW_STYLE
+#define GCW_ATOM (-32)
+#define GCW_HICONSM (-34)
+#define GCL_HICONSM GCW_HICONSM
+
+#ifndef NOWINOFFSETS
+#define GCW_HBRBACKGROUND (-10)
+#endif
+
+
+/***** Window hooks *****/
+
+ /* Hook values */
+#define WH_MIN (-1)
+#define WH_MSGFILTER (-1)
+#define WH_JOURNALRECORD 0
+#define WH_JOURNALPLAYBACK 1
+#define WH_KEYBOARD 2
+#define WH_GETMESSAGE 3
+#define WH_CALLWNDPROC 4
+#define WH_CBT 5
+#define WH_SYSMSGFILTER 6
+#define WH_MOUSE 7
+#define WH_HARDWARE 8
+#define WH_DEBUG 9
+#define WH_SHELL 10
+#define WH_FOREGROUNDIDLE 11
+#define WH_CALLWNDPROCRET 12
+#define WH_MAX 12
+
+#define WH_MINHOOK WH_MIN
+#define WH_MAXHOOK WH_MAX
+#define WH_NB_HOOKS (WH_MAXHOOK-WH_MINHOOK+1)
+
+ /* Hook action codes */
+#define HC_ACTION 0
+#define HC_GETNEXT 1
+#define HC_SKIP 2
+#define HC_NOREMOVE 3
+#define HC_NOREM HC_NOREMOVE
+#define HC_SYSMODALON 4
+#define HC_SYSMODALOFF 5
+
+ /* CallMsgFilter() values */
+#define MSGF_DIALOGBOX 0
+#define MSGF_MESSAGEBOX 1
+#define MSGF_MENU 2
+#define MSGF_MOVE 3
+#define MSGF_SIZE 4
+#define MSGF_SCROLLBAR 5
+#define MSGF_NEXTWINDOW 6
+#define MSGF_MAINLOOP 8
+#define MSGF_USER 4096
+
+typedef struct
+{
UINT32 style;
WNDPROC32 lpfnWndProc;
INT32 cbClsExtra;
@@ -61,6 +1034,87 @@
DECL_WINELIB_TYPE_AW(WNDCLASS)
DECL_WINELIB_TYPE_AW(LPWNDCLASS)
+typedef struct {
+ DWORD dwData;
+ DWORD cbData;
+ LPVOID lpData;
+} COPYDATASTRUCT, *PCOPYDATASTRUCT, *LPCOPYDATASTRUCT;
+
+typedef struct {
+ HMENU32 hmenuIn;
+ HMENU32 hmenuNext;
+ HWND32 hwndNext;
+} MDINEXTMENU, *PMDINEXTMENU, *LPMDINEXTMENU;
+
+/* WinHelp internal structure */
+typedef struct {
+ WORD size;
+ WORD command;
+ LONG data;
+ LONG reserved;
+ WORD ofsFilename;
+ WORD ofsData;
+} WINHELP,*LPWINHELP;
+
+typedef struct
+{
+ UINT16 mkSize;
+ BYTE mkKeyList;
+ BYTE szKeyPhrase[1];
+} MULTIKEYHELP, *LPMULTIKEYHELP;
+
+typedef struct {
+ WORD wStructSize;
+ WORD x;
+ WORD y;
+ WORD dx;
+ WORD dy;
+ WORD wMax;
+ char rgchMember[2];
+} HELPWININFO, *LPHELPWININFO;
+
+#define HELP_CONTEXT 0x0001
+#define HELP_QUIT 0x0002
+#define HELP_INDEX 0x0003
+#define HELP_CONTENTS 0x0003
+#define HELP_HELPONHELP 0x0004
+#define HELP_SETINDEX 0x0005
+#define HELP_SETCONTENTS 0x0005
+#define HELP_CONTEXTPOPUP 0x0008
+#define HELP_FORCEFILE 0x0009
+#define HELP_KEY 0x0101
+#define HELP_COMMAND 0x0102
+#define HELP_PARTIALKEY 0x0105
+#define HELP_MULTIKEY 0x0201
+#define HELP_SETWINPOS 0x0203
+#define HELP_CONTEXTMENU 0x000a
+#define HELP_FINDER 0x000b
+#define HELP_WM_HELP 0x000c
+#define HELP_SETPOPUP_POS 0x000d
+
+#define HELP_TCARD 0x8000
+#define HELP_TCARD_DATA 0x0010
+#define HELP_TCARD_OTHER_CALLER 0x0011
+
+
+ /* ChangeDisplaySettings return codes */
+
+#define DISP_CHANGE_SUCCESSFUL 0
+#define DISP_CHANGE_RESTART 1
+#define DISP_CHANGE_FAILED (-1)
+#define DISP_CHANGE_BADMODE (-2)
+#define DISP_CHANGE_NOTUPDATED (-3)
+#define DISP_CHANGE_BADFLAGS (-4)
+
+/* flags to FormatMessage */
+#define FORMAT_MESSAGE_ALLOCATE_BUFFER 0x00000100
+#define FORMAT_MESSAGE_IGNORE_INSERTS 0x00000200
+#define FORMAT_MESSAGE_FROM_STRING 0x00000400
+#define FORMAT_MESSAGE_FROM_HMODULE 0x00000800
+#define FORMAT_MESSAGE_FROM_SYSTEM 0x00001000
+#define FORMAT_MESSAGE_ARGUMENT_ARRAY 0x00002000
+#define FORMAT_MESSAGE_MAX_WIDTH_MASK 0x000000FF
+
typedef struct
{
UINT32 cbSize;
@@ -256,29 +1310,87 @@
#define ESB_DISABLE_LTUP ESB_DISABLE_LEFT
#define ESB_DISABLE_RTDN ESB_DISABLE_RIGHT
+/* Win32 button control messages */
+#define BM_GETCHECK32 0x00f0
+#define BM_SETCHECK32 0x00f1
+#define BM_GETSTATE32 0x00f2
+#define BM_SETSTATE32 0x00f3
+#define BM_SETSTYLE32 0x00f4
+#define BM_CLICK32 0x00f5
+#define BM_GETIMAGE32 0x00f6
+#define BM_SETIMAGE32 0x00f7
+/* Winelib button control messages */
+#define BM_GETCHECK WINELIB_NAME(BM_GETCHECK)
+#define BM_SETCHECK WINELIB_NAME(BM_SETCHECK)
+#define BM_GETSTATE WINELIB_NAME(BM_GETSTATE)
+#define BM_SETSTATE WINELIB_NAME(BM_SETSTATE)
+#define BM_SETSTYLE WINELIB_NAME(BM_SETSTYLE)
+#define BM_CLICK WINELIB_NAME(BM_CLICK)
+#define BM_GETIMAGE WINELIB_NAME(BM_GETIMAGE)
+#define BM_SETIMAGE WINELIB_NAME(BM_SETIMAGE)
+
+/* Button notification codes */
+#define BN_CLICKED 0
+#define BN_PAINT 1
+#define BN_HILITE 2
+#define BN_UNHILITE 3
+#define BN_DISABLE 4
+#define BN_DOUBLECLICKED 5
+
+/* Static Control Styles */
+#define SS_LEFT 0x00000000L
+#define SS_CENTER 0x00000001L
+#define SS_RIGHT 0x00000002L
+#define SS_ICON 0x00000003L
+#define SS_BLACKRECT 0x00000004L
+#define SS_GRAYRECT 0x00000005L
+#define SS_WHITERECT 0x00000006L
+#define SS_BLACKFRAME 0x00000007L
+#define SS_GRAYFRAME 0x00000008L
+#define SS_WHITEFRAME 0x00000009L
+
+#define SS_SIMPLE 0x0000000BL
+#define SS_LEFTNOWORDWRAP 0x0000000CL
+
+#define SS_OWNERDRAW 0x0000000DL
+#define SS_BITMAP 0x0000000EL
+#define SS_ENHMETAFILE 0x0000000FL
+
+#define SS_ETCHEDHORZ 0x00000010L
+#define SS_ETCHEDVERT 0x00000011L
+#define SS_ETCHEDFRAME 0x00000012L
+#define SS_TYPEMASK 0x0000001FL
+
+#define SS_NOPREFIX 0x00000080L
+#define SS_NOTIFY 0x00000100L
+#define SS_CENTERIMAGE 0x00000200L
+#define SS_RIGHTJUST 0x00000400L
+#define SS_REALSIZEIMAGE 0x00000800L
+#define SS_SUNKEN 0x00001000L
+
+/* Static Control Messages */
+#define STM_SETICON32 0x0170
+#define STM_SETICON WINELIB_NAME(STM_SETICON)
+#define STM_GETICON32 0x0171
+#define STM_GETICON WINELIB_NAME(STM_GETICON)
+#define STM_SETIMAGE 0x0172
+#define STM_GETIMAGE 0x0173
+
/* Scrollbar messages */
-#define SBM_SETPOS16 (WM_USER+0)
#define SBM_SETPOS32 0x00e0
#define SBM_SETPOS WINELIB_NAME(SBM_SETPOS)
-#define SBM_GETPOS16 (WM_USER+1)
#define SBM_GETPOS32 0x00e1
#define SBM_GETPOS WINELIB_NAME(SBM_GETPOS)
-#define SBM_SETRANGE16 (WM_USER+2)
#define SBM_SETRANGE32 0x00e2
#define SBM_SETRANGE WINELIB_NAME(SBM_SETRANGE)
-#define SBM_GETRANGE16 (WM_USER+3)
#define SBM_GETRANGE32 0x00e3
#define SBM_GETRANGE WINELIB_NAME(SBM_GETRANGE)
-#define SBM_ENABLE_ARROWS16 (WM_USER+4)
#define SBM_ENABLE_ARROWS32 0x00e4
#define SBM_ENABLE_ARROWS WINELIB_NAME(SBM_ENABLE_ARROWS)
-#define SBM_SETRANGEREDRAW16 WM_NULL /* Not in Win16 */
#define SBM_SETRANGEREDRAW32 0x00e6
#define SBM_SETRANGEREDRAW WINELIB_NAME(SBM_SETRANGEREDRAW)
-#define SBM_SETSCROLLINFO16 WM_NULL /* Not in Win16 */
#define SBM_SETSCROLLINFO32 0x00e9
#define SBM_SETSCROLLINFO WINELIB_NAME(SBM_SETSCROLLINFO)
-#define SBM_GETSCROLLINFO16 WM_NULL /* Not in Win16 */
#define SBM_GETSCROLLINFO32 0x00ea
#define SBM_GETSCROLLINFO WINELIB_NAME(SBM_GETSCROLLINFO)
@@ -526,6 +1638,48 @@
#define CB_ERR (-1)
#define CB_ERRSPACE (-2)
+#define MB_OK 0x00000000
+#define MB_OKCANCEL 0x00000001
+#define MB_ABORTRETRYIGNORE 0x00000002
+#define MB_YESNOCANCEL 0x00000003
+#define MB_YESNO 0x00000004
+#define MB_RETRYCANCEL 0x00000005
+#define MB_TYPEMASK 0x0000000F
+
+#define MB_ICONHAND 0x00000010
+#define MB_ICONQUESTION 0x00000020
+#define MB_ICONEXCLAMATION 0x00000030
+#define MB_ICONASTERISK 0x00000040
+#define MB_USERICON 0x00000080
+#define MB_ICONMASK 0x000000F0
+
+#define MB_ICONINFORMATION MB_ICONASTERISK
+#define MB_ICONSTOP MB_ICONHAND
+#define MB_ICONWARNING MB_ICONEXCLAMATION
+#define MB_ICONERROR MB_ICONHAND
+
+#define MB_DEFBUTTON1 0x00000000
+#define MB_DEFBUTTON2 0x00000100
+#define MB_DEFBUTTON3 0x00000200
+#define MB_DEFBUTTON4 0x00000300
+#define MB_DEFMASK 0x00000F00
+
+#define MB_APPLMODAL 0x00000000
+#define MB_SYSTEMMODAL 0x00001000
+#define MB_TASKMODAL 0x00002000
+#define MB_MODEMASK 0x00003000
+
+#define MB_HELP 0x00004000
+#define MB_NOFOCUS 0x00008000
+#define MB_MISCMASK 0x0000C000
+
+#define MB_SETFOREGROUND 0x00010000
+#define MB_DEFAULT_DESKTOP_ONLY 0x00020000
+#define MB_SERVICE_NOTIFICATION 0x00040000
+#define MB_TOPMOST 0x00040000
+#define MB_RIGHT 0x00080000
+#define MB_RTLREADING 0x00100000
+
typedef struct _PRINTER_DEFAULTS32A {
LPSTR pDatatype;
LPDEVMODE32A pDevMode;
@@ -635,7 +1789,1029 @@
typedef BOOL32 (CALLBACK *MONITORENUMPROC)(HMONITOR,HDC32,LPRECT32,LPARAM);
+typedef struct tagDLGTEMPLATE
+{
+ DWORD style;
+ DWORD dwExtendedStyle;
+ WORD cdit;
+ short x;
+ short y;
+ short cx;
+ short cy;
+}DLGTEMPLATE, *LPDLGTEMPLATE;
+typedef const DLGTEMPLATE *LPCDLGTEMPLATE;
+/* Fixme: use this instaed of LPCVOID for CreateDialogIndirectParam and DialogBoxIndirectParam*/
+typedef struct tagDLGITEMTEMPLATE
+{
+ DWORD style;
+ DWORD dwExtendedStyle;
+ WORD cdit;
+ short x;
+ short y;
+ short cx;
+ short cy;
+ WORD id;
+}DLGITEMTEMPLATE, *LPDLGITEMTEMPLATE;
+
+typedef const DLGITEMTEMPLATE *LPCDLGITEMTEMPLATE;
+
+ /* CBT hook values */
+#define HCBT_MOVESIZE 0
+#define HCBT_MINMAX 1
+#define HCBT_QS 2
+#define HCBT_CREATEWND 3
+#define HCBT_DESTROYWND 4
+#define HCBT_ACTIVATE 5
+#define HCBT_CLICKSKIPPED 6
+#define HCBT_KEYSKIPPED 7
+#define HCBT_SYSCOMMAND 8
+#define HCBT_SETFOCUS 9
+
+ /* CBT hook structures */
+
+typedef struct
+{
+ CREATESTRUCT32A *lpcs;
+ HWND32 hwndInsertAfter;
+} CBT_CREATEWND32A, *LPCBT_CREATEWND32A;
+
+typedef struct
+{
+ CREATESTRUCT32W *lpcs;
+ HWND32 hwndInsertAfter;
+} CBT_CREATEWND32W, *LPCBT_CREATEWND32W;
+
+DECL_WINELIB_TYPE_AW(CBT_CREATEWND)
+DECL_WINELIB_TYPE_AW(LPCBT_CREATEWND)
+
+typedef struct
+{
+ BOOL32 fMouse;
+ HWND32 hWndActive;
+} CBTACTIVATESTRUCT32, *LPCBTACTIVATESTRUCT32;
+
+DECL_WINELIB_TYPE(CBTACTIVATESTRUCT)
+DECL_WINELIB_TYPE(LPCBTACTIVATESTRUCT)
+
+/* modifiers for RegisterHotKey */
+#define MOD_ALT 0x0001
+#define MOD_CONTROL 0x0002
+#define MOD_SHIFT 0x0004
+#define MOD_WIN 0x0008
+
+/* ids for RegisterHotKey */
+#define IDHOT_SNAPWINDOW (-1) /* SHIFT-PRINTSCRN */
+#define IDHOT_SNAPDESKTOP (-2) /* PRINTSCRN */
+
+ /* keybd_event flags */
+#define KEYEVENTF_EXTENDEDKEY 0x0001
+#define KEYEVENTF_KEYUP 0x0002
+#define KEYEVENTF_WINE_FORCEEXTENDED 0x8000
+
+ /* mouse_event flags */
+#define MOUSEEVENTF_MOVE 0x0001
+#define MOUSEEVENTF_LEFTDOWN 0x0002
+#define MOUSEEVENTF_LEFTUP 0x0004
+#define MOUSEEVENTF_RIGHTDOWN 0x0008
+#define MOUSEEVENTF_RIGHTUP 0x0010
+#define MOUSEEVENTF_MIDDLEDOWN 0x0020
+#define MOUSEEVENTF_MIDDLEUP 0x0040
+#define MOUSEEVENTF_ABSOLUTE 0x8000
+
+/* ExitWindows() flags */
+#define EW_RESTARTWINDOWS 0x0042
+#define EW_REBOOTSYSTEM 0x0043
+#define EW_EXITANDEXECAPP 0x0044
+
+/* ExitWindowsEx() flags */
+#define EWX_LOGOFF 0
+#define EWX_SHUTDOWN 1
+#define EWX_REBOOT 2
+#define EWX_FORCE 4
+#define EWX_POWEROFF 8
+
+/* SetLastErrorEx types */
+#define SLE_ERROR 0x00000001
+#define SLE_MINORERROR 0x00000002
+#define SLE_WARNING 0x00000003
+
+/* Predefined resources */
+#define IDI_APPLICATION32A MAKEINTRESOURCE32A(32512)
+#define IDI_APPLICATION32W MAKEINTRESOURCE32W(32512)
+#define IDI_APPLICATION WINELIB_NAME_AW(IDI_APPLICATION)
+#define IDI_HAND32A MAKEINTRESOURCE32A(32513)
+#define IDI_HAND32W MAKEINTRESOURCE32W(32513)
+#define IDI_HAND WINELIB_NAME_AW(IDI_HAND)
+#define IDI_QUESTION32A MAKEINTRESOURCE32A(32514)
+#define IDI_QUESTION32W MAKEINTRESOURCE32W(32514)
+#define IDI_QUESTION WINELIB_NAME_AW(IDI_QUESTION)
+#define IDI_EXCLAMATION32A MAKEINTRESOURCE32A(32515)
+#define IDI_EXCLAMATION32W MAKEINTRESOURCE32W(32515)
+#define IDI_EXCLAMATION WINELIB_NAME_AW(IDI_EXCLAMATION)
+#define IDI_ASTERISK32A MAKEINTRESOURCE32A(32516)
+#define IDI_ASTERISK32W MAKEINTRESOURCE32W(32516)
+#define IDI_ASTERISK WINELIB_NAME_AW(IDI_ASTERISK)
+
+#define IDC_BUMMER32A MAKEINTRESOURCE32A(100)
+#define IDC_BUMMER32W MAKEINTRESOURCE32W(100)
+#define IDC_BUMMER WINELIB_NAME_AW(IDC_BUMMER)
+#define IDC_ARROW32A MAKEINTRESOURCE32A(32512)
+#define IDC_ARROW32W MAKEINTRESOURCE32W(32512)
+#define IDC_ARROW WINELIB_NAME_AW(IDC_ARROW)
+#define IDC_IBEAM32A MAKEINTRESOURCE32A(32513)
+#define IDC_IBEAM32W MAKEINTRESOURCE32W(32513)
+#define IDC_IBEAM WINELIB_NAME_AW(IDC_IBEAM)
+#define IDC_WAIT32A MAKEINTRESOURCE32A(32514)
+#define IDC_WAIT32W MAKEINTRESOURCE32W(32514)
+#define IDC_WAIT WINELIB_NAME_AW(IDC_WAIT)
+#define IDC_CROSS32A MAKEINTRESOURCE32A(32515)
+#define IDC_CROSS32W MAKEINTRESOURCE32W(32515)
+#define IDC_CROSS WINELIB_NAME_AW(IDC_CROSS)
+#define IDC_UPARROW32A MAKEINTRESOURCE32A(32516)
+#define IDC_UPARROW32W MAKEINTRESOURCE32W(32516)
+#define IDC_UPARROW WINELIB_NAME_AW(IDC_UPARROW)
+#define IDC_SIZE32A MAKEINTRESOURCE32A(32640)
+#define IDC_SIZE32W MAKEINTRESOURCE32W(32640)
+#define IDC_SIZE WINELIB_NAME_AW(IDC_SIZE)
+#define IDC_ICON32A MAKEINTRESOURCE32A(32641)
+#define IDC_ICON32W MAKEINTRESOURCE32W(32641)
+#define IDC_ICON WINELIB_NAME_AW(IDC_ICON)
+#define IDC_SIZENWSE32A MAKEINTRESOURCE32A(32642)
+#define IDC_SIZENWSE32W MAKEINTRESOURCE32W(32642)
+#define IDC_SIZENWSE WINELIB_NAME_AW(IDC_SIZENWSE)
+#define IDC_SIZENESW32A MAKEINTRESOURCE32A(32643)
+#define IDC_SIZENESW32W MAKEINTRESOURCE32W(32643)
+#define IDC_SIZENESW WINELIB_NAME_AW(IDC_SIZENESW)
+#define IDC_SIZEWE32A MAKEINTRESOURCE32A(32644)
+#define IDC_SIZEWE32W MAKEINTRESOURCE32W(32644)
+#define IDC_SIZEWE WINELIB_NAME_AW(IDC_SIZEWE)
+#define IDC_SIZENS32A MAKEINTRESOURCE32A(32645)
+#define IDC_SIZENS32W MAKEINTRESOURCE32W(32645)
+#define IDC_SIZENS WINELIB_NAME_AW(IDC_SIZENS)
+#define IDC_SIZEALL32A MAKEINTRESOURCE32A(32646)
+#define IDC_SIZEALL32W MAKEINTRESOURCE32W(32646)
+#define IDC_SIZEALL WINELIB_NAME_AW(IDC_SIZEALL)
+#define IDC_NO32A MAKEINTRESOURCE32A(32648)
+#define IDC_NO32W MAKEINTRESOURCE32W(32648)
+#define IDC_NO WINELIB_NAME_AW(IDC_NO)
+#define IDC_APPSTARTING32A MAKEINTRESOURCE32A(32650)
+#define IDC_APPSTARTING32W MAKEINTRESOURCE32W(32650)
+#define IDC_APPSTARTING WINELIB_NAME_AW(IDC_APPSTARTING)
+#define IDC_HELP32A MAKEINTRESOURCE32A(32651)
+#define IDC_HELP32W MAKEINTRESOURCE32W(32651)
+#define IDC_HELP WINELIB_NAME_AW(IDC_HELP)
+
+/* SystemParametersInfo */
+/* defines below are for all win versions */
+#define SPI_GETBEEP 1
+#define SPI_SETBEEP 2
+#define SPI_GETMOUSE 3
+#define SPI_SETMOUSE 4
+#define SPI_GETBORDER 5
+#define SPI_SETBORDER 6
+#define SPI_GETKEYBOARDSPEED 10
+#define SPI_SETKEYBOARDSPEED 11
+#define SPI_LANGDRIVER 12
+#define SPI_ICONHORIZONTALSPACING 13
+#define SPI_GETSCREENSAVETIMEOUT 14
+#define SPI_SETSCREENSAVETIMEOUT 15
+#define SPI_GETSCREENSAVEACTIVE 16
+#define SPI_SETSCREENSAVEACTIVE 17
+#define SPI_GETGRIDGRANULARITY 18
+#define SPI_SETGRIDGRANULARITY 19
+#define SPI_SETDESKWALLPAPER 20
+#define SPI_SETDESKPATTERN 21
+#define SPI_GETKEYBOARDDELAY 22
+#define SPI_SETKEYBOARDDELAY 23
+#define SPI_ICONVERTICALSPACING 24
+#define SPI_GETICONTITLEWRAP 25
+#define SPI_SETICONTITLEWRAP 26
+#define SPI_GETMENUDROPALIGNMENT 27
+#define SPI_SETMENUDROPALIGNMENT 28
+#define SPI_SETDOUBLECLKWIDTH 29
+#define SPI_SETDOUBLECLKHEIGHT 30
+#define SPI_GETICONTITLELOGFONT 31
+#define SPI_SETDOUBLECLICKTIME 32
+#define SPI_SETMOUSEBUTTONSWAP 33
+#define SPI_SETICONTITLELOGFONT 34
+#define SPI_GETFASTTASKSWITCH 35
+#define SPI_SETFASTTASKSWITCH 36
+#define SPI_SETDRAGFULLWINDOWS 37
+#define SPI_GETDRAGFULLWINDOWS 38
+
+#define SPI_GETFILTERKEYS 50
+#define SPI_SETFILTERKEYS 51
+#define SPI_GETTOGGLEKEYS 52
+#define SPI_SETTOGGLEKEYS 53
+#define SPI_GETMOUSEKEYS 54
+#define SPI_SETMOUSEKEYS 55
+#define SPI_GETSHOWSOUNDS 56
+#define SPI_SETSHOWSOUNDS 57
+#define SPI_GETSTICKYKEYS 58
+#define SPI_SETSTICKYKEYS 59
+#define SPI_GETACCESSTIMEOUT 60
+#define SPI_SETACCESSTIMEOUT 61
+
+#define SPI_GETSOUNDSENTRY 64
+#define SPI_SETSOUNDSENTRY 65
+
+/* defines below are for all win versions WINVER >= 0x0400 */
+#define SPI_SETDRAGFULLWINDOWS 37
+#define SPI_GETDRAGFULLWINDOWS 38
+#define SPI_GETNONCLIENTMETRICS 41
+#define SPI_SETNONCLIENTMETRICS 42
+#define SPI_GETMINIMIZEDMETRICS 43
+#define SPI_SETMINIMIZEDMETRICS 44
+#define SPI_GETICONMETRICS 45
+#define SPI_SETICONMETRICS 46
+#define SPI_SETWORKAREA 47
+#define SPI_GETWORKAREA 48
+#define SPI_SETPENWINDOWS 49
+
+#define SPI_GETSERIALKEYS 62
+#define SPI_SETSERIALKEYS 63
+#define SPI_GETHIGHCONTRAST 66
+#define SPI_SETHIGHCONTRAST 67
+#define SPI_GETKEYBOARDPREF 68
+#define SPI_SETKEYBOARDPREF 69
+#define SPI_GETSCREENREADER 70
+#define SPI_SETSCREENREADER 71
+#define SPI_GETANIMATION 72
+#define SPI_SETANIMATION 73
+#define SPI_GETFONTSMOOTHING 74
+#define SPI_SETFONTSMOOTHING 75
+#define SPI_SETDRAGWIDTH 76
+#define SPI_SETDRAGHEIGHT 77
+#define SPI_SETHANDHELD 78
+#define SPI_GETLOWPOWERTIMEOUT 79
+#define SPI_GETPOWEROFFTIMEOUT 80
+#define SPI_SETLOWPOWERTIMEOUT 81
+#define SPI_SETPOWEROFFTIMEOUT 82
+#define SPI_GETLOWPOWERACTIVE 83
+#define SPI_GETPOWEROFFACTIVE 84
+#define SPI_SETLOWPOWERACTIVE 85
+#define SPI_SETPOWEROFFACTIVE 86
+#define SPI_SETCURSORS 87
+#define SPI_SETICONS 88
+#define SPI_GETDEFAULTINPUTLANG 89
+#define SPI_SETDEFAULTINPUTLANG 90
+#define SPI_SETLANGTOGGLE 91
+#define SPI_GETWINDOWSEXTENSION 92
+#define SPI_SETMOUSETRAILS 93
+#define SPI_GETMOUSETRAILS 94
+#define SPI_SETSCREENSAVERRUNNING 97
+#define SPI_SCREENSAVERRUNNING SPI_SETSCREENSAVERRUNNING
+
+/* defines below are for all win versions (_WIN32_WINNT >= 0x0400) ||
+ * (_WIN32_WINDOWS > 0x0400) */
+#define SPI_GETMOUSEHOVERWIDTH 98
+#define SPI_SETMOUSEHOVERWIDTH 99
+#define SPI_GETMOUSEHOVERHEIGHT 100
+#define SPI_SETMOUSEHOVERHEIGHT 101
+#define SPI_GETMOUSEHOVERTIME 102
+#define SPI_SETMOUSEHOVERTIME 103
+#define SPI_GETWHEELSCROLLLINES 104
+#define SPI_SETWHEELSCROLLLINES 105
+
+#define SPI_GETSHOWIMEUI 110
+#define SPI_SETSHOWIMEUI 111
+
+/* defines below are for all win versions WINVER >= 0x0500 */
+#define SPI_GETMOUSESPEED 112
+#define SPI_SETMOUSESPEED 113
+#define SPI_GETSCREENSAVERRUNNING 114
+
+#define SPI_GETACTIVEWINDOWTRACKING 0x1000
+#define SPI_SETACTIVEWINDOWTRACKING 0x1001
+#define SPI_GETMENUANIMATION 0x1002
+#define SPI_SETMENUANIMATION 0x1003
+#define SPI_GETCOMBOBOXANIMATION 0x1004
+#define SPI_SETCOMBOBOXANIMATION 0x1005
+#define SPI_GETLISTBOXSMOOTHSCROLLING 0x1006
+#define SPI_SETLISTBOXSMOOTHSCROLLING 0x1007
+#define SPI_GETGRADIENTCAPTIONS 0x1008
+#define SPI_SETGRADIENTCAPTIONS 0x1009
+#define SPI_GETMENUUNDERLINES 0x100A
+#define SPI_SETMENUUNDERLINES 0x100B
+#define SPI_GETACTIVEWNDTRKZORDER 0x100C
+#define SPI_SETACTIVEWNDTRKZORDER 0x100D
+#define SPI_GETHOTTRACKING 0x100E
+#define SPI_SETHOTTRACKING 0x100F
+#define SPI_GETFOREGROUNDLOCKTIMEOUT 0x2000
+#define SPI_SETFOREGROUNDLOCKTIMEOUT 0x2001
+#define SPI_GETACTIVEWNDTRKTIMEOUT 0x2002
+#define SPI_SETACTIVEWNDTRKTIMEOUT 0x2003
+#define SPI_GETFOREGROUNDFLASHCOUNT 0x2004
+#define SPI_SETFOREGROUNDFLASHCOUNT 0x2005
+
+/* SystemParametersInfo flags */
+
+#define SPIF_UPDATEINIFILE 1
+#define SPIF_SENDWININICHANGE 2
+#define SPIF_SENDCHANGE SPIF_SENDWININICHANGE
+
+/* Window Styles */
+#define WS_OVERLAPPED 0x00000000L
+#define WS_POPUP 0x80000000L
+#define WS_CHILD 0x40000000L
+#define WS_MINIMIZE 0x20000000L
+#define WS_VISIBLE 0x10000000L
+#define WS_DISABLED 0x08000000L
+#define WS_CLIPSIBLINGS 0x04000000L
+#define WS_CLIPCHILDREN 0x02000000L
+#define WS_MAXIMIZE 0x01000000L
+#define WS_CAPTION 0x00C00000L
+#define WS_BORDER 0x00800000L
+#define WS_DLGFRAME 0x00400000L
+#define WS_VSCROLL 0x00200000L
+#define WS_HSCROLL 0x00100000L
+#define WS_SYSMENU 0x00080000L
+#define WS_THICKFRAME 0x00040000L
+#define WS_GROUP 0x00020000L
+#define WS_TABSTOP 0x00010000L
+#define WS_MINIMIZEBOX 0x00020000L
+#define WS_MAXIMIZEBOX 0x00010000L
+#define WS_TILED WS_OVERLAPPED
+#define WS_ICONIC WS_MINIMIZE
+#define WS_SIZEBOX WS_THICKFRAME
+#define WS_OVERLAPPEDWINDOW (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME| WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
+#define WS_POPUPWINDOW (WS_POPUP | WS_BORDER | WS_SYSMENU)
+#define WS_CHILDWINDOW (WS_CHILD)
+#define WS_TILEDWINDOW (WS_OVERLAPPEDWINDOW)
+
+/* Window extended styles */
+#define WS_EX_DLGMODALFRAME 0x00000001L
+#define WS_EX_DRAGDETECT 0x00000002L
+#define WS_EX_NOPARENTNOTIFY 0x00000004L
+#define WS_EX_TOPMOST 0x00000008L
+#define WS_EX_ACCEPTFILES 0x00000010L
+#define WS_EX_TRANSPARENT 0x00000020L
+
+/* New Win95/WinNT4 styles */
+#define WS_EX_MDICHILD 0x00000040L
+#define WS_EX_TOOLWINDOW 0x00000080L
+#define WS_EX_WINDOWEDGE 0x00000100L
+#define WS_EX_CLIENTEDGE 0x00000200L
+#define WS_EX_CONTEXTHELP 0x00000400L
+#define WS_EX_RIGHT 0x00001000L
+#define WS_EX_LEFT 0x00000000L
+#define WS_EX_RTLREADING 0x00002000L
+#define WS_EX_LTRREADING 0x00000000L
+#define WS_EX_LEFTSCROLLBAR 0x00004000L
+#define WS_EX_RIGHTSCROLLBAR 0x00000000L
+#define WS_EX_CONTROLPARENT 0x00010000L
+#define WS_EX_STATICEDGE 0x00020000L
+#define WS_EX_APPWINDOW 0x00040000L
+
+#define WS_EX_OVERLAPPEDWINDOW (WS_EX_WINDOWEDGE|WS_EX_CLIENTEDGE)
+#define WS_EX_PALETTEWINDOW (WS_EX_WINDOWEDGE|WS_EX_TOOLWINDOW|WS_EX_TOPMOST)
+
+/* Window scrolling */
+#define SW_SCROLLCHILDREN 0x0001
+#define SW_INVALIDATE 0x0002
+#define SW_ERASE 0x0004
+
+/* CreateWindow() coordinates */
+#define CW_USEDEFAULT32 ((INT32)0x80000000)
+#define CW_USEDEFAULT WINELIB_NAME(CW_USEDEFAULT)
+
+/* ChildWindowFromPointEx Flags */
+#define CWP_ALL 0x0000
+#define CWP_SKIPINVISIBLE 0x0001
+#define CWP_SKIPDISABLED 0x0002
+#define CWP_SKIPTRANSPARENT 0x0004
+
+ /* PeekMessage() options */
+#define PM_NOREMOVE 0x0000
+#define PM_REMOVE 0x0001
+#define PM_NOYIELD 0x0002
+
+#define WM_SHOWWINDOW 0x0018
+
+/* WM_SHOWWINDOW wParam codes */
+#define SW_PARENTCLOSING 1
+#define SW_OTHERMAXIMIZED 2
+#define SW_PARENTOPENING 3
+#define SW_OTHERRESTORED 4
+
+ /* ShowWindow() codes */
+#define SW_HIDE 0
+#define SW_SHOWNORMAL 1
+#define SW_NORMAL 1
+#define SW_SHOWMINIMIZED 2
+#define SW_SHOWMAXIMIZED 3
+#define SW_MAXIMIZE 3
+#define SW_SHOWNOACTIVATE 4
+#define SW_SHOW 5
+#define SW_MINIMIZE 6
+#define SW_SHOWMINNOACTIVE 7
+#define SW_SHOWNA 8
+#define SW_RESTORE 9
+#define SW_SHOWDEFAULT 10
+#define SW_MAX 10
+#define SW_NORMALNA 0xCC /* undoc. flag in MinMaximize */
+
+ /* WM_SIZE message wParam values */
+#define SIZE_RESTORED 0
+#define SIZE_MINIMIZED 1
+#define SIZE_MAXIMIZED 2
+#define SIZE_MAXSHOW 3
+#define SIZE_MAXHIDE 4
+#define SIZENORMAL SIZE_RESTORED
+#define SIZEICONIC SIZE_MINIMIZED
+#define SIZEFULLSCREEN SIZE_MAXIMIZED
+#define SIZEZOOMSHOW SIZE_MAXSHOW
+#define SIZEZOOMHIDE SIZE_MAXHIDE
+
+/* SetWindowPos() and WINDOWPOS flags */
+#define SWP_NOSIZE 0x0001
+#define SWP_NOMOVE 0x0002
+#define SWP_NOZORDER 0x0004
+#define SWP_NOREDRAW 0x0008
+#define SWP_NOACTIVATE 0x0010
+#define SWP_FRAMECHANGED 0x0020 /* The frame changed: send WM_NCCALCSIZE */
+#define SWP_SHOWWINDOW 0x0040
+#define SWP_HIDEWINDOW 0x0080
+#define SWP_NOCOPYBITS 0x0100
+#define SWP_NOOWNERZORDER 0x0200 /* Don't do owner Z ordering */
+
+#define SWP_DRAWFRAME SWP_FRAMECHANGED
+#define SWP_NOREPOSITION SWP_NOOWNERZORDER
+
+#define SWP_NOSENDCHANGING 0x0400
+#define SWP_DEFERERASE 0x2000
+
+#define HWND_DESKTOP ((HWND32)0)
+#define HWND_BROADCAST ((HWND32)0xffff)
+
+/* SetWindowPos() hwndInsertAfter field values */
+#define HWND_TOP ((HWND32)0)
+#define HWND_BOTTOM ((HWND32)1)
+#define HWND_TOPMOST ((HWND32)-1)
+#define HWND_NOTOPMOST ((HWND32)-2)
+
+#define MF_INSERT 0x0000
+#define MF_CHANGE 0x0080
+#define MF_APPEND 0x0100
+#define MF_DELETE 0x0200
+#define MF_REMOVE 0x1000
+#define MF_END 0x0080
+
+#define MF_ENABLED 0x0000
+#define MF_GRAYED 0x0001
+#define MF_DISABLED 0x0002
+#define MF_STRING 0x0000
+#define MF_BITMAP 0x0004
+#define MF_UNCHECKED 0x0000
+#define MF_CHECKED 0x0008
+#define MF_POPUP 0x0010
+#define MF_MENUBARBREAK 0x0020
+#define MF_MENUBREAK 0x0040
+#define MF_UNHILITE 0x0000
+#define MF_HILITE 0x0080
+#define MF_OWNERDRAW 0x0100
+#define MF_USECHECKBITMAPS 0x0200
+#define MF_BYCOMMAND 0x0000
+#define MF_BYPOSITION 0x0400
+#define MF_SEPARATOR 0x0800
+#define MF_DEFAULT 0x1000
+#define MF_SYSMENU 0x2000
+#define MF_HELP 0x4000
+#define MF_RIGHTJUSTIFY 0x4000
+#define MF_MOUSESELECT 0x8000
+
+/* Flags for extended menu item types. */
+#define MFT_STRING MF_STRING
+#define MFT_BITMAP MF_BITMAP
+#define MFT_MENUBARBREAK MF_MENUBARBREAK
+#define MFT_MENUBREAK MF_MENUBREAK
+#define MFT_OWNERDRAW MF_OWNERDRAW
+#define MFT_RADIOCHECK 0x00000200L
+#define MFT_SEPARATOR MF_SEPARATOR
+#define MFT_RIGHTORDER 0x00002000L
+#define MFT_RIGHTJUSTIFY MF_RIGHTJUSTIFY
+
+/* Flags for extended menu item states. */
+#define MFS_GRAYED 0x00000003L
+#define MFS_DISABLED MFS_GRAYED
+#define MFS_CHECKED MF_CHECKED
+#define MFS_HILITE MF_HILITE
+#define MFS_ENABLED MF_ENABLED
+#define MFS_UNCHECKED MF_UNCHECKED
+#define MFS_UNHILITE MF_UNHILITE
+#define MFS_DEFAULT MF_DEFAULT
+
+#define DT_TOP 0
+#define DT_LEFT 0
+#define DT_CENTER 1
+#define DT_RIGHT 2
+#define DT_VCENTER 4
+#define DT_BOTTOM 8
+#define DT_WORDBREAK 16
+#define DT_SINGLELINE 32
+#define DT_EXPANDTABS 64
+#define DT_TABSTOP 128
+#define DT_NOCLIP 256
+#define DT_EXTERNALLEADING 512
+#define DT_CALCRECT 1024
+#define DT_NOPREFIX 2048
+#define DT_INTERNAL 4096
+
+/* DrawCaption()/DrawCaptionTemp() flags */
+#define DC_ACTIVE 0x0001
+#define DC_SMALLCAP 0x0002
+#define DC_ICON 0x0004
+#define DC_TEXT 0x0008
+#define DC_INBUTTON 0x0010
+
+/* DrawEdge() flags */
+#define BDR_RAISEDOUTER 0x0001
+#define BDR_SUNKENOUTER 0x0002
+#define BDR_RAISEDINNER 0x0004
+#define BDR_SUNKENINNER 0x0008
+
+#define BDR_OUTER 0x0003
+#define BDR_INNER 0x000c
+#define BDR_RAISED 0x0005
+#define BDR_SUNKEN 0x000a
+
+#define EDGE_RAISED (BDR_RAISEDOUTER | BDR_RAISEDINNER)
+#define EDGE_SUNKEN (BDR_SUNKENOUTER | BDR_SUNKENINNER)
+#define EDGE_ETCHED (BDR_SUNKENOUTER | BDR_RAISEDINNER)
+#define EDGE_BUMP (BDR_RAISEDOUTER | BDR_SUNKENINNER)
+
+/* border flags */
+#define BF_LEFT 0x0001
+#define BF_TOP 0x0002
+#define BF_RIGHT 0x0004
+#define BF_BOTTOM 0x0008
+#define BF_DIAGONAL 0x0010
+#define BF_MIDDLE 0x0800 /* Fill in the middle */
+#define BF_SOFT 0x1000 /* For softer buttons */
+#define BF_ADJUST 0x2000 /* Calculate the space left over */
+#define BF_FLAT 0x4000 /* For flat rather than 3D borders */
+#define BF_MONO 0x8000 /* For monochrome borders */
+#define BF_TOPLEFT (BF_TOP | BF_LEFT)
+#define BF_TOPRIGHT (BF_TOP | BF_RIGHT)
+#define BF_BOTTOMLEFT (BF_BOTTOM | BF_LEFT)
+#define BF_BOTTOMRIGHT (BF_BOTTOM | BF_RIGHT)
+#define BF_RECT (BF_LEFT | BF_TOP | BF_RIGHT | BF_BOTTOM)
+#define BF_DIAGONAL_ENDTOPRIGHT (BF_DIAGONAL | BF_TOP | BF_RIGHT)
+#define BF_DIAGONAL_ENDTOPLEFT (BF_DIAGONAL | BF_TOP | BF_LEFT)
+#define BF_DIAGONAL_ENDBOTTOMLEFT (BF_DIAGONAL | BF_BOTTOM | BF_LEFT)
+#define BF_DIAGONAL_ENDBOTTOMRIGHT (BF_DIAGONAL | BF_BOTTOM | BF_RIGHT)
+
+/* DrawFrameControl() uType's */
+
+#define DFC_CAPTION 1
+#define DFC_MENU 2
+#define DFC_SCROLL 3
+#define DFC_BUTTON 4
+
+/* uState's */
+
+#define DFCS_CAPTIONCLOSE 0x0000
+#define DFCS_CAPTIONMIN 0x0001
+#define DFCS_CAPTIONMAX 0x0002
+#define DFCS_CAPTIONRESTORE 0x0003
+#define DFCS_CAPTIONHELP 0x0004 /* Windows 95 only */
+
+#define DFCS_MENUARROW 0x0000
+#define DFCS_MENUCHECK 0x0001
+#define DFCS_MENUBULLET 0x0002
+#define DFCS_MENUARROWRIGHT 0x0004
+
+#define DFCS_SCROLLUP 0x0000
+#define DFCS_SCROLLDOWN 0x0001
+#define DFCS_SCROLLLEFT 0x0002
+#define DFCS_SCROLLRIGHT 0x0003
+#define DFCS_SCROLLCOMBOBOX 0x0005
+#define DFCS_SCROLLSIZEGRIP 0x0008
+#define DFCS_SCROLLSIZEGRIPRIGHT 0x0010
+
+#define DFCS_BUTTONCHECK 0x0000
+#define DFCS_BUTTONRADIOIMAGE 0x0001
+#define DFCS_BUTTONRADIOMASK 0x0002 /* to draw nonsquare button */
+#define DFCS_BUTTONRADIO 0x0004
+#define DFCS_BUTTON3STATE 0x0008
+#define DFCS_BUTTONPUSH 0x0010
+
+/* additional state of the control */
+
+#define DFCS_INACTIVE 0x0100
+#define DFCS_PUSHED 0x0200
+#define DFCS_CHECKED 0x0400
+#define DFCS_ADJUSTRECT 0x2000 /* exclude surrounding edge */
+#define DFCS_FLAT 0x4000
+#define DFCS_MONO 0x8000
+
+/* Image type */
+#define DST_COMPLEX 0x0000
+#define DST_TEXT 0x0001
+#define DST_PREFIXTEXT 0x0002
+#define DST_ICON 0x0003
+#define DST_BITMAP 0x0004
+
+/* State type */
+#define DSS_NORMAL 0x0000
+#define DSS_UNION 0x0010 /* Gray string appearance */
+#define DSS_DISABLED 0x0020
+#define DSS_DEFAULT 0x0040 /* Make it bold */
+#define DSS_MONO 0x0080
+#define DSS_RIGHT 0x8000
+
+typedef struct
+{
+ UINT32 CtlType;
+ UINT32 CtlID;
+ UINT32 itemID;
+ UINT32 itemAction;
+ UINT32 itemState;
+ HWND32 hwndItem;
+ HDC32 hDC;
+ RECT32 rcItem WINE_PACKED;
+ DWORD itemData WINE_PACKED;
+} DRAWITEMSTRUCT32, *PDRAWITEMSTRUCT32, *LPDRAWITEMSTRUCT32;
+
+DECL_WINELIB_TYPE(DRAWITEMSTRUCT)
+DECL_WINELIB_TYPE(PDRAWITEMSTRUCT)
+DECL_WINELIB_TYPE(LPDRAWITEMSTRUCT)
+
+typedef struct
+{
+ UINT32 CtlType;
+ UINT32 CtlID;
+ UINT32 itemID;
+ UINT32 itemWidth;
+ UINT32 itemHeight;
+ DWORD itemData;
+} MEASUREITEMSTRUCT32, *PMEASUREITEMSTRUCT32, *LPMEASUREITEMSTRUCT32;
+
+DECL_WINELIB_TYPE(MEASUREITEMSTRUCT)
+DECL_WINELIB_TYPE(PMEASUREITEMSTRUCT)
+DECL_WINELIB_TYPE(LPMEASUREITEMSTRUCT)
+
+typedef struct
+{
+ UINT32 CtlType;
+ UINT32 CtlID;
+ UINT32 itemID;
+ HWND32 hwndItem;
+ DWORD itemData;
+} DELETEITEMSTRUCT32, *LPDELETEITEMSTRUCT32;
+
+DECL_WINELIB_TYPE(DELETEITEMSTRUCT)
+DECL_WINELIB_TYPE(LPDELETEITEMSTRUCT)
+
+typedef struct
+{
+ UINT32 CtlType;
+ UINT32 CtlID;
+ HWND32 hwndItem;
+ UINT32 itemID1;
+ DWORD itemData1;
+ UINT32 itemID2;
+ DWORD itemData2;
+ DWORD dwLocaleId;
+} COMPAREITEMSTRUCT32, *LPCOMPAREITEMSTRUCT32;
+
+DECL_WINELIB_TYPE(COMPAREITEMSTRUCT)
+DECL_WINELIB_TYPE(LPCOMPAREITEMSTRUCT)
+
+/* WM_KEYUP/DOWN/CHAR HIWORD(lParam) flags */
+#define KF_EXTENDED 0x0100
+#define KF_DLGMODE 0x0800
+#define KF_MENUMODE 0x1000
+#define KF_ALTDOWN 0x2000
+#define KF_REPEAT 0x4000
+#define KF_UP 0x8000
+
+/* Virtual key codes */
+#define VK_LBUTTON 0x01
+#define VK_RBUTTON 0x02
+#define VK_CANCEL 0x03
+#define VK_MBUTTON 0x04
+/* 0x05-0x07 Undefined */
+#define VK_BACK 0x08
+#define VK_TAB 0x09
+/* 0x0A-0x0B Undefined */
+#define VK_CLEAR 0x0C
+#define VK_RETURN 0x0D
+/* 0x0E-0x0F Undefined */
+#define VK_SHIFT 0x10
+#define VK_CONTROL 0x11
+#define VK_MENU 0x12
+#define VK_PAUSE 0x13
+#define VK_CAPITAL 0x14
+/* 0x15-0x19 Reserved for Kanji systems */
+/* 0x1A Undefined */
+#define VK_ESCAPE 0x1B
+/* 0x1C-0x1F Reserved for Kanji systems */
+#define VK_SPACE 0x20
+#define VK_PRIOR 0x21
+#define VK_NEXT 0x22
+#define VK_END 0x23
+#define VK_HOME 0x24
+#define VK_LEFT 0x25
+#define VK_UP 0x26
+#define VK_RIGHT 0x27
+#define VK_DOWN 0x28
+#define VK_SELECT 0x29
+#define VK_PRINT 0x2A /* OEM specific in Windows 3.1 SDK */
+#define VK_EXECUTE 0x2B
+#define VK_SNAPSHOT 0x2C
+#define VK_INSERT 0x2D
+#define VK_DELETE 0x2E
+#define VK_HELP 0x2F
+#define VK_0 0x30
+#define VK_1 0x31
+#define VK_2 0x32
+#define VK_3 0x33
+#define VK_4 0x34
+#define VK_5 0x35
+#define VK_6 0x36
+#define VK_7 0x37
+#define VK_8 0x38
+#define VK_9 0x39
+/* 0x3A-0x40 Undefined */
+#define VK_A 0x41
+#define VK_B 0x42
+#define VK_C 0x43
+#define VK_D 0x44
+#define VK_E 0x45
+#define VK_F 0x46
+#define VK_G 0x47
+#define VK_H 0x48
+#define VK_I 0x49
+#define VK_J 0x4A
+#define VK_K 0x4B
+#define VK_L 0x4C
+#define VK_M 0x4D
+#define VK_N 0x4E
+#define VK_O 0x4F
+#define VK_P 0x50
+#define VK_Q 0x51
+#define VK_R 0x52
+#define VK_S 0x53
+#define VK_T 0x54
+#define VK_U 0x55
+#define VK_V 0x56
+#define VK_W 0x57
+#define VK_X 0x58
+#define VK_Y 0x59
+#define VK_Z 0x5A
+
+#define VK_LWIN 0x5B
+#define VK_RWIN 0x5C
+#define VK_APPS 0x5D
+/* 0x5E-0x5F Unassigned */
+#define VK_NUMPAD0 0x60
+#define VK_NUMPAD1 0x61
+#define VK_NUMPAD2 0x62
+#define VK_NUMPAD3 0x63
+#define VK_NUMPAD4 0x64
+#define VK_NUMPAD5 0x65
+#define VK_NUMPAD6 0x66
+#define VK_NUMPAD7 0x67
+#define VK_NUMPAD8 0x68
+#define VK_NUMPAD9 0x69
+#define VK_MULTIPLY 0x6A
+#define VK_ADD 0x6B
+#define VK_SEPARATOR 0x6C
+#define VK_SUBTRACT 0x6D
+#define VK_DECIMAL 0x6E
+#define VK_DIVIDE 0x6F
+#define VK_F1 0x70
+#define VK_F2 0x71
+#define VK_F3 0x72
+#define VK_F4 0x73
+#define VK_F5 0x74
+#define VK_F6 0x75
+#define VK_F7 0x76
+#define VK_F8 0x77
+#define VK_F9 0x78
+#define VK_F10 0x79
+#define VK_F11 0x7A
+#define VK_F12 0x7B
+#define VK_F13 0x7C
+#define VK_F14 0x7D
+#define VK_F15 0x7E
+#define VK_F16 0x7F
+#define VK_F17 0x80
+#define VK_F18 0x81
+#define VK_F19 0x82
+#define VK_F20 0x83
+#define VK_F21 0x84
+#define VK_F22 0x85
+#define VK_F23 0x86
+#define VK_F24 0x87
+/* 0x88-0x8F Unassigned */
+#define VK_NUMLOCK 0x90
+#define VK_SCROLL 0x91
+/* 0x92-0x9F Unassigned */
+/*
+ * differencing between right and left shift/control/alt key.
+ * Used only by GetAsyncKeyState() and GetKeyState().
+ */
+#define VK_LSHIFT 0xA0
+#define VK_RSHIFT 0xA1
+#define VK_LCONTROL 0xA2
+#define VK_RCONTROL 0xA3
+#define VK_LMENU 0xA4
+#define VK_RMENU 0xA5
+/* 0xA6-0xB9 Unassigned */
+#define VK_OEM_1 0xBA
+#define VK_OEM_PLUS 0xBB
+#define VK_OEM_COMMA 0xBC
+#define VK_OEM_MINUS 0xBD
+#define VK_OEM_PERIOD 0xBE
+#define VK_OEM_2 0xBF
+#define VK_OEM_3 0xC0
+/* 0xC1-0xDA Unassigned */
+#define VK_OEM_4 0xDB
+#define VK_OEM_5 0xDC
+#define VK_OEM_6 0xDD
+#define VK_OEM_7 0xDE
+/* 0xDF-0xE4 OEM specific */
+
+#define VK_PROCESSKEY 0xE5
+
+/* 0xE6 OEM specific */
+/* 0xE7-0xE8 Unassigned */
+/* 0xE9-0xF5 OEM specific */
+
+#define VK_ATTN 0xF6
+#define VK_CRSEL 0xF7
+#define VK_EXSEL 0xF8
+#define VK_EREOF 0xF9
+#define VK_PLAY 0xFA
+#define VK_ZOOM 0xFB
+#define VK_NONAME 0xFC
+#define VK_PA1 0xFD
+#define VK_OEM_CLEAR 0xFE
+
+ /* Key status flags for mouse events */
+#define MK_LBUTTON 0x0001
+#define MK_RBUTTON 0x0002
+#define MK_SHIFT 0x0004
+#define MK_CONTROL 0x0008
+#define MK_MBUTTON 0x0010
+
+ /* Queue status flags */
+#define QS_KEY 0x0001
+#define QS_MOUSEMOVE 0x0002
+#define QS_MOUSEBUTTON 0x0004
+#define QS_MOUSE (QS_MOUSEMOVE | QS_MOUSEBUTTON)
+#define QS_POSTMESSAGE 0x0008
+#define QS_TIMER 0x0010
+#define QS_PAINT 0x0020
+#define QS_SENDMESSAGE 0x0040
+#define QS_ALLINPUT 0x007f
+
+#define DDL_READWRITE 0x0000
+#define DDL_READONLY 0x0001
+#define DDL_HIDDEN 0x0002
+#define DDL_SYSTEM 0x0004
+#define DDL_DIRECTORY 0x0010
+#define DDL_ARCHIVE 0x0020
+
+#define DDL_POSTMSGS 0x2000
+#define DDL_DRIVES 0x4000
+#define DDL_EXCLUSIVE 0x8000
+
+ /* Shell hook values */
+#define HSHELL_WINDOWCREATED 1
+#define HSHELL_WINDOWDESTROYED 2
+#define HSHELL_ACTIVATESHELLWINDOW 3
+
+/* Predefined Clipboard Formats */
+#define CF_TEXT 1
+#define CF_BITMAP 2
+#define CF_METAFILEPICT 3
+#define CF_SYLK 4
+#define CF_DIF 5
+#define CF_TIFF 6
+#define CF_OEMTEXT 7
+#define CF_DIB 8
+#define CF_PALETTE 9
+#define CF_PENDATA 10
+#define CF_RIFF 11
+#define CF_WAVE 12
+#define CF_ENHMETAFILE 14
+
+#define CF_OWNERDISPLAY 0x0080
+#define CF_DSPTEXT 0x0081
+#define CF_DSPBITMAP 0x0082
+#define CF_DSPMETAFILEPICT 0x0083
+
+/* "Private" formats don't get GlobalFree()'d */
+#define CF_PRIVATEFIRST 0x0200
+#define CF_PRIVATELAST 0x02FF
+
+/* "GDIOBJ" formats do get DeleteObject()'d */
+#define CF_GDIOBJFIRST 0x0300
+#define CF_GDIOBJLAST 0x03FF
+
+/* Clipboard command messages */
+#define WM_CUT 0x0300
+#define WM_COPY 0x0301
+#define WM_PASTE 0x0302
+#define WM_CLEAR 0x0303
+#define WM_UNDO 0x0304
+
+/* Clipboard owner messages */
+#define WM_RENDERFORMAT 0x0305
+#define WM_RENDERALLFORMATS 0x0306
+#define WM_DESTROYCLIPBOARD 0x0307
+
+/* Clipboard viewer messages */
+#define WM_DRAWCLIPBOARD 0x0308
+#define WM_PAINTCLIPBOARD 0x0309
+#define WM_SIZECLIPBOARD 0x030B
+#define WM_VSCROLLCLIPBOARD 0x030A
+#define WM_HSCROLLCLIPBOARD 0x030E
+#define WM_ASKCBFORMATNAME 0x030C
+#define WM_CHANGECBCHAIN 0x030D
+
+
+
+/* DragObject stuff */
+
+typedef struct
+{
+ HWND16 hWnd;
+ HANDLE16 hScope;
+ WORD wFlags;
+ HANDLE16 hList;
+ HANDLE16 hOfStruct;
+ POINT16 pt WINE_PACKED;
+ LONG l WINE_PACKED;
+} DRAGINFO, *LPDRAGINFO;
+
+#define DRAGOBJ_PROGRAM 0x0001
+#define DRAGOBJ_DATA 0x0002
+#define DRAGOBJ_DIRECTORY 0x0004
+#define DRAGOBJ_MULTIPLE 0x0008
+#define DRAGOBJ_EXTERNAL 0x8000
+
+#define DRAG_PRINT 0x544E5250
+#define DRAG_FILE 0x454C4946
+
+/* types of LoadImage */
+#define IMAGE_BITMAP 0
+#define IMAGE_ICON 1
+#define IMAGE_CURSOR 2
+#define IMAGE_ENHMETA 3
+
+/* loadflags to LoadImage */
+#define LR_DEFAULTCOLOR 0x0000
+#define LR_MONOCHROME 0x0001
+#define LR_COLOR 0x0002
+#define LR_COPYRETURNORG 0x0004
+#define LR_COPYDELETEORG 0x0008
+#define LR_LOADFROMFILE 0x0010
+#define LR_LOADTRANSPARENT 0x0020
+#define LR_DEFAULTSIZE 0x0040
+#define LR_VGA_COLOR 0x0080
+#define LR_LOADMAP3DCOLORS 0x1000
+#define LR_CREATEDIBSECTION 0x2000
+#define LR_COPYFROMRESOURCE 0x4000
+#define LR_SHARED 0x8000
+
+/* Flags for DrawIconEx. */
+#define DI_MASK 1
+#define DI_IMAGE 2
+#define DI_NORMAL (DI_MASK | DI_IMAGE)
+#define DI_COMPAT 4
+#define DI_DEFAULTSIZE 8
+
+ /* misc messages */
+#define WM_NULL 0x0000
+#define WM_CPL_LAUNCH (WM_USER + 1000)
+#define WM_CPL_LAUNCHED (WM_USER + 1001)
+
+/* WM_NOTIFYFORMAT commands and return values */
+#define NFR_ANSI 1
+#define NFR_UNICODE 2
+#define NF_QUERY 3
+#define NF_REQUERY 4
+
#pragma pack(4)
+#define EnumTaskWindows32(handle,proc,lparam) \
+ EnumThreadWindows(handle,proc,lparam)
+#define EnumTaskWindows WINELIB_NAME(EnumTaskWindows)
+#define OemToAnsi32A OemToChar32A
+#define OemToAnsi32W OemToChar32W
+#define OemToAnsi WINELIB_NAME_AW(OemToAnsi)
+#define OemToAnsiBuff32A OemToCharBuff32A
+#define OemToAnsiBuff32W OemToCharBuff32W
+#define OemToAnsiBuff WINELIB_NAME_AW(OemToAnsiBuff)
+#define AnsiToOem32A CharToOem32A
+#define AnsiToOem32W CharToOem32W
+#define AnsiToOem WINELIB_NAME_AW(AnsiToOem)
+#define AnsiToOemBuff32A CharToOemBuff32A
+#define AnsiToOemBuff32W CharToOemBuff32W
+#define AnsiToOemBuff WINELIB_NAME_AW(AnsiToOemBuff)
WORD WINAPI CascadeWindows (HWND32, UINT32, const LPRECT32,
UINT32, const HWND32 *);
INT32 WINAPI CopyAcceleratorTable32A(HACCEL32,LPACCEL32,INT32);
@@ -802,7 +2978,6 @@
#define CheckDlgButton WINELIB_NAME(CheckDlgButton)
DWORD WINAPI CheckMenuItem32(HMENU32,UINT32,UINT32);
#define CheckMenuItem WINELIB_NAME(CheckMenuItem)
-BOOL16 WINAPI CheckMenuRadioItem16(HMENU16,UINT16,UINT16,UINT16,UINT16);
BOOL32 WINAPI CheckMenuRadioItem32(HMENU32,UINT32,UINT32,UINT32,UINT32);
#define CheckMenuRadioItem WINELIB_NAME(CheckMenuRadioItem)
BOOL32 WINAPI CheckRadioButton32(HWND32,UINT32,UINT32,UINT32);
@@ -825,7 +3000,6 @@
#define CopyCursor WINELIB_NAME(CopyCursor)
HICON32 WINAPI CopyIcon32(HICON32);
#define CopyIcon WINELIB_NAME(CopyIcon)
-HICON16 WINAPI CopyImage16(HANDLE16,UINT16,INT16,INT16,UINT16);
HICON32 WINAPI CopyImage32(HANDLE32,UINT32,INT32,INT32,UINT32);
#define CopyImage WINELIB_NAME(CopyImage)
BOOL32 WINAPI CopyRect32(RECT32*,const RECT32*);
@@ -856,7 +3030,6 @@
#define CreateDialogParam WINELIB_NAME_AW(CreateDialogParam)
HICON32 WINAPI CreateIcon32(HINSTANCE32,INT32,INT32,BYTE,BYTE,LPCVOID,LPCVOID);
#define CreateIcon WINELIB_NAME(CreateIcon)
-HICON16 WINAPI CreateIconFromResource16(LPBYTE,UINT16,BOOL16,DWORD);
HICON32 WINAPI CreateIconFromResource32(LPBYTE,UINT32,BOOL32,DWORD);
#define CreateIconFromResource WINELIB_NAME(CreateIconFromResource)
HICON32 WINAPI CreateIconFromResourceEx32(LPBYTE,UINT32,BOOL32,DWORD,INT32,INT32,UINT32);
@@ -988,16 +3161,13 @@
#define EndDialog WINELIB_NAME(EndDialog)
BOOL32 WINAPI EndPaint32(HWND32,const PAINTSTRUCT32*);
#define EndPaint WINELIB_NAME(EndPaint)
-BOOL16 WINAPI EnumChildWindows16(HWND16,WNDENUMPROC16,LPARAM);
BOOL32 WINAPI EnumChildWindows32(HWND32,WNDENUMPROC32,LPARAM);
#define EnumChildWindows WINELIB_NAME(EnumChildWindows)
UINT32 WINAPI EnumClipboardFormats32(UINT32);
#define EnumClipboardFormats WINELIB_NAME(EnumClipboardFormats)
-INT16 WINAPI EnumProps16(HWND16,PROPENUMPROC16);
INT32 WINAPI EnumProps32A(HWND32,PROPENUMPROC32A);
INT32 WINAPI EnumProps32W(HWND32,PROPENUMPROC32W);
#define EnumProps WINELIB_NAME_AW(EnumProps)
-BOOL16 WINAPI EnumWindows16(WNDENUMPROC16,LPARAM);
BOOL32 WINAPI EnumWindows32(WNDENUMPROC32,LPARAM);
#define EnumWindows WINELIB_NAME(EnumWindows)
BOOL32 WINAPI EqualRect32(const RECT32*,const RECT32*);
@@ -1022,7 +3192,6 @@
#define FrameRect WINELIB_NAME(FrameRect)
HWND32 WINAPI GetActiveWindow32(void);
#define GetActiveWindow WINELIB_NAME(GetActiveWindow)
-DWORD WINAPI GetAppCompatFlags16(HTASK16);
DWORD WINAPI GetAppCompatFlags32(HTASK32);
#define GetAppCompatFlags WINELIB_NAME(GetAppCompatFlags)
WORD WINAPI GetAsyncKeyState32(INT32);
@@ -1091,13 +3260,10 @@
#define GetInputState WINELIB_NAME(GetInputState)
UINT32 WINAPI GetInternalWindowPos32(HWND32,LPRECT32,LPPOINT32);
#define GetInternalWindowPos WINELIB_NAME(GetInternalWindowPos)
-INT16 WINAPI GetKBCodePage16(void);
UINT32 WINAPI GetKBCodePage32(void);
#define GetKBCodePage WINELIB_NAME(GetKBCodePage)
-INT16 WINAPI GetKeyboardType16(INT16);
INT32 WINAPI GetKeyboardType32(INT32);
#define GetKeyboardType WINELIB_NAME(GetKeyboardType)
-INT16 WINAPI GetKeyNameText16(LONG,LPSTR,INT16);
INT32 WINAPI GetKeyNameText32A(LONG,LPSTR,INT32);
INT32 WINAPI GetKeyNameText32W(LONG,LPWSTR,INT32);
#define GetKeyNameText WINELIB_NAME_AW(GetKeyNameText)
@@ -1181,7 +3347,6 @@
#define GetWindowPlacement WINELIB_NAME(GetWindowPlacement)
BOOL32 WINAPI GetWindowRect32(HWND32,LPRECT32);
#define GetWindowRect WINELIB_NAME(GetWindowRect)
-INT16 WINAPI GetWindowRgn16(HWND16,HRGN16);
INT32 WINAPI GetWindowRgn32(HWND32,HRGN32);
#define GetWindowRgn WINELIB_NAME(GetWindowRgn)
#define GetWindowTask32(hwnd) ((HTASK32)GetWindowThreadProcessId(hwnd,NULL))
@@ -1257,7 +3422,6 @@
#define IsMenu WINELIB_NAME(IsMenu)
BOOL32 WINAPI IsRectEmpty32(const RECT32*);
#define IsRectEmpty WINELIB_NAME(IsRectEmpty)
-BOOL16 WINAPI IsWindow16(HWND16);
BOOL32 WINAPI IsWindow32(HWND32);
#define IsWindow WINELIB_NAME(IsWindow)
BOOL32 WINAPI IsWindowEnabled32(HWND32);
@@ -1299,12 +3463,10 @@
#define LoadString WINELIB_NAME_AW(LoadString)
BOOL32 WINAPI LockWindowUpdate32(HWND32);
#define LockWindowUpdate WINELIB_NAME(LockWindowUpdate)
-INT16 WINAPI LookupIconIdFromDirectory16(LPBYTE,BOOL16);
INT32 WINAPI LookupIconIdFromDirectory32(LPBYTE,BOOL32);
#define LookupIconIdFromDirectory WINELIB_NAME(LookupIconIdFromDirectory)
INT32 WINAPI LookupIconIdFromDirectoryEx32(LPBYTE,BOOL32,INT32,INT32,UINT32);
#define LookupIconIdFromDirectoryEx WINELIB_NAME(LookupIconIdFromDirectoryEx)
-UINT16 WINAPI MapVirtualKey16(UINT16,UINT16);
UINT32 WINAPI MapVirtualKey32A(UINT32,UINT32);
UINT32 WINAPI MapVirtualKey32W(UINT32,UINT32);
#define MapVirtualKey WINELIB_NAME_AW(MapVirtualKey)
@@ -1393,8 +3555,6 @@
LRESULT WINAPI SendMessage32A(HWND32,UINT32,WPARAM32,LPARAM);
LRESULT WINAPI SendMessage32W(HWND32,UINT32,WPARAM32,LPARAM);
#define SendMessage WINELIB_NAME_AW(SendMessage)
-LRESULT WINAPI SendMessageTimeout16(HWND16,UINT16,WPARAM16,LPARAM,UINT16,
- UINT16,LPWORD);
LRESULT WINAPI SendMessageTimeout32A(HWND32,UINT32,WPARAM32,LPARAM,UINT32,
UINT32,LPDWORD);
LRESULT WINAPI SendMessageTimeout32W(HWND32,UINT32,WPARAM32,LPARAM,UINT32,
@@ -1476,11 +3636,9 @@
#define SetWindowLong WINELIB_NAME_AW(SetWindowLong)
BOOL32 WINAPI SetWindowPlacement32(HWND32,const WINDOWPLACEMENT32*);
#define SetWindowPlacement WINELIB_NAME(SetWindowPlacement)
-FARPROC16 WINAPI SetWindowsHook16(INT16,HOOKPROC16);
HHOOK WINAPI SetWindowsHook32A(INT32,HOOKPROC32);
HHOOK WINAPI SetWindowsHook32W(INT32,HOOKPROC32);
#define SetWindowsHook WINELIB_NAME_AW(SetWindowsHook)
-HHOOK WINAPI SetWindowsHookEx16(INT16,HOOKPROC16,HINSTANCE16,HTASK16);
HHOOK WINAPI SetWindowsHookEx32A(INT32,HOOKPROC32,HINSTANCE32,DWORD);
HHOOK WINAPI SetWindowsHookEx32W(INT32,HOOKPROC32,HINSTANCE32,DWORD);
#define SetWindowsHookEx WINELIB_NAME_AW(SetWindowsHookEx)
@@ -1515,8 +3673,6 @@
LONG WINAPI TabbedTextOut32A(HDC32,INT32,INT32,LPCSTR,INT32,INT32,const INT32*,INT32);
LONG WINAPI TabbedTextOut32W(HDC32,INT32,INT32,LPCWSTR,INT32,INT32,const INT32*,INT32);
#define TabbedTextOut WINELIB_NAME_AW(TabbedTextOut)
-/* FIXME: the following line comes from keyboard.spec */
-INT16 WINAPI ToAscii16(UINT16,UINT16,LPBYTE,LPVOID,UINT16);
INT32 WINAPI ToAscii32(UINT32,UINT32,LPBYTE,LPWORD,UINT32);
#define ToAscii WINELIB_NAME(ToAscii)
BOOL32 WINAPI TrackPopupMenu32(HMENU32,UINT32,INT32,INT32,INT32,HWND32,const RECT32*);
@@ -1527,10 +3683,8 @@
#define TranslateMDISysAccel WINELIB_NAME(TranslateMDISysAccel)
BOOL32 WINAPI TranslateMessage32(const MSG32*);
#define TranslateMessage WINELIB_NAME(TranslateMessage)
-BOOL16 WINAPI UnhookWindowsHook16(INT16,HOOKPROC16);
BOOL32 WINAPI UnhookWindowsHook32(INT32,HOOKPROC32);
#define UnhookWindowsHook WINELIB_NAME(UnhookWindowsHook)
-BOOL16 WINAPI UnhookWindowsHookEx16(HHOOK);
BOOL32 WINAPI UnhookWindowsHookEx32(HHOOK);
#define UnhookWindowsHookEx WINELIB_NAME(UnhookWindowsHookEx)
BOOL32 WINAPI UnionRect32(LPRECT32,const RECT32*,const RECT32*);
@@ -1544,8 +3698,6 @@
#define ValidateRect WINELIB_NAME(ValidateRect)
VOID WINAPI ValidateRgn32(HWND32,HRGN32);
#define ValidateRgn WINELIB_NAME(ValidateRgn)
-/* FIXME the following line comes from keyboard.spec */
-WORD WINAPI VkKeyScan16(CHAR);
WORD WINAPI VkKeyScan32A(CHAR);
WORD WINAPI VkKeyScan32W(WCHAR);
#define VkKeyScan WINELIB_NAME_AW(VkKeyScan)
@@ -1559,15 +3711,12 @@
UINT32 WINAPI WNetAddConnection32A(LPCSTR,LPCSTR,LPCSTR);
UINT32 WINAPI WNetAddConnection32W(LPCWSTR,LPCWSTR,LPCWSTR);
#define WNetAddConnection WINELIB_NAME_AW(WNetAddConnection)
-INT16 WINAPIV wsnprintf16(LPSTR,UINT16,LPCSTR,...);
INT32 WINAPIV wsnprintf32A(LPSTR,UINT32,LPCSTR,...);
INT32 WINAPIV wsnprintf32W(LPWSTR,UINT32,LPCWSTR,...);
#define wsnprintf WINELIB_NAME_AW(wsnprintf)
-INT16 WINAPIV wsprintf16(LPSTR,LPCSTR,...);
INT32 WINAPIV wsprintf32A(LPSTR,LPCSTR,...);
INT32 WINAPIV wsprintf32W(LPWSTR,LPCWSTR,...);
#define wsprintf WINELIB_NAME_AW(wsprintf)
-INT16 WINAPI wvsnprintf16(LPSTR,UINT16,LPCSTR,LPCVOID);
INT32 WINAPI wvsnprintf32A(LPSTR,UINT32,LPCSTR,va_list);
INT32 WINAPI wvsnprintf32W(LPWSTR,UINT32,LPCWSTR,va_list);
#define wvsnprintf WINELIB_NAME_AW(wvsnprintf)
@@ -1575,4 +3724,16 @@
INT32 WINAPI wvsprintf32W(LPWSTR,LPCWSTR,va_list);
#define wvsprintf WINELIB_NAME_AW(wvsprintf)
+BOOL32 WINAPI RegisterShellHook(HWND16,UINT16);
+/* NOTE: This is SYSTEM.3, not USER.182, which is also named KillSystemTimer */
+WORD WINAPI SYSTEM_KillSystemTimer( WORD );
+
+/* Extra functions that don't exist in the Windows API */
+
+HPEN32 WINAPI GetSysColorPen32(INT32);
+INT32 WINAPI LoadMessage32A(HMODULE32,UINT32,WORD,LPSTR,INT32);
+INT32 WINAPI LoadMessage32W(HMODULE32,UINT32,WORD,LPWSTR,INT32);
+
+VOID WINAPI ScreenSwitchEnable(WORD);
+
#endif /* __INCLUDE_WINUSER_H */
diff --git a/include/winver.h b/include/winver.h
new file mode 100644
index 0000000..0fae9b8
--- /dev/null
+++ b/include/winver.h
@@ -0,0 +1,26 @@
+#ifndef __WINE_WINVER_H
+#define __WINE_WINVER_H
+
+DWORD WINAPI VerFindFile16(UINT16,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16*,LPSTR,UINT16*);
+DWORD WINAPI VerFindFile32A(UINT32,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT32*,LPSTR,UINT32*);
+DWORD WINAPI VerFindFile32W(UINT32,LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT32*,LPWSTR,UINT32*);
+#define VerFindFile WINELIB_NAME_AW(VerFindFile)
+DWORD WINAPI VerInstallFile16(UINT16,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16*);
+DWORD WINAPI VerInstallFile32A(UINT32,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT32*);
+DWORD WINAPI VerInstallFile32W(UINT32,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT32*);
+#define VerInstallFile WINELIB_NAME_AW(VerInstallFile)
+DWORD WINAPI VerLanguageName16(UINT16,LPSTR,UINT16);
+DWORD WINAPI VerQueryValue16(SEGPTR,LPCSTR,SEGPTR*,UINT16*);
+DWORD WINAPI VerQueryValue32A(LPVOID,LPCSTR,LPVOID*,UINT32*);
+DWORD WINAPI VerQueryValue32W(LPVOID,LPCWSTR,LPVOID*,UINT32*);
+#define VerQueryValue WINELIB_NAME_AW(VerQueryValue)
+DWORD WINAPI GetFileVersionInfoSize16(LPCSTR,LPDWORD);
+DWORD WINAPI GetFileVersionInfoSize32A(LPCSTR,LPDWORD);
+DWORD WINAPI GetFileVersionInfoSize32W(LPCWSTR,LPDWORD);
+#define GetFileVersionInfoSize WINELIB_NAME_AW(GetFileVersionInfoSize)
+DWORD WINAPI GetFileVersionInfo16(LPCSTR,DWORD,DWORD,LPVOID);
+DWORD WINAPI GetFileVersionInfo32A(LPCSTR,DWORD,DWORD,LPVOID);
+DWORD WINAPI GetFileVersionInfo32W(LPCWSTR,DWORD,DWORD,LPVOID);
+#define GetFileVersionInfo WINELIB_NAME_AW(GetFileVersionInfo)
+
+#endif /* __WINE_WINVER_H */