1 #ifndef __WINE_WINBASE_H
2 #define __WINE_WINBASE_H
6 #define INVALID_HANDLE_VALUE ((HANDLE32) -1)
8 #define WAIT_FAILED 0xffffffff
9 #define WAIT_OBJECT_0 0
10 #define WAIT_ABANDONED STATUS_ABANDONED_WAIT_0
11 #define WAIT_ABANDONED_0 STATUS_ABANDONED_WAIT_0
12 #define WAIT_TIMEOUT STATUS_TIMEOUT
14 #define PAGE_NOACCESS 0x01
15 #define PAGE_READONLY 0x02
16 #define PAGE_READWRITE 0x04
17 #define PAGE_WRITECOPY 0x08
18 #define PAGE_EXECUTE 0x10
19 #define PAGE_EXECUTE_READ 0x20
20 #define PAGE_EXECUTE_READWRITE 0x40
21 #define PAGE_EXECUTE_WRITECOPY 0x80
22 #define PAGE_GUARD 0x100
23 #define PAGE_NOCACHE 0x200
25 #define MEM_COMMIT 0x00001000
26 #define MEM_RESERVE 0x00002000
27 #define MEM_DECOMMIT 0x00004000
28 #define MEM_RELEASE 0x00008000
29 #define MEM_FREE 0x00010000
30 #define MEM_PRIVATE 0x00020000
31 #define MEM_MAPPED 0x00040000
32 #define MEM_TOP_DOWN 0x00100000
34 #define FILE_CASE_SENSITIVE_SEARCH 0x00000001
35 #define FILE_CASE_PRESERVED_NAMES 0x00000002
36 #define FILE_UNICODE_ON_DISK 0x00000004
37 #define FILE_PERSISTENT_ACLS 0x00000008
39 #define FS_CASE_SENSITIVE FILE_CASE_SENSITIVE_SEARCH
40 #define FS_CASE_IS_PRESERVED FILE_CASE_PRESERVED_NAMES
41 #define FS_UNICODE_STORED_ON_DISK FILE_UNICODE_ON_DISK
43 struct _EXCEPTION_POINTERS
;
45 typedef LONG (TOP_LEVEL_EXCEPTION_FILTER
)(struct _EXCEPTION_POINTERS
*);
47 TOP_LEVEL_EXCEPTION_FILTER
*SetUnhandledExceptionFilter(TOP_LEVEL_EXCEPTION_FILTER
*func
);
49 /*WINAPI int SetErrorMode(int);*/
51 #define STATUS_WAIT_0 0x00000000
52 #define STATUS_ABANDONED_WAIT_0 0x00000080
53 #define STATUS_USER_APC 0x000000C0
54 #define STATUS_TIMEOUT 0x00000102
55 #define STATUS_PENDING 0x00000103
56 #define STATUS_GUARD_PAGE_VIOLATION 0x80000001
57 #define STATUS_DATATYPE_MISALIGNMENT 0x80000002
58 #define STATUS_BREAKPOINT 0x80000003
59 #define STATUS_SINGLE_STEP 0x80000004
60 #define STATUS_ACCESS_VIOLATION 0xC0000005
61 #define STATUS_IN_PAGE_ERROR 0xC0000006
62 #define STATUS_NO_MEMORY 0xC0000017
63 #define STATUS_ILLEGAL_INSTRUCTION 0xC000001D
64 #define STATUS_NONCONTINUABLE_EXCEPTION 0xC0000025
65 #define STATUS_INVALID_DISPOSITION 0xC0000026
66 #define STATUS_ARRAY_BOUNDS_EXCEEDED 0xC000008C
67 #define STATUS_FLOAT_DENORMAL_OPERAND 0xC000008D
68 #define STATUS_FLOAT_DIVIDE_BY_ZERO 0xC000008E
69 #define STATUS_FLOAT_INEXACT_RESULT 0xC000008F
70 #define STATUS_FLOAT_INVALID_OPERATION 0xC0000090
71 #define STATUS_FLOAT_OVERFLOW 0xC0000091
72 #define STATUS_FLOAT_STACK_CHECK 0xC0000092
73 #define STATUS_FLOAT_UNDERFLOW 0xC0000093
74 #define STATUS_INTEGER_DIVIDE_BY_ZERO 0xC0000094
75 #define STATUS_INTEGER_OVERFLOW 0xC0000095
76 #define STATUS_PRIVILEGED_INSTRUCTION 0xC0000096
77 #define STATUS_STACK_OVERFLOW 0xC00000FD
78 #define STATUS_CONTROL_C_EXIT 0xC000013A
80 #define DUPLICATE_CLOSE_SOURCE 0x00000001
81 #define DUPLICATE_SAME_ACCESS 0x00000002
106 /* Could this type be considered opaque? */
111 HANDLE32 OwningThread
;
112 HANDLE32 LockSemaphore
;
117 DWORD dwOSVersionInfoSize
;
118 DWORD dwMajorVersion
;
119 DWORD dwMinorVersion
;
122 CHAR szCSDVersion
[128];
126 DWORD dwOSVersionInfoSize
;
127 DWORD dwMajorVersion
;
128 DWORD dwMinorVersion
;
131 WCHAR szCSDVersion
[128];
134 DECL_WINELIB_TYPE_AW(OSVERSIONINFO
);
138 DWORD dwFileAttributes
;
139 FILETIME ftCreationTime
;
140 FILETIME ftLastAccessTime
;
141 FILETIME ftLastWriteTime
;
147 CHAR cAlternateFileName
[14];
148 } WIN32_FIND_DATA32A
, *LPWIN32_FIND_DATA32A
;
152 DWORD dwFileAttributes
;
153 FILETIME ftCreationTime
;
154 FILETIME ftLastAccessTime
;
155 FILETIME ftLastWriteTime
;
160 WCHAR cFileName
[260];
161 WCHAR cAlternateName
[14];
162 } WIN32_FIND_DATA32W
, *LPWIN32_FIND_DATA32W
;
164 DECL_WINELIB_TYPE_AW(WIN32_FIND_DATA
);
165 DECL_WINELIB_TYPE_AW(LPWIN32_FIND_DATA
);
167 #define VER_PLATFORM_WIN32s 0
168 #define VER_PLATFORM_WIN32_WINDOWS 1
169 #define VER_PLATFORM_WIN32_NT 2
171 /*DWORD WINAPI GetVersion( void );*/
172 BOOL32
GetVersionEx32A(OSVERSIONINFO32A
*);
173 BOOL32
GetVersionEx32W(OSVERSIONINFO32W
*);
174 #define GetVersionEx WINELIB_NAME_AW(GetVersionEx)
176 /*int WinMain(HINSTANCE, HINSTANCE prev, char *cmd, int show);*/
178 HACCEL32
LoadAcceleratorsA( HINSTANCE32
, const char *);
180 void DeleteCriticalSection(CRITICAL_SECTION
*lpCrit
);
181 void EnterCriticalSection(CRITICAL_SECTION
*lpCrit
);
182 int GetCurrentProcessId(void);
183 void InitializeCriticalSection(CRITICAL_SECTION
*lpCrit
);
184 void LeaveCriticalSection(CRITICAL_SECTION
*lpCrit
);
185 HANDLE32
OpenProcess(DWORD access
, BOOL32 inherit
, DWORD id
);
186 int TerminateProcess(HANDLE32 h
, int ret
);
188 #endif /* __WINE_WINBASE_H */