wintrust: Support WSS_GET_SECONDARY_SIG_COUNT in Softpub provider.
[wine.git] / include / winbase.h
blob3cfc4649c7dba02e3d1d848d1d60d9e143a1c85f
1 /*
2 * Copyright (C) the Wine project
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #ifndef __WINE_WINBASE_H
20 #define __WINE_WINBASE_H
22 #include <winerror.h>
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
28 #ifndef WINBASEAPI
29 #ifdef _KERNEL32_
30 #define WINBASEAPI
31 #else
32 #define WINBASEAPI DECLSPEC_IMPORT
33 #endif
34 #endif
36 #ifdef _ADVAPI32_
37 #define WINADVAPI
38 #else
39 #define WINADVAPI DECLSPEC_HIDDEN
40 #endif
42 #include <libloaderapi.h>
43 #include <processthreadsapi.h>
44 #include <synchapi.h>
45 #include <threadpoolapiset.h>
47 /* Windows Exit Procedure flag values */
48 #define WEP_FREE_DLL 0
49 #define WEP_SYSTEM_EXIT 1
51 typedef DWORD (CALLBACK *LPTHREAD_START_ROUTINE)(LPVOID);
53 typedef VOID (WINAPI *PFIBER_START_ROUTINE)( LPVOID lpFiberParameter );
54 typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE;
56 #define FIBER_FLAG_FLOAT_SWITCH 1
58 typedef RTL_CRITICAL_SECTION CRITICAL_SECTION;
59 typedef PRTL_CRITICAL_SECTION PCRITICAL_SECTION;
60 typedef PRTL_CRITICAL_SECTION LPCRITICAL_SECTION;
62 typedef RTL_CRITICAL_SECTION_DEBUG CRITICAL_SECTION_DEBUG;
63 typedef PRTL_CRITICAL_SECTION_DEBUG PCRITICAL_SECTION_DEBUG;
64 typedef PRTL_CRITICAL_SECTION_DEBUG LPCRITICAL_SECTION_DEBUG;
66 #define CRITICAL_SECTION_NO_DEBUG_INFO RTL_CRITICAL_SECTION_FLAG_NO_DEBUG_INFO
68 typedef RTL_SRWLOCK SRWLOCK;
69 typedef PRTL_SRWLOCK PSRWLOCK;
71 #define SRWLOCK_INIT RTL_SRWLOCK_INIT
73 typedef WAITORTIMERCALLBACKFUNC WAITORTIMERCALLBACK;
75 #define CONDITION_VARIABLE_INIT RTL_CONDITION_VARIABLE_INIT
76 #define CONDITION_VARIABLE_LOCKMODE_SHARED RTL_CONDITION_VARIABLE_LOCKMODE_SHARED
77 typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE, *PCONDITION_VARIABLE;
79 #define EXCEPTION_DEBUG_EVENT 1
80 #define CREATE_THREAD_DEBUG_EVENT 2
81 #define CREATE_PROCESS_DEBUG_EVENT 3
82 #define EXIT_THREAD_DEBUG_EVENT 4
83 #define EXIT_PROCESS_DEBUG_EVENT 5
84 #define LOAD_DLL_DEBUG_EVENT 6
85 #define UNLOAD_DLL_DEBUG_EVENT 7
86 #define OUTPUT_DEBUG_STRING_EVENT 8
87 #define RIP_EVENT 9
89 typedef struct _EXCEPTION_DEBUG_INFO {
90 EXCEPTION_RECORD ExceptionRecord;
91 DWORD dwFirstChance;
92 } EXCEPTION_DEBUG_INFO;
94 typedef struct _CREATE_THREAD_DEBUG_INFO {
95 HANDLE hThread;
96 LPVOID lpThreadLocalBase;
97 LPTHREAD_START_ROUTINE lpStartAddress;
98 } CREATE_THREAD_DEBUG_INFO;
100 typedef struct _CREATE_PROCESS_DEBUG_INFO {
101 HANDLE hFile;
102 HANDLE hProcess;
103 HANDLE hThread;
104 LPVOID lpBaseOfImage;
105 DWORD dwDebugInfoFileOffset;
106 DWORD nDebugInfoSize;
107 LPVOID lpThreadLocalBase;
108 LPTHREAD_START_ROUTINE lpStartAddress;
109 LPVOID lpImageName;
110 WORD fUnicode;
111 } CREATE_PROCESS_DEBUG_INFO;
113 typedef struct _EXIT_THREAD_DEBUG_INFO {
114 DWORD dwExitCode;
115 } EXIT_THREAD_DEBUG_INFO;
117 typedef struct _EXIT_PROCESS_DEBUG_INFO {
118 DWORD dwExitCode;
119 } EXIT_PROCESS_DEBUG_INFO;
121 typedef struct _LOAD_DLL_DEBUG_INFO {
122 HANDLE hFile;
123 LPVOID lpBaseOfDll;
124 DWORD dwDebugInfoFileOffset;
125 DWORD nDebugInfoSize;
126 LPVOID lpImageName;
127 WORD fUnicode;
128 } LOAD_DLL_DEBUG_INFO;
130 typedef struct _UNLOAD_DLL_DEBUG_INFO {
131 LPVOID lpBaseOfDll;
132 } UNLOAD_DLL_DEBUG_INFO;
134 typedef struct _OUTPUT_DEBUG_STRING_INFO {
135 LPSTR lpDebugStringData;
136 WORD fUnicode;
137 WORD nDebugStringLength;
138 } OUTPUT_DEBUG_STRING_INFO;
140 typedef struct _RIP_INFO {
141 DWORD dwError;
142 DWORD dwType;
143 } RIP_INFO;
145 typedef struct _DEBUG_EVENT {
146 DWORD dwDebugEventCode;
147 DWORD dwProcessId;
148 DWORD dwThreadId;
149 union {
150 EXCEPTION_DEBUG_INFO Exception;
151 CREATE_THREAD_DEBUG_INFO CreateThread;
152 CREATE_PROCESS_DEBUG_INFO CreateProcessInfo;
153 EXIT_THREAD_DEBUG_INFO ExitThread;
154 EXIT_PROCESS_DEBUG_INFO ExitProcess;
155 LOAD_DLL_DEBUG_INFO LoadDll;
156 UNLOAD_DLL_DEBUG_INFO UnloadDll;
157 OUTPUT_DEBUG_STRING_INFO DebugString;
158 RIP_INFO RipInfo;
159 } u;
160 } DEBUG_EVENT, *LPDEBUG_EVENT;
162 typedef PCONTEXT LPCONTEXT;
163 typedef PEXCEPTION_RECORD LPEXCEPTION_RECORD;
164 typedef PEXCEPTION_POINTERS LPEXCEPTION_POINTERS;
166 typedef LONG (CALLBACK *PTOP_LEVEL_EXCEPTION_FILTER)(PEXCEPTION_POINTERS);
167 typedef PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER;
169 #define OFS_MAXPATHNAME 128
170 typedef struct _OFSTRUCT
172 BYTE cBytes;
173 BYTE fFixedDisk;
174 WORD nErrCode;
175 WORD Reserved1;
176 WORD Reserved2;
177 CHAR szPathName[OFS_MAXPATHNAME];
178 } OFSTRUCT, *POFSTRUCT, *LPOFSTRUCT;
180 #define OF_READ 0x0000
181 #define OF_WRITE 0x0001
182 #define OF_READWRITE 0x0002
183 #define OF_SHARE_COMPAT 0x0000
184 #define OF_SHARE_EXCLUSIVE 0x0010
185 #define OF_SHARE_DENY_WRITE 0x0020
186 #define OF_SHARE_DENY_READ 0x0030
187 #define OF_SHARE_DENY_NONE 0x0040
188 #define OF_PARSE 0x0100
189 #define OF_DELETE 0x0200
190 #define OF_VERIFY 0x0400 /* Used with OF_REOPEN */
191 #define OF_SEARCH 0x0400 /* Used without OF_REOPEN */
192 #define OF_CANCEL 0x0800
193 #define OF_CREATE 0x1000
194 #define OF_PROMPT 0x2000
195 #define OF_EXIST 0x4000
196 #define OF_REOPEN 0x8000
198 /* SetErrorMode values */
199 #define SEM_FAILCRITICALERRORS 0x0001
200 #define SEM_NOGPFAULTERRORBOX 0x0002
201 #define SEM_NOALIGNMENTFAULTEXCEPT 0x0004
202 #define SEM_NOOPENFILEERRORBOX 0x8000
204 /* CopyFileEx flags */
205 #define COPY_FILE_FAIL_IF_EXISTS 0x00000001
206 #define COPY_FILE_RESTARTABLE 0x00000002
207 #define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x00000004
208 #define COPY_FILE_ALLOW_DECRYPTED_DESTINATION 0x00000008
209 #define COPY_FILE_COPY_SYMLINK 0x00000800
210 #define COPY_FILE_NO_BUFFERING 0x00001000
212 /* return values for CopyProgressRoutine */
213 #define PROGRESS_CONTINUE 0
214 #define PROGRESS_CANCEL 1
215 #define PROGRESS_STOP 2
216 #define PROGRESS_QUIET 3
218 /* reason codes for CopyProgressRoutine */
219 #define CALLBACK_CHUNK_FINISHED 0
220 #define CALLBACK_STREAM_SWITCH 1
222 /* GetTempFileName() Flags */
223 #define TF_FORCEDRIVE 0x80
225 #define DRIVE_UNKNOWN 0
226 #define DRIVE_NO_ROOT_DIR 1
227 #define DRIVE_REMOVABLE 2
228 #define DRIVE_FIXED 3
229 #define DRIVE_REMOTE 4
230 /* Win32 additions */
231 #define DRIVE_CDROM 5
232 #define DRIVE_RAMDISK 6
234 #define MAX_COMPUTERNAME_LENGTH 15
236 /* The security attributes structure */
237 typedef struct _SECURITY_ATTRIBUTES
239 DWORD nLength;
240 LPVOID lpSecurityDescriptor;
241 BOOL bInheritHandle;
242 } SECURITY_ATTRIBUTES, *PSECURITY_ATTRIBUTES, *LPSECURITY_ATTRIBUTES;
244 #include <namespaceapi.h>
246 #ifndef _FILETIME_
247 #define _FILETIME_
248 /* 64 bit number of 100 nanoseconds intervals since January 1, 1601 */
249 typedef struct _FILETIME
251 #ifdef WORDS_BIGENDIAN
252 DWORD dwHighDateTime;
253 DWORD dwLowDateTime;
254 #else
255 DWORD dwLowDateTime;
256 DWORD dwHighDateTime;
257 #endif
258 } FILETIME, *PFILETIME, *LPFILETIME;
259 #endif /* _FILETIME_ */
261 /* Find* structures */
262 typedef struct _WIN32_FIND_DATAA
264 DWORD dwFileAttributes;
265 FILETIME ftCreationTime;
266 FILETIME ftLastAccessTime;
267 FILETIME ftLastWriteTime;
268 DWORD nFileSizeHigh;
269 DWORD nFileSizeLow;
270 DWORD dwReserved0;
271 DWORD dwReserved1;
272 CHAR cFileName[260];
273 CHAR cAlternateFileName[14];
274 } WIN32_FIND_DATAA, *PWIN32_FIND_DATAA, *LPWIN32_FIND_DATAA;
276 typedef struct _WIN32_FIND_DATAW
278 DWORD dwFileAttributes;
279 FILETIME ftCreationTime;
280 FILETIME ftLastAccessTime;
281 FILETIME ftLastWriteTime;
282 DWORD nFileSizeHigh;
283 DWORD nFileSizeLow;
284 DWORD dwReserved0;
285 DWORD dwReserved1;
286 WCHAR cFileName[260];
287 WCHAR cAlternateFileName[14];
288 } WIN32_FIND_DATAW, *PWIN32_FIND_DATAW, *LPWIN32_FIND_DATAW;
290 DECL_WINELIB_TYPE_AW(WIN32_FIND_DATA)
291 DECL_WINELIB_TYPE_AW(PWIN32_FIND_DATA)
292 DECL_WINELIB_TYPE_AW(LPWIN32_FIND_DATA)
294 typedef enum _FINDEX_INFO_LEVELS
296 FindExInfoStandard,
297 FindExInfoBasic,
298 FindExInfoMaxInfoLevel
299 } FINDEX_INFO_LEVELS;
301 #define FIND_FIRST_EX_CASE_SENSITIVE 1
302 #define FIND_FIRST_EX_LARGE_FETCH 2
304 typedef enum _FINDEX_SEARCH_OPS
306 FindExSearchNameMatch,
307 FindExSearchLimitToDirectories,
308 FindExSearchLimitToDevices,
309 FindExSearchMaxSearchOp
310 } FINDEX_SEARCH_OPS;
312 typedef struct _PROCESS_HEAP_ENTRY
314 LPVOID lpData;
315 DWORD cbData;
316 BYTE cbOverhead;
317 BYTE iRegionIndex;
318 WORD wFlags;
319 union {
320 struct {
321 HANDLE hMem;
322 DWORD dwReserved[3];
323 } Block;
324 struct {
325 DWORD dwCommittedSize;
326 DWORD dwUnCommittedSize;
327 LPVOID lpFirstBlock;
328 LPVOID lpLastBlock;
329 } Region;
330 } DUMMYUNIONNAME;
331 } PROCESS_HEAP_ENTRY, *PPROCESS_HEAP_ENTRY, *LPPROCESS_HEAP_ENTRY;
333 #define PROCESS_HEAP_REGION 0x0001
334 #define PROCESS_HEAP_UNCOMMITTED_RANGE 0x0002
335 #define PROCESS_HEAP_ENTRY_BUSY 0x0004
336 #define PROCESS_HEAP_ENTRY_MOVEABLE 0x0010
337 #define PROCESS_HEAP_ENTRY_DDESHARE 0x0020
339 #define INVALID_HANDLE_VALUE ((HANDLE)~(ULONG_PTR)0)
340 #define INVALID_FILE_SIZE (~0u)
341 #define INVALID_SET_FILE_POINTER (~0u)
342 #define INVALID_FILE_ATTRIBUTES (~0u)
344 #define LOCKFILE_FAIL_IMMEDIATELY 1
345 #define LOCKFILE_EXCLUSIVE_LOCK 2
347 #define FLS_OUT_OF_INDEXES (~0u)
348 #define TLS_OUT_OF_INDEXES (~0u)
350 #define SHUTDOWN_NORETRY 1
352 /* comm */
354 #define CBR_110 0xFF10
355 #define CBR_300 0xFF11
356 #define CBR_600 0xFF12
357 #define CBR_1200 0xFF13
358 #define CBR_2400 0xFF14
359 #define CBR_4800 0xFF15
360 #define CBR_9600 0xFF16
361 #define CBR_14400 0xFF17
362 #define CBR_19200 0xFF18
363 #define CBR_38400 0xFF1B
364 #define CBR_56000 0xFF1F
365 #define CBR_57600 0xFF20
366 #define CBR_115200 0xFF21
367 #define CBR_128000 0xFF23
368 #define CBR_256000 0xFF27
370 #define NOPARITY 0
371 #define ODDPARITY 1
372 #define EVENPARITY 2
373 #define MARKPARITY 3
374 #define SPACEPARITY 4
375 #define ONESTOPBIT 0
376 #define ONE5STOPBITS 1
377 #define TWOSTOPBITS 2
379 #define IGNORE 0
380 #define INFINITE 0xFFFFFFFF
382 #define CE_RXOVER 0x0001
383 #define CE_OVERRUN 0x0002
384 #define CE_RXPARITY 0x0004
385 #define CE_FRAME 0x0008
386 #define CE_BREAK 0x0010
387 #define CE_CTSTO 0x0020
388 #define CE_DSRTO 0x0040
389 #define CE_RLSDTO 0x0080
390 #define CE_TXFULL 0x0100
391 #define CE_PTO 0x0200
392 #define CE_IOE 0x0400
393 #define CE_DNS 0x0800
394 #define CE_OOP 0x1000
395 #define CE_MODE 0x8000
397 #define IE_BADID -1
398 #define IE_OPEN -2
399 #define IE_NOPEN -3
400 #define IE_MEMORY -4
401 #define IE_DEFAULT -5
402 #define IE_HARDWARE -10
403 #define IE_BYTESIZE -11
404 #define IE_BAUDRATE -12
406 #define EV_RXCHAR 0x0001
407 #define EV_RXFLAG 0x0002
408 #define EV_TXEMPTY 0x0004
409 #define EV_CTS 0x0008
410 #define EV_DSR 0x0010
411 #define EV_RLSD 0x0020
412 #define EV_BREAK 0x0040
413 #define EV_ERR 0x0080
414 #define EV_RING 0x0100
415 #define EV_PERR 0x0200
416 #define EV_RX80FULL 0x0400
417 #define EV_EVENT1 0x0800
418 #define EV_EVENT2 0x1000
420 #define SETXOFF 1
421 #define SETXON 2
422 #define SETRTS 3
423 #define CLRRTS 4
424 #define SETDTR 5
425 #define CLRDTR 6
426 #define RESETDEV 7
427 #define SETBREAK 8
428 #define CLRBREAK 9
430 /* Purge functions for Comm Port */
431 #define PURGE_TXABORT 0x0001 /* Kill the pending/current writes to the
432 comm port */
433 #define PURGE_RXABORT 0x0002 /*Kill the pending/current reads to
434 the comm port */
435 #define PURGE_TXCLEAR 0x0004 /* Kill the transmit queue if there*/
436 #define PURGE_RXCLEAR 0x0008 /* Kill the typeahead buffer if there*/
439 /* Modem Status Flags */
440 #define MS_CTS_ON ((DWORD)0x0010)
441 #define MS_DSR_ON ((DWORD)0x0020)
442 #define MS_RING_ON ((DWORD)0x0040)
443 #define MS_RLSD_ON ((DWORD)0x0080)
445 #define RTS_CONTROL_DISABLE 0
446 #define RTS_CONTROL_ENABLE 1
447 #define RTS_CONTROL_HANDSHAKE 2
448 #define RTS_CONTROL_TOGGLE 3
450 #define DTR_CONTROL_DISABLE 0
451 #define DTR_CONTROL_ENABLE 1
452 #define DTR_CONTROL_HANDSHAKE 2
455 #define LMEM_FIXED 0
456 #define LMEM_MOVEABLE 0x0002
457 #define LMEM_NOCOMPACT 0x0010
458 #define LMEM_NODISCARD 0x0020
459 #define LMEM_ZEROINIT 0x0040
460 #define LMEM_MODIFY 0x0080
461 #define LMEM_DISCARDABLE 0x0F00
462 #define LMEM_DISCARDED 0x4000
463 #define LMEM_INVALID_HANDLE 0x8000
464 #define LMEM_LOCKCOUNT 0x00FF
466 #define LPTR (LMEM_FIXED | LMEM_ZEROINIT)
467 #define LHND (LMEM_MOVEABLE | LMEM_ZEROINIT)
469 #define NONZEROLHND (LMEM_MOVEABLE)
470 #define NONZEROLPTR (LMEM_FIXED)
472 #define LocalDiscard(h) (LocalReAlloc((h),0,LMEM_MOVEABLE))
474 #define GMEM_FIXED 0x0000
475 #define GMEM_MOVEABLE 0x0002
476 #define GMEM_NOCOMPACT 0x0010
477 #define GMEM_NODISCARD 0x0020
478 #define GMEM_ZEROINIT 0x0040
479 #define GMEM_MODIFY 0x0080
480 #define GMEM_DISCARDABLE 0x0100
481 #define GMEM_NOT_BANKED 0x1000
482 #define GMEM_SHARE 0x2000
483 #define GMEM_DDESHARE 0x2000
484 #define GMEM_NOTIFY 0x4000
485 #define GMEM_LOWER GMEM_NOT_BANKED
486 #define GMEM_DISCARDED 0x4000
487 #define GMEM_LOCKCOUNT 0x00ff
488 #define GMEM_INVALID_HANDLE 0x8000
490 #define GHND (GMEM_MOVEABLE | GMEM_ZEROINIT)
491 #define GPTR (GMEM_FIXED | GMEM_ZEROINIT)
493 #define GlobalLRUNewest(h) ((HANDLE)(h))
494 #define GlobalLRUOldest(h) ((HANDLE)(h))
495 #define GlobalDiscard(h) (GlobalReAlloc((h),0,GMEM_MOVEABLE))
497 #define INVALID_ATOM ((ATOM)0)
498 #define MAXINTATOM 0xc000
499 #ifdef WINE_NO_UNICODE_MACROS /* force using a cast */
500 #define MAKEINTATOM(atom) ((ULONG_PTR)((WORD)(atom)))
501 #else
502 #define MAKEINTATOM(atom) ((LPTSTR)((ULONG_PTR)((WORD)(atom))))
503 #endif
505 typedef struct tagMEMORYSTATUS
507 DWORD dwLength;
508 DWORD dwMemoryLoad;
509 SIZE_T dwTotalPhys;
510 SIZE_T dwAvailPhys;
511 SIZE_T dwTotalPageFile;
512 SIZE_T dwAvailPageFile;
513 SIZE_T dwTotalVirtual;
514 SIZE_T dwAvailVirtual;
515 } MEMORYSTATUS, *LPMEMORYSTATUS;
517 #include <pshpack8.h>
518 typedef struct tagMEMORYSTATUSEX {
519 DWORD dwLength;
520 DWORD dwMemoryLoad;
521 DWORDLONG DECLSPEC_ALIGN(8) ullTotalPhys;
522 DWORDLONG DECLSPEC_ALIGN(8) ullAvailPhys;
523 DWORDLONG DECLSPEC_ALIGN(8) ullTotalPageFile;
524 DWORDLONG DECLSPEC_ALIGN(8) ullAvailPageFile;
525 DWORDLONG DECLSPEC_ALIGN(8) ullTotalVirtual;
526 DWORDLONG DECLSPEC_ALIGN(8) ullAvailVirtual;
527 DWORDLONG DECLSPEC_ALIGN(8) ullAvailExtendedVirtual;
528 } MEMORYSTATUSEX, *LPMEMORYSTATUSEX;
529 #include <poppack.h>
531 typedef enum _MEMORY_RESOURCE_NOTIFICATION_TYPE {
532 LowMemoryResourceNotification,
533 HighMemoryResourceNotification
534 } MEMORY_RESOURCE_NOTIFICATION_TYPE;
536 #ifndef _SYSTEMTIME_
537 #define _SYSTEMTIME_
538 typedef struct _SYSTEMTIME{
539 WORD wYear;
540 WORD wMonth;
541 WORD wDayOfWeek;
542 WORD wDay;
543 WORD wHour;
544 WORD wMinute;
545 WORD wSecond;
546 WORD wMilliseconds;
547 } SYSTEMTIME, *PSYSTEMTIME, *LPSYSTEMTIME;
548 #endif /* _SYSTEMTIME_ */
550 #include <timezoneapi.h>
552 /* The 'overlapped' data structure used by async I/O functions.
554 typedef struct _OVERLAPPED {
555 #ifdef WORDS_BIGENDIAN
556 ULONG_PTR InternalHigh;
557 ULONG_PTR Internal;
558 #else
559 ULONG_PTR Internal;
560 ULONG_PTR InternalHigh;
561 #endif
562 union {
563 struct {
564 #ifdef WORDS_BIGENDIAN
565 DWORD OffsetHigh;
566 DWORD Offset;
567 #else
568 DWORD Offset;
569 DWORD OffsetHigh;
570 #endif
571 } DUMMYSTRUCTNAME;
572 PVOID Pointer;
573 } DUMMYUNIONNAME;
574 HANDLE hEvent;
575 } OVERLAPPED, *LPOVERLAPPED;
577 typedef struct _OVERLAPPED_ENTRY {
578 ULONG_PTR lpCompletionKey;
579 LPOVERLAPPED lpOverlapped;
580 ULONG_PTR Internal;
581 DWORD dwNumberOfBytesTransferred;
582 } OVERLAPPED_ENTRY, *LPOVERLAPPED_ENTRY;
584 typedef VOID (CALLBACK *LPOVERLAPPED_COMPLETION_ROUTINE)(DWORD,DWORD,LPOVERLAPPED);
586 /* Process startup information.
589 /* STARTUPINFO.dwFlags */
590 #define STARTF_USESHOWWINDOW 0x00000001
591 #define STARTF_USESIZE 0x00000002
592 #define STARTF_USEPOSITION 0x00000004
593 #define STARTF_USECOUNTCHARS 0x00000008
594 #define STARTF_USEFILLATTRIBUTE 0x00000010
595 #define STARTF_RUNFULLSCREEN 0x00000020
596 #define STARTF_FORCEONFEEDBACK 0x00000040
597 #define STARTF_FORCEOFFFEEDBACK 0x00000080
598 #define STARTF_USESTDHANDLES 0x00000100
599 #define STARTF_USEHOTKEY 0x00000200
601 typedef struct _STARTUPINFOA{
602 DWORD cb; /* 00: size of struct */
603 LPSTR lpReserved; /* 04: */
604 LPSTR lpDesktop; /* 08: */
605 LPSTR lpTitle; /* 0c: */
606 DWORD dwX; /* 10: */
607 DWORD dwY; /* 14: */
608 DWORD dwXSize; /* 18: */
609 DWORD dwYSize; /* 1c: */
610 DWORD dwXCountChars; /* 20: */
611 DWORD dwYCountChars; /* 24: */
612 DWORD dwFillAttribute; /* 28: */
613 DWORD dwFlags; /* 2c: */
614 WORD wShowWindow; /* 30: */
615 WORD cbReserved2; /* 32: */
616 BYTE *lpReserved2; /* 34: */
617 HANDLE hStdInput; /* 38: */
618 HANDLE hStdOutput; /* 3c: */
619 HANDLE hStdError; /* 40: */
620 } STARTUPINFOA, *LPSTARTUPINFOA;
622 typedef struct _STARTUPINFOW{
623 DWORD cb;
624 LPWSTR lpReserved;
625 LPWSTR lpDesktop;
626 LPWSTR lpTitle;
627 DWORD dwX;
628 DWORD dwY;
629 DWORD dwXSize;
630 DWORD dwYSize;
631 DWORD dwXCountChars;
632 DWORD dwYCountChars;
633 DWORD dwFillAttribute;
634 DWORD dwFlags;
635 WORD wShowWindow;
636 WORD cbReserved2;
637 BYTE *lpReserved2;
638 HANDLE hStdInput;
639 HANDLE hStdOutput;
640 HANDLE hStdError;
641 } STARTUPINFOW, *LPSTARTUPINFOW;
643 DECL_WINELIB_TYPE_AW(STARTUPINFO)
644 DECL_WINELIB_TYPE_AW(LPSTARTUPINFO)
646 typedef struct _PROCESS_INFORMATION{
647 HANDLE hProcess;
648 HANDLE hThread;
649 DWORD dwProcessId;
650 DWORD dwThreadId;
651 } PROCESS_INFORMATION, *PPROCESS_INFORMATION, *LPPROCESS_INFORMATION;
653 /* CreateProcess: dwCreationFlag values
655 #define DEBUG_PROCESS 0x00000001
656 #define DEBUG_ONLY_THIS_PROCESS 0x00000002
657 #define CREATE_SUSPENDED 0x00000004
658 #define DETACHED_PROCESS 0x00000008
659 #define CREATE_NEW_CONSOLE 0x00000010
660 #define NORMAL_PRIORITY_CLASS 0x00000020
661 #define IDLE_PRIORITY_CLASS 0x00000040
662 #define HIGH_PRIORITY_CLASS 0x00000080
663 #define REALTIME_PRIORITY_CLASS 0x00000100
664 #define CREATE_NEW_PROCESS_GROUP 0x00000200
665 #define CREATE_UNICODE_ENVIRONMENT 0x00000400
666 #define CREATE_SEPARATE_WOW_VDM 0x00000800
667 #define CREATE_SHARED_WOW_VDM 0x00001000
668 #define CREATE_FORCEDOS 0x00002000
669 #define BELOW_NORMAL_PRIORITY_CLASS 0x00004000
670 #define ABOVE_NORMAL_PRIORITY_CLASS 0x00008000
671 #define INHERIT_PARENT_AFFINITY 0x00010000
672 #define INHERIT_CALLER_PRIORITY 0x00020000
673 #define CREATE_PROTECTED_PROCESS 0x00040000
674 #define EXTENDED_STARTUPINFO_PRESENT 0x00080000
675 #define PROCESS_MODE_BACKGROUND_BEGIN 0x00100000
676 #define PROCESS_MODE_BACKGROUND_END 0x00200000
677 #define CREATE_SECURE_PROCESS 0x00400000
678 #define CREATE_BREAKAWAY_FROM_JOB 0x01000000
679 #define CREATE_PRESERVE_CODE_AUTHZ_LEVEL 0x02000000
680 #define CREATE_DEFAULT_ERROR_MODE 0x04000000
681 #define CREATE_NO_WINDOW 0x08000000
682 #define PROFILE_USER 0x10000000
683 #define PROFILE_KERNEL 0x20000000
684 #define PROFILE_SERVER 0x40000000
685 #define CREATE_IGNORE_SYSTEM_DEFAULT 0x80000000
687 #define STACK_SIZE_PARAM_IS_A_RESERVATION 0x00010000
689 /* File object type definitions
691 #define FILE_TYPE_UNKNOWN 0
692 #define FILE_TYPE_DISK 1
693 #define FILE_TYPE_CHAR 2
694 #define FILE_TYPE_PIPE 3
695 #define FILE_TYPE_REMOTE 32768
697 /* File encryption status
699 #define FILE_ENCRYPTABLE 0
700 #define FILE_IS_ENCRYPTED 1
701 #define FILE_SYSTEM_ATTR 2
702 #define FILE_ROOT_DIR 3
703 #define FILE_SYSTEM_DIR 4
704 #define FILE_UNKNOWN 5
705 #define FILE_SYSTEM_NOT_SUPPORT 6
706 #define FILE_USER_DISALLOWED 7
707 #define FILE_READ_ONLY 8
708 #define FILE_DIR_DISALLOWED 9
710 typedef DWORD (WINAPI *PFE_EXPORT_FUNC)(PBYTE,PVOID,ULONG);
711 typedef DWORD (WINAPI *PFE_IMPORT_FUNC)(PBYTE,PVOID,ULONG);
713 #define CREATE_FOR_IMPORT (1)
714 #define CREATE_FOR_DIR (2)
715 #define OVERWRITE_HIDDEN (4)
716 #define EFSRPC_SECURE_ONLY (8)
718 /* File creation flags
720 #define FILE_FLAG_WRITE_THROUGH 0x80000000
721 #define FILE_FLAG_OVERLAPPED 0x40000000
722 #define FILE_FLAG_NO_BUFFERING 0x20000000
723 #define FILE_FLAG_RANDOM_ACCESS 0x10000000
724 #define FILE_FLAG_SEQUENTIAL_SCAN 0x08000000
725 #define FILE_FLAG_DELETE_ON_CLOSE 0x04000000
726 #define FILE_FLAG_BACKUP_SEMANTICS 0x02000000
727 #define FILE_FLAG_POSIX_SEMANTICS 0x01000000
728 #define FILE_FLAG_OPEN_REPARSE_POINT 0x00200000
729 #define FILE_FLAG_OPEN_NO_RECALL 0x00100000
730 #define FILE_FLAG_FIRST_PIPE_INSTANCE 0x00080000
732 #define CREATE_NEW 1
733 #define CREATE_ALWAYS 2
734 #define OPEN_EXISTING 3
735 #define OPEN_ALWAYS 4
736 #define TRUNCATE_EXISTING 5
738 /* Standard handle identifiers
740 #define STD_INPUT_HANDLE ((DWORD) -10)
741 #define STD_OUTPUT_HANDLE ((DWORD) -11)
742 #define STD_ERROR_HANDLE ((DWORD) -12)
744 /* Flags for GetFinalPathNameByHandle
746 #define FILE_NAME_NORMALIZED 0x0
747 #define FILE_NAME_OPENED 0x8
748 #define VOLUME_NAME_DOS 0x0
749 #define VOLUME_NAME_GUID 0x1
750 #define VOLUME_NAME_NT 0x2
751 #define VOLUME_NAME_NONE 0x4
753 typedef struct _BY_HANDLE_FILE_INFORMATION
755 DWORD dwFileAttributes;
756 FILETIME ftCreationTime;
757 FILETIME ftLastAccessTime;
758 FILETIME ftLastWriteTime;
759 DWORD dwVolumeSerialNumber;
760 DWORD nFileSizeHigh;
761 DWORD nFileSizeLow;
762 DWORD nNumberOfLinks;
763 DWORD nFileIndexHigh;
764 DWORD nFileIndexLow;
765 } BY_HANDLE_FILE_INFORMATION, *PBY_HANDLE_FILE_INFORMATION, *LPBY_HANDLE_FILE_INFORMATION ;
767 typedef enum _FILE_ID_TYPE {
768 FileIdType,
769 ObjectIdType,
770 ExtendedFileIdType,
771 MaximumFileIdType
772 } FILE_ID_TYPE, *PFILE_ID_TYPE;
774 typedef struct _FILE_ID_DESCRIPTOR {
775 DWORD dwSize;
776 FILE_ID_TYPE Type;
777 union {
778 LARGE_INTEGER FileId;
779 GUID ObjectId;
780 } DUMMYUNIONNAME;
781 } FILE_ID_DESCRIPTOR, *LPFILE_ID_DESCRIPTOR;
783 typedef enum _FILE_INFO_BY_HANDLE_CLASS {
784 FileBasicInfo,
785 FileStandardInfo,
786 FileNameInfo,
787 FileRenameInfo,
788 FileDispositionInfo,
789 FileAllocationInfo,
790 FileEndOfFileInfo,
791 FileStreamInfo,
792 FileCompressionInfo,
793 FileAttributeTagInfo,
794 FileIdBothDirectoryInfo,
795 FileIdBothDirectoryRestartInfo,
796 FileIoPriorityHintInfo,
797 FileRemoteProtocolInfo,
798 FileFullDirectoryInfo,
799 FileFullDirectoryRestartInfo,
800 FileStorageInfo,
801 FileAlignmentInfo,
802 FileIdInfo,
803 FileIdExtdDirectoryInfo,
804 FileIdExtdDirectoryRestartInfo,
805 MaximumFileInfoByHandlesClass
806 } FILE_INFO_BY_HANDLE_CLASS, *PFILE_INFO_BY_HANDLE_CLASS;
808 typedef struct _FILE_ID_BOTH_DIR_INFO {
809 DWORD NextEntryOffset;
810 DWORD FileIndex;
811 LARGE_INTEGER CreationTime;
812 LARGE_INTEGER LastAccessTime;
813 LARGE_INTEGER LastWriteTime;
814 LARGE_INTEGER ChangeTime;
815 LARGE_INTEGER EndOfFile;
816 LARGE_INTEGER AllocationSize;
817 DWORD FileAttributes;
818 DWORD FileNameLength;
819 DWORD EaSize;
820 CCHAR ShortNameLength;
821 WCHAR ShortName[12];
822 LARGE_INTEGER FileId;
823 WCHAR FileName[1];
824 } FILE_ID_BOTH_DIR_INFO, *PFILE_ID_BOTH_DIR_INFO;
826 typedef struct _FILE_BASIC_INFO {
827 LARGE_INTEGER CreationTime;
828 LARGE_INTEGER LastAccessTime;
829 LARGE_INTEGER LastWriteTime;
830 LARGE_INTEGER ChangeTime;
831 DWORD FileAttributes;
832 } FILE_BASIC_INFO, *PFILE_BASIC_INFO;
834 typedef struct _FILE_STANDARD_INFO {
835 LARGE_INTEGER AllocationSize;
836 LARGE_INTEGER EndOfFile;
837 DWORD NumberOfLinks;
838 BOOLEAN DeletePending;
839 BOOLEAN Directory;
840 } FILE_STANDARD_INFO, *PFILE_STANDARD_INFO;
842 typedef struct _FILE_NAME_INFO {
843 DWORD FileNameLength;
844 WCHAR FileName[1];
845 } FILE_NAME_INFO, *PFILE_NAME_INFO;
847 typedef enum _PRIORITY_HINT {
848 IoPriorityHintVeryLow,
849 IoPriorityHintLow,
850 IoPriorityHintNormal,
851 MaximumIoPriorityHintType
852 } PRIORITY_HINT;
854 typedef struct _FILE_IO_PRIORITY_HINT_INFO {
855 PRIORITY_HINT PriorityHint;
856 } FILE_IO_PRIORITY_HINT_INFO;
858 typedef struct _FILE_ALLOCATION_INFO {
859 LARGE_INTEGER AllocationSize;
860 } FILE_ALLOCATION_INFO, *PFILE_ALLOCATION_INFO;
862 typedef struct _FILE_DISPOSITION_INFO {
863 BOOLEAN DeleteFile;
864 } FILE_DISPOSITION_INFO, *PFILE_DISPOSITION_INFO;
866 typedef struct _FILE_END_OF_FILE_INFO {
867 LARGE_INTEGER EndOfFile;
868 } FILE_END_OF_FILE_INFO, *PFILE_END_OF_FILE_INFO;
870 typedef struct _FILE_RENAME_INFO {
871 BOOLEAN ReplaceIfExists;
872 HANDLE RootDirectory;
873 DWORD FileNameLength;
874 WCHAR FileName[1];
875 } FILE_RENAME_INFO, *PFILE_RENAME_INFO;
877 typedef struct _FILE_ATTRIBUTE_TAG_INFO {
878 DWORD FileAttributes;
879 DWORD ReparseTag;
880 } FILE_ATTRIBUTE_TAG_INFO, *PFILE_ATTRIBUTE_TAG_INFO;
882 typedef struct _FILE_COMPRESSION_INFO {
883 LARGE_INTEGER CompressedFileSize;
884 WORD CompressionFormat;
885 UCHAR CompressionUnitShift;
886 UCHAR ChunkShift;
887 UCHAR ClusterShift;
888 UCHAR Reserved[3];
889 } FILE_COMPRESSION_INFO, *PFILE_COMPRESSION_INFO;
891 typedef struct _FILE_REMOTE_PROTOCOL_INFO {
892 USHORT StructureVersion;
893 USHORT StructureSize;
894 ULONG Protocol;
895 USHORT ProtocolMajorVersion;
896 USHORT ProtocolMinorVersion;
897 USHORT ProtocolRevision;
898 USHORT Reserved;
899 ULONG Flags;
900 struct {
901 ULONG Reserved[8];
902 } GenericReserved;
903 struct {
904 ULONG Reserved[16];
905 } ProtocolSpecificReserved;
906 } FILE_REMOTE_PROTOCOL_INFO, *PFILE_REMOTE_PROTOCOL_INFO;
908 #define PIPE_ACCESS_INBOUND 1
909 #define PIPE_ACCESS_OUTBOUND 2
910 #define PIPE_ACCESS_DUPLEX 3
912 #define PIPE_CLIENT_END 0
913 #define PIPE_SERVER_END 1
914 #define PIPE_READMODE_BYTE 0
915 #define PIPE_READMODE_MESSAGE 2
916 #define PIPE_TYPE_BYTE 0
917 #define PIPE_TYPE_MESSAGE 4
919 #define PIPE_WAIT 0
920 #define PIPE_NOWAIT 1
922 #define PIPE_UNLIMITED_INSTANCES 255
924 #define NMPWAIT_WAIT_FOREVER 0xffffffff
925 #define NMPWAIT_NOWAIT 0x00000001
926 #define NMPWAIT_USE_DEFAULT_WAIT 0x00000000
928 /* Security flags for dwFlagsAndAttributes of CreateFile */
929 #define SECURITY_ANONYMOUS (SecurityAnonymous << 16)
930 #define SECURITY_IDENTIFICATION (SecurityIdentification << 16)
931 #define SECURITY_IMPERSONATION (SecurityImpersonation << 16)
932 #define SECURITY_DELEGATION (SecurityDelegation << 16)
934 #define SECURITY_CONTEXT_TRACKING 0x00040000
935 #define SECURITY_EFFECTIVE_ONLY 0x00080000
937 #define SECURITY_SQOS_PRESENT 0x00100000
938 #define SECURITY_VALID_SQOS_FLAGS 0x001f0000
940 typedef struct _SYSTEM_POWER_STATUS
942 BYTE ACLineStatus;
943 BYTE BatteryFlag;
944 BYTE BatteryLifePercent;
945 BYTE SystemStatusFlag;
946 DWORD BatteryLifeTime;
947 DWORD BatteryFullLifeTime;
948 } SYSTEM_POWER_STATUS, *LPSYSTEM_POWER_STATUS;
950 #define AC_LINE_OFFLINE 0x00
951 #define AC_LINE_ONLINE 0x01
952 #define AC_LINE_BACKUP_POWER 0x02
953 #define AC_LINE_UNKNOWN 0xFF
955 #define BATTERY_FLAG_HIGH 0x01
956 #define BATTERY_FLAG_LOW 0x02
957 #define BATTERY_FLAG_CRITICAL 0x04
958 #define BATTERY_FLAG_CHARGING 0x08
959 #define BATTERY_FLAG_NO_BATTERY 0x80
960 #define BATTERY_FLAG_UNKNOWN 0xFF
962 #define BATTERY_PERCENTAGE_UNKNOWN 0xFF
964 #define SYSTEM_STATUS_FLAG_POWER_SAVING_ON 0x01
966 #define BATTERY_LIFE_UNKNOWN 0xFFFFFFFF
968 typedef struct _SYSTEM_INFO
970 union {
971 DWORD dwOemId; /* Obsolete field - do not use */
972 struct {
973 WORD wProcessorArchitecture;
974 WORD wReserved;
975 } DUMMYSTRUCTNAME;
976 } DUMMYUNIONNAME;
977 DWORD dwPageSize;
978 LPVOID lpMinimumApplicationAddress;
979 LPVOID lpMaximumApplicationAddress;
980 DWORD_PTR dwActiveProcessorMask;
981 DWORD dwNumberOfProcessors;
982 DWORD dwProcessorType;
983 DWORD dwAllocationGranularity;
984 WORD wProcessorLevel;
985 WORD wProcessorRevision;
986 } SYSTEM_INFO, *LPSYSTEM_INFO;
988 typedef BOOL (CALLBACK *ENUMRESTYPEPROCA)(HMODULE,LPSTR,LONG_PTR);
989 typedef BOOL (CALLBACK *ENUMRESTYPEPROCW)(HMODULE,LPWSTR,LONG_PTR);
990 typedef BOOL (CALLBACK *ENUMRESNAMEPROCA)(HMODULE,LPCSTR,LPSTR,LONG_PTR);
991 typedef BOOL (CALLBACK *ENUMRESNAMEPROCW)(HMODULE,LPCWSTR,LPWSTR,LONG_PTR);
992 typedef BOOL (CALLBACK *ENUMRESLANGPROCA)(HMODULE,LPCSTR,LPCSTR,WORD,LONG_PTR);
993 typedef BOOL (CALLBACK *ENUMRESLANGPROCW)(HMODULE,LPCWSTR,LPCWSTR,WORD,LONG_PTR);
995 DECL_WINELIB_TYPE_AW(ENUMRESTYPEPROC)
996 DECL_WINELIB_TYPE_AW(ENUMRESNAMEPROC)
997 DECL_WINELIB_TYPE_AW(ENUMRESLANGPROC)
999 /* flags that can be passed to LoadLibraryEx */
1000 #define DONT_RESOLVE_DLL_REFERENCES 0x00000001
1001 #define LOAD_LIBRARY_AS_DATAFILE 0x00000002
1002 #define LOAD_WITH_ALTERED_SEARCH_PATH 0x00000008
1003 #define LOAD_IGNORE_CODE_AUTHZ_LEVEL 0x00000010
1004 #define LOAD_LIBRARY_AS_IMAGE_RESOURCE 0x00000020
1005 #define LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE 0x00000040
1006 #define LOAD_LIBRARY_REQUIRE_SIGNED_TARGET 0x00000080
1007 #define LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR 0x00000100
1008 #define LOAD_LIBRARY_SEARCH_APPLICATION_DIR 0x00000200
1009 #define LOAD_LIBRARY_SEARCH_USER_DIRS 0x00000400
1010 #define LOAD_LIBRARY_SEARCH_SYSTEM32 0x00000800
1011 #define LOAD_LIBRARY_SEARCH_DEFAULT_DIRS 0x00001000
1013 #define GET_MODULE_HANDLE_EX_FLAG_PIN 1
1014 #define GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT 2
1015 #define GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS 4
1017 /* flags for SetSearchPathMode */
1018 #define BASE_SEARCH_PATH_ENABLE_SAFE_SEARCHMODE 0x00001
1019 #define BASE_SEARCH_PATH_DISABLE_SAFE_SEARCHMODE 0x10000
1020 #define BASE_SEARCH_PATH_PERMANENT 0x08000
1021 #define BASE_SEARCH_PATH_INVALID_FLAGS (~0x18001)
1023 typedef PLDT_ENTRY LPLDT_ENTRY;
1025 typedef enum _GET_FILEEX_INFO_LEVELS {
1026 GetFileExInfoStandard
1027 } GET_FILEEX_INFO_LEVELS;
1029 typedef struct _WIN32_FILE_ATTRIBUTES_DATA {
1030 DWORD dwFileAttributes;
1031 FILETIME ftCreationTime;
1032 FILETIME ftLastAccessTime;
1033 FILETIME ftLastWriteTime;
1034 DWORD nFileSizeHigh;
1035 DWORD nFileSizeLow;
1036 } WIN32_FILE_ATTRIBUTE_DATA, *LPWIN32_FILE_ATTRIBUTE_DATA;
1039 * This one seems to be a Win32 only definition. It also is defined with
1040 * WINAPI instead of CALLBACK in the windows headers.
1042 typedef DWORD (CALLBACK *LPPROGRESS_ROUTINE)(LARGE_INTEGER, LARGE_INTEGER, LARGE_INTEGER,
1043 LARGE_INTEGER, DWORD, DWORD, HANDLE,
1044 HANDLE, LPVOID);
1046 typedef DWORD (WINAPI *APPLICATION_RECOVERY_CALLBACK)(PVOID);
1048 #define RECOVERY_DEFAULT_PING_INTERVAL 5000
1049 #define RECOVERY_MAX_PING_INTERVAL (5*60*1000)
1051 #define RESTART_MAX_CMD_LINE 1024
1053 #define RESTART_NO_CRASH 1
1054 #define RESTART_NO_HANG 2
1055 #define RESTART_NO_PATCH 4
1056 #define RESTART_NO_REBOOT 8
1058 typedef enum _COPYFILE2_MESSAGE_TYPE
1060 COPYFILE2_CALLBACK_NONE = 0,
1061 COPYFILE2_CALLBACK_CHUNK_STARTED,
1062 COPYFILE2_CALLBACK_CHUNK_FINISHED,
1063 COPYFILE2_CALLBACK_STREAM_STARTED,
1064 COPYFILE2_CALLBACK_STREAM_FINISHED,
1065 COPYFILE2_CALLBACK_POLL_CONTINUE,
1066 COPYFILE2_CALLBACK_ERROR,
1067 COPYFILE2_CALLBACK_MAX,
1068 } COPYFILE2_MESSAGE_TYPE;
1070 typedef enum _COPYFILE2_MESSAGE_ACTION
1072 COPYFILE2_PROGRESS_CONTINUE = 0,
1073 COPYFILE2_PROGRESS_CANCEL,
1074 COPYFILE2_PROGRESS_STOP,
1075 COPYFILE2_PROGRESS_QUIET,
1076 COPYFILE2_PROGRESS_PAUSE,
1077 } COPYFILE2_MESSAGE_ACTION;
1079 typedef enum _COPYFILE2_COPY_PHASE
1081 COPYFILE2_PHASE_NONE = 0,
1082 COPYFILE2_PHASE_PREPARE_SOURCE,
1083 COPYFILE2_PHASE_PREPARE_DEST,
1084 COPYFILE2_PHASE_READ_SOURCE,
1085 COPYFILE2_PHASE_WRITE_DESTINATION,
1086 COPYFILE2_PHASE_SERVER_COPY,
1087 COPYFILE2_PHASE_NAMEGRAFT_COPY,
1088 COPYFILE2_PHASE_MAX,
1089 } COPYFILE2_COPY_PHASE;
1091 typedef struct COPYFILE2_MESSAGE
1093 COPYFILE2_MESSAGE_TYPE Type;
1094 DWORD dwPadding;
1095 union
1097 struct
1099 DWORD dwStreamNumber;
1100 DWORD dwReserved;
1101 HANDLE hSourceFile;
1102 HANDLE hDestinationFile;
1103 ULARGE_INTEGER uliChunkNumber;
1104 ULARGE_INTEGER uliChunkSize;
1105 ULARGE_INTEGER uliStreamSize;
1106 ULARGE_INTEGER uliTotalFileSize;
1107 } ChunkStarted;
1108 struct
1110 DWORD dwStreamNumber;
1111 DWORD dwFlags;
1112 HANDLE hSourceFile;
1113 HANDLE hDestinationFile;
1114 ULARGE_INTEGER uliChunkNumber;
1115 ULARGE_INTEGER uliChunkSize;
1116 ULARGE_INTEGER uliStreamSize;
1117 ULARGE_INTEGER uliStreamBytesTransferred;
1118 ULARGE_INTEGER uliTotalFileSize;
1119 ULARGE_INTEGER uliTotalBytesTransferred;
1120 } ChunkFinished;
1121 struct
1123 DWORD dwStreamNumber;
1124 DWORD dwReserved;
1125 HANDLE hSourceFile;
1126 HANDLE hDestinationFile;
1127 ULARGE_INTEGER uliStreamSize;
1128 ULARGE_INTEGER uliTotalFileSize;
1129 } StreamStarted;
1130 struct
1132 DWORD dwStreamNumber;
1133 DWORD dwReserved;
1134 HANDLE hSourceFile;
1135 HANDLE hDestinationFile;
1136 ULARGE_INTEGER uliStreamSize;
1137 ULARGE_INTEGER uliStreamBytesTransferred;
1138 ULARGE_INTEGER uliTotalFileSize;
1139 ULARGE_INTEGER uliTotalBytesTransferred;
1140 } StreamFinished;
1141 struct
1143 DWORD dwReserved;
1144 } PollContinue;
1145 struct
1147 COPYFILE2_COPY_PHASE CopyPhase;
1148 DWORD dwStreamNumber;
1149 HRESULT hrFailure;
1150 DWORD dwReserved;
1151 ULARGE_INTEGER uliChunkNumber;
1152 ULARGE_INTEGER uliStreamSize;
1153 ULARGE_INTEGER uliStreamBytesTransferred;
1154 ULARGE_INTEGER uliTotalFileSize;
1155 ULARGE_INTEGER uliTotalBytesTransferred;
1156 } Error;
1157 } Info;
1158 } COPYFILE2_MESSAGE;
1160 typedef COPYFILE2_MESSAGE_ACTION (CALLBACK *PCOPYFILE2_PROGRESS_ROUTINE)(const COPYFILE2_MESSAGE*,PVOID);
1162 typedef struct COPYFILE2_EXTENDED_PARAMETERS
1164 DWORD dwSize;
1165 DWORD dwCopyFlags;
1166 BOOL *pfCancel;
1167 PCOPYFILE2_PROGRESS_ROUTINE pProgressRoutine;
1168 PVOID pvCallbackContext;
1169 } COPYFILE2_EXTENDED_PARAMETERS;
1171 #define CREATE_EVENT_MANUAL_RESET 1
1172 #define CREATE_EVENT_INITIAL_SET 2
1174 #define CREATE_MUTEX_INITIAL_OWNER 1
1176 #define CREATE_WAITABLE_TIMER_MANUAL_RESET 1
1178 #define WAIT_FAILED 0xffffffff
1179 #define WAIT_OBJECT_0 0
1180 #define WAIT_ABANDONED STATUS_ABANDONED_WAIT_0
1181 #define WAIT_ABANDONED_0 STATUS_ABANDONED_WAIT_0
1182 #define WAIT_IO_COMPLETION STATUS_USER_APC
1183 #define STILL_ACTIVE STATUS_PENDING
1185 #define FILE_BEGIN 0
1186 #define FILE_CURRENT 1
1187 #define FILE_END 2
1189 #define FILE_MAP_COPY 0x00000001
1190 #define FILE_MAP_WRITE 0x00000002
1191 #define FILE_MAP_READ 0x00000004
1192 #define FILE_MAP_ALL_ACCESS 0x000f001f
1193 #define FILE_MAP_EXECUTE 0x00000020
1195 #define MOVEFILE_REPLACE_EXISTING 0x00000001
1196 #define MOVEFILE_COPY_ALLOWED 0x00000002
1197 #define MOVEFILE_DELAY_UNTIL_REBOOT 0x00000004
1198 #define MOVEFILE_WRITE_THROUGH 0x00000008
1200 #define REPLACEFILE_WRITE_THROUGH 0x00000001
1201 #define REPLACEFILE_IGNORE_MERGE_ERRORS 0x00000002
1203 #define FS_CASE_SENSITIVE FILE_CASE_SENSITIVE_SEARCH
1204 #define FS_CASE_IS_PRESERVED FILE_CASE_PRESERVED_NAMES
1205 #define FS_UNICODE_STORED_ON_DISK FILE_UNICODE_ON_DISK
1206 #define FS_PERSISTENT_ACLS FILE_PERSISTENT_ACLS
1207 #define FS_VOL_IS_COMPRESSED FILE_VOLUME_IS_COMPRESSED
1208 #define FS_FILE_COMPRESSION FILE_FILE_COMPRESSION
1209 #define FS_FILE_ENCRYPTION FILE_SUPPORTS_ENCRYPTION
1211 #define MUTEX_MODIFY_STATE MUTANT_QUERY_STATE
1212 #define MUTEX_ALL_ACCESS MUTANT_ALL_ACCESS
1214 #define EXCEPTION_ACCESS_VIOLATION STATUS_ACCESS_VIOLATION
1215 #define EXCEPTION_DATATYPE_MISALIGNMENT STATUS_DATATYPE_MISALIGNMENT
1216 #define EXCEPTION_BREAKPOINT STATUS_BREAKPOINT
1217 #define EXCEPTION_SINGLE_STEP STATUS_SINGLE_STEP
1218 #define EXCEPTION_ARRAY_BOUNDS_EXCEEDED STATUS_ARRAY_BOUNDS_EXCEEDED
1219 #define EXCEPTION_FLT_DENORMAL_OPERAND STATUS_FLOAT_DENORMAL_OPERAND
1220 #define EXCEPTION_FLT_DIVIDE_BY_ZERO STATUS_FLOAT_DIVIDE_BY_ZERO
1221 #define EXCEPTION_FLT_INEXACT_RESULT STATUS_FLOAT_INEXACT_RESULT
1222 #define EXCEPTION_FLT_INVALID_OPERATION STATUS_FLOAT_INVALID_OPERATION
1223 #define EXCEPTION_FLT_OVERFLOW STATUS_FLOAT_OVERFLOW
1224 #define EXCEPTION_FLT_STACK_CHECK STATUS_FLOAT_STACK_CHECK
1225 #define EXCEPTION_FLT_UNDERFLOW STATUS_FLOAT_UNDERFLOW
1226 #define EXCEPTION_INT_DIVIDE_BY_ZERO STATUS_INTEGER_DIVIDE_BY_ZERO
1227 #define EXCEPTION_INT_OVERFLOW STATUS_INTEGER_OVERFLOW
1228 #define EXCEPTION_PRIV_INSTRUCTION STATUS_PRIVILEGED_INSTRUCTION
1229 #define EXCEPTION_IN_PAGE_ERROR STATUS_IN_PAGE_ERROR
1230 #define EXCEPTION_ILLEGAL_INSTRUCTION STATUS_ILLEGAL_INSTRUCTION
1231 #define EXCEPTION_NONCONTINUABLE_EXCEPTION STATUS_NONCONTINUABLE_EXCEPTION
1232 #define EXCEPTION_STACK_OVERFLOW STATUS_STACK_OVERFLOW
1233 #define EXCEPTION_INVALID_DISPOSITION STATUS_INVALID_DISPOSITION
1234 #define EXCEPTION_GUARD_PAGE STATUS_GUARD_PAGE_VIOLATION
1235 #define EXCEPTION_INVALID_HANDLE STATUS_INVALID_HANDLE
1236 #define CONTROL_C_EXIT STATUS_CONTROL_C_EXIT
1238 #define HANDLE_FLAG_INHERIT 0x00000001
1239 #define HANDLE_FLAG_PROTECT_FROM_CLOSE 0x00000002
1241 #define HINSTANCE_ERROR 32
1243 #define THREAD_PRIORITY_LOWEST THREAD_BASE_PRIORITY_MIN
1244 #define THREAD_PRIORITY_BELOW_NORMAL (THREAD_PRIORITY_LOWEST+1)
1245 #define THREAD_PRIORITY_NORMAL 0
1246 #define THREAD_PRIORITY_HIGHEST THREAD_BASE_PRIORITY_MAX
1247 #define THREAD_PRIORITY_ABOVE_NORMAL (THREAD_PRIORITY_HIGHEST-1)
1248 #define THREAD_PRIORITY_ERROR_RETURN (0x7fffffff)
1249 #define THREAD_PRIORITY_TIME_CRITICAL THREAD_BASE_PRIORITY_LOWRT
1250 #define THREAD_PRIORITY_IDLE THREAD_BASE_PRIORITY_IDLE
1252 /* flags to FormatMessage */
1253 #define FORMAT_MESSAGE_ALLOCATE_BUFFER 0x00000100
1254 #define FORMAT_MESSAGE_IGNORE_INSERTS 0x00000200
1255 #define FORMAT_MESSAGE_FROM_STRING 0x00000400
1256 #define FORMAT_MESSAGE_FROM_HMODULE 0x00000800
1257 #define FORMAT_MESSAGE_FROM_SYSTEM 0x00001000
1258 #define FORMAT_MESSAGE_ARGUMENT_ARRAY 0x00002000
1259 #define FORMAT_MESSAGE_MAX_WIDTH_MASK 0x000000FF
1261 /* flags to ACTCTX[AW] */
1262 #define ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID (0x00000001)
1263 #define ACTCTX_FLAG_LANGID_VALID (0x00000002)
1264 #define ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID (0x00000004)
1265 #define ACTCTX_FLAG_RESOURCE_NAME_VALID (0x00000008)
1266 #define ACTCTX_FLAG_SET_PROCESS_DEFAULT (0x00000010)
1267 #define ACTCTX_FLAG_APPLICATION_NAME_VALID (0x00000020)
1268 #define ACTCTX_FLAG_SOURCE_IS_ASSEMBLYREF (0x00000040)
1269 #define ACTCTX_FLAG_HMODULE_VALID (0x00000080)
1271 /* flags to DeactivateActCtx */
1272 #define DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION (0x00000001)
1274 /* flags to FindActCtxSection{Guid,String[AW]} */
1275 #define FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX (0x00000001)
1276 #define FIND_ACTCTX_SECTION_KEY_RETURN_FLAGS (0x00000002)
1277 #define FIND_ACTCTX_SECTION_KEY_RETURN_ASSEMBLY_METADATA (0x00000004)
1279 /* flags to QueryActCtxW */
1280 #define QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX (0x00000004)
1281 #define QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE (0x00000008)
1282 #define QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS (0x00000010)
1283 #define QUERY_ACTCTX_FLAG_NO_ADDREF (0x80000000)
1285 typedef struct tagACTCTXA {
1286 ULONG cbSize;
1287 DWORD dwFlags;
1288 LPCSTR lpSource;
1289 USHORT wProcessorArchitecture;
1290 LANGID wLangId;
1291 LPCSTR lpAssemblyDirectory;
1292 LPCSTR lpResourceName;
1293 LPCSTR lpApplicationName;
1294 HMODULE hModule;
1295 } ACTCTXA, *PACTCTXA;
1297 typedef struct tagACTCTXW {
1298 ULONG cbSize;
1299 DWORD dwFlags;
1300 LPCWSTR lpSource;
1301 USHORT wProcessorArchitecture;
1302 LANGID wLangId;
1303 LPCWSTR lpAssemblyDirectory;
1304 LPCWSTR lpResourceName;
1305 LPCWSTR lpApplicationName;
1306 HMODULE hModule;
1307 } ACTCTXW, *PACTCTXW;
1309 DECL_WINELIB_TYPE_AW(ACTCTX)
1310 DECL_WINELIB_TYPE_AW(PACTCTX)
1312 typedef const ACTCTXA *PCACTCTXA;
1313 typedef const ACTCTXW *PCACTCTXW;
1314 DECL_WINELIB_TYPE_AW(PCACTCTX)
1316 typedef struct tagACTCTX_SECTION_KEYED_DATA_2600 {
1317 ULONG cbSize;
1318 ULONG ulDataFormatVersion;
1319 PVOID lpData;
1320 ULONG ulLength;
1321 PVOID lpSectionGlobalData;
1322 ULONG ulSectionGlobalDataLength;
1323 PVOID lpSectionBase;
1324 ULONG ulSectionTotalLength;
1325 HANDLE hActCtx;
1326 ULONG ulAssemblyRosterIndex;
1327 } ACTCTX_SECTION_KEYED_DATA_2600, *PACTCTX_SECTION_KEYED_DATA_2600;
1328 typedef const ACTCTX_SECTION_KEYED_DATA_2600 *PCACTCTX_SECTION_KEYED_DATA_2600;
1330 typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA {
1331 PVOID lpInformation;
1332 PVOID lpSectionBase;
1333 ULONG ulSectionLength;
1334 PVOID lpSectionGlobalDataBase;
1335 ULONG ulSectionGlobalDataLength;
1336 } ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA, *PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
1337 typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA *PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
1339 typedef struct tagACTCTX_SECTION_KEYED_DATA {
1340 ULONG cbSize;
1341 ULONG ulDataFormatVersion;
1342 PVOID lpData;
1343 ULONG ulLength;
1344 PVOID lpSectionGlobalData;
1345 ULONG ulSectionGlobalDataLength;
1346 PVOID lpSectionBase;
1347 ULONG ulSectionTotalLength;
1348 HANDLE hActCtx;
1349 ULONG ulAssemblyRosterIndex;
1351 /* Non 2600 extra fields */
1352 ULONG ulFlags;
1353 ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata;
1354 } ACTCTX_SECTION_KEYED_DATA, *PACTCTX_SECTION_KEYED_DATA;
1355 typedef const ACTCTX_SECTION_KEYED_DATA *PCACTCTX_SECTION_KEYED_DATA;
1357 typedef struct _ACTIVATION_CONTEXT_BASIC_INFORMATION {
1358 HANDLE hActCtx;
1359 DWORD dwFlags;
1360 } ACTIVATION_CONTEXT_BASIC_INFORMATION, *PACTIVATION_CONTEXT_BASIC_INFORMATION;
1362 typedef BOOL (WINAPI *PQUERYACTCTXW_FUNC)(DWORD,HANDLE,PVOID,ULONG,PVOID,SIZE_T,SIZE_T *);
1364 typedef struct tagCOMSTAT
1366 DWORD fCtsHold : 1;
1367 DWORD fDsrHold : 1;
1368 DWORD fRlsdHold : 1;
1369 DWORD fXoffHold : 1;
1370 DWORD fXoffSent : 1;
1371 DWORD fEof : 1;
1372 DWORD fTxim : 1;
1373 DWORD fReserved : 25;
1374 DWORD cbInQue;
1375 DWORD cbOutQue;
1376 } COMSTAT, *LPCOMSTAT;
1378 typedef struct tagDCB
1380 DWORD DCBlength;
1381 DWORD BaudRate;
1382 unsigned fBinary :1;
1383 unsigned fParity :1;
1384 unsigned fOutxCtsFlow :1;
1385 unsigned fOutxDsrFlow :1;
1386 unsigned fDtrControl :2;
1387 unsigned fDsrSensitivity :1;
1388 unsigned fTXContinueOnXoff :1;
1389 unsigned fOutX :1;
1390 unsigned fInX :1;
1391 unsigned fErrorChar :1;
1392 unsigned fNull :1;
1393 unsigned fRtsControl :2;
1394 unsigned fAbortOnError :1;
1395 unsigned fDummy2 :17;
1396 WORD wReserved;
1397 WORD XonLim;
1398 WORD XoffLim;
1399 BYTE ByteSize;
1400 BYTE Parity;
1401 BYTE StopBits;
1402 char XonChar;
1403 char XoffChar;
1404 char ErrorChar;
1405 char EofChar;
1406 char EvtChar;
1407 WORD wReserved1;
1408 } DCB, *LPDCB;
1410 typedef struct tagCOMMCONFIG {
1411 DWORD dwSize;
1412 WORD wVersion;
1413 WORD wReserved;
1414 DCB dcb;
1415 DWORD dwProviderSubType;
1416 DWORD dwProviderOffset;
1417 DWORD dwProviderSize;
1418 WCHAR wcProviderData[1];
1419 } COMMCONFIG, *LPCOMMCONFIG;
1421 typedef struct tagCOMMPROP {
1422 WORD wPacketLength;
1423 WORD wPacketVersion;
1424 DWORD dwServiceMask;
1425 DWORD dwReserved1;
1426 DWORD dwMaxTxQueue;
1427 DWORD dwMaxRxQueue;
1428 DWORD dwMaxBaud;
1429 DWORD dwProvSubType;
1430 DWORD dwProvCapabilities;
1431 DWORD dwSettableParams;
1432 DWORD dwSettableBaud;
1433 WORD wSettableData;
1434 WORD wSettableStopParity;
1435 DWORD dwCurrentTxQueue;
1436 DWORD dwCurrentRxQueue;
1437 DWORD dwProvSpec1;
1438 DWORD dwProvSpec2;
1439 WCHAR wcProvChar[1];
1440 } COMMPROP, *LPCOMMPROP;
1442 #define SP_SERIALCOMM ((DWORD)1)
1444 #define BAUD_075 ((DWORD)0x01)
1445 #define BAUD_110 ((DWORD)0x02)
1446 #define BAUD_134_5 ((DWORD)0x04)
1447 #define BAUD_150 ((DWORD)0x08)
1448 #define BAUD_300 ((DWORD)0x10)
1449 #define BAUD_600 ((DWORD)0x20)
1450 #define BAUD_1200 ((DWORD)0x40)
1451 #define BAUD_1800 ((DWORD)0x80)
1452 #define BAUD_2400 ((DWORD)0x100)
1453 #define BAUD_4800 ((DWORD)0x200)
1454 #define BAUD_7200 ((DWORD)0x400)
1455 #define BAUD_9600 ((DWORD)0x800)
1456 #define BAUD_14400 ((DWORD)0x1000)
1457 #define BAUD_19200 ((DWORD)0x2000)
1458 #define BAUD_38400 ((DWORD)0x4000)
1459 #define BAUD_56K ((DWORD)0x8000)
1460 #define BAUD_57600 ((DWORD)0x40000)
1461 #define BAUD_115200 ((DWORD)0x20000)
1462 #define BAUD_128K ((DWORD)0x10000)
1463 #define BAUD_USER ((DWORD)0x10000000)
1465 #define PST_FAX ((DWORD)0x21)
1466 #define PST_LAT ((DWORD)0x101)
1467 #define PST_MODEM ((DWORD)0x06)
1468 #define PST_NETWORK_BRIDGE ((DWORD)0x100)
1469 #define PST_PARALLELPORT ((DWORD)0x02)
1470 #define PST_RS232 ((DWORD)0x01)
1471 #define PST_RS442 ((DWORD)0x03)
1472 #define PST_RS423 ((DWORD)0x04)
1473 #define PST_RS449 ((DWORD)0x06)
1474 #define PST_SCANNER ((DWORD)0x22)
1475 #define PST_TCPIP_TELNET ((DWORD)0x102)
1476 #define PST_UNSPECIFIED ((DWORD)0x00)
1477 #define PST_X25 ((DWORD)0x103)
1479 #define PCF_16BITMODE ((DWORD)0x200)
1480 #define PCF_DTRDSR ((DWORD)0x01)
1481 #define PCF_INTTIMEOUTS ((DWORD)0x80)
1482 #define PCF_PARITY_CHECK ((DWORD)0x08)
1483 #define PCF_RLSD ((DWORD)0x04)
1484 #define PCF_RTSCTS ((DWORD)0x02)
1485 #define PCF_SETXCHAR ((DWORD)0x20)
1486 #define PCF_SPECIALCHARS ((DWORD)0x100)
1487 #define PCF_TOTALTIMEOUTS ((DWORD)0x40)
1488 #define PCF_XONXOFF ((DWORD)0x10)
1490 #define SP_BAUD ((DWORD)0x02)
1491 #define SP_DATABITS ((DWORD)0x04)
1492 #define SP_HANDSHAKING ((DWORD)0x10)
1493 #define SP_PARITY ((DWORD)0x01)
1494 #define SP_PARITY_CHECK ((DWORD)0x20)
1495 #define SP_RLSD ((DWORD)0x40)
1496 #define SP_STOPBITS ((DWORD)0x08)
1498 #define DATABITS_5 ((DWORD)0x01)
1499 #define DATABITS_6 ((DWORD)0x02)
1500 #define DATABITS_7 ((DWORD)0x04)
1501 #define DATABITS_8 ((DWORD)0x08)
1502 #define DATABITS_16 ((DWORD)0x10)
1503 #define DATABITS_16X ((DWORD)0x20)
1505 #define STOPBITS_10 ((DWORD)1)
1506 #define STOPBITS_15 ((DWORD)2)
1507 #define STOPBITS_20 ((DWORD)4)
1509 #undef PARITY_NONE /* defined on Android */
1510 #define PARITY_NONE ((DWORD)0x100)
1511 #define PARITY_ODD ((DWORD)0x200)
1512 #define PARITY_EVEN ((DWORD)0x400)
1513 #define PARITY_MARK ((DWORD)0x800)
1514 #define PARITY_SPACE ((DWORD)0x1000)
1516 typedef struct tagCOMMTIMEOUTS {
1517 DWORD ReadIntervalTimeout;
1518 DWORD ReadTotalTimeoutMultiplier;
1519 DWORD ReadTotalTimeoutConstant;
1520 DWORD WriteTotalTimeoutMultiplier;
1521 DWORD WriteTotalTimeoutConstant;
1522 } COMMTIMEOUTS,*LPCOMMTIMEOUTS;
1524 #define GET_TAPE_MEDIA_INFORMATION 0
1525 #define GET_TAPE_DRIVE_INFORMATION 1
1526 #define SET_TAPE_MEDIA_INFORMATION 0
1527 #define SET_TAPE_DRIVE_INFORMATION 1
1529 #define PROCESS_NAME_NATIVE 1
1531 typedef void (CALLBACK *PAPCFUNC)(ULONG_PTR);
1532 typedef void (CALLBACK *PTIMERAPCROUTINE)(LPVOID,DWORD,DWORD);
1534 typedef enum _COMPUTER_NAME_FORMAT
1536 ComputerNameNetBIOS,
1537 ComputerNameDnsHostname,
1538 ComputerNameDnsDomain,
1539 ComputerNameDnsFullyQualified,
1540 ComputerNamePhysicalNetBIOS,
1541 ComputerNamePhysicalDnsHostname,
1542 ComputerNamePhysicalDnsDomain,
1543 ComputerNamePhysicalDnsFullyQualified,
1544 ComputerNameMax
1545 } COMPUTER_NAME_FORMAT;
1547 #define HW_PROFILE_GUIDLEN 39
1548 #define MAX_PROFILE_LEN 80
1550 #define DOCKINFO_UNDOCKED 0x1
1551 #define DOCKINFO_DOCKED 0x2
1552 #define DOCKINFO_USER_SUPPLIED 0x4
1553 #define DOCKINFO_USER_UNDOCKED (DOCKINFO_USER_SUPPLIED | DOCKINFO_UNDOCKED)
1554 #define DOCKINFO_USER_DOCKED (DOCKINFO_USER_SUPPLIED | DOCKINFO_DOCKED)
1556 typedef struct tagHW_PROFILE_INFOA {
1557 DWORD dwDockInfo;
1558 CHAR szHwProfileGuid[HW_PROFILE_GUIDLEN];
1559 CHAR szHwProfileName[MAX_PROFILE_LEN];
1560 } HW_PROFILE_INFOA, *LPHW_PROFILE_INFOA;
1562 typedef struct tagHW_PROFILE_INFOW {
1563 DWORD dwDockInfo;
1564 WCHAR szHwProfileGuid[HW_PROFILE_GUIDLEN];
1565 WCHAR szHwProfileName[MAX_PROFILE_LEN];
1566 } HW_PROFILE_INFOW, *LPHW_PROFILE_INFOW;
1568 DECL_WINELIB_TYPE_AW(HW_PROFILE_INFO)
1569 DECL_WINELIB_TYPE_AW(LPHW_PROFILE_INFO)
1571 typedef enum _DEP_SYSTEM_POLICY_TYPE {
1572 AlwaysOff = 0,
1573 AlwaysOn = 1,
1574 OptIn = 2,
1575 OptOut = 3
1576 } DEP_SYSTEM_POLICY_TYPE;
1578 #define PROCESS_DEP_ENABLE 1
1579 #define PROCESS_DEP_DISABLE_ATL_THUNK_EMULATION 2
1581 /* Event Logging */
1583 #define EVENTLOG_FULL_INFO 0
1585 typedef struct _EVENTLOG_FULL_INFORMATION {
1586 DWORD dwFull;
1587 } EVENTLOG_FULL_INFORMATION, *LPEVENTLOG_FULL_INFORMATION;
1590 /* Stream data structures and defines */
1591 /*the types of backup data -- WIN32_STREAM_ID.dwStreamId below*/
1592 #define BACKUP_INVALID 0
1593 #define BACKUP_DATA 1
1594 #define BACKUP_EA_DATA 2
1595 #define BACKUP_SECURITY_DATA 3
1596 #define BACKUP_ALTERNATE_DATA 4
1597 #define BACKUP_LINK 5
1598 #define BACKUP_PROPERTY_DATA 6
1599 #define BACKUP_OBJECT_ID 7
1600 #define BACKUP_REPARSE_DATA 8
1601 #define BACKUP_SPARSE_BLOCK 9
1603 /*flags for WIN32_STREAM_ID.dwStreamAttributes below*/
1604 #define STREAM_NORMAL_ATTRIBUTE 0
1605 #define STREAM_MODIFIED_WHEN_READ 1
1606 #define STREAM_CONTAINS_SECURITY 2
1607 #define STREAM_CONTAINS_PROPERTIES 4
1608 #define STREAM_SPARSE_ATTRIBUTE 8
1610 #include <pshpack8.h>
1611 typedef struct _WIN32_STREAM_ID {
1612 DWORD dwStreamId;
1613 DWORD dwStreamAttributes;
1614 LARGE_INTEGER DECLSPEC_ALIGN(8) Size;
1615 DWORD dwStreamNameSize;
1616 WCHAR cStreamName[ANYSIZE_ARRAY];
1617 } WIN32_STREAM_ID, *LPWIN32_STREAM_ID;
1618 #include <poppack.h>
1621 /* GetBinaryType return values.
1624 #define SCS_32BIT_BINARY 0
1625 #define SCS_DOS_BINARY 1
1626 #define SCS_WOW_BINARY 2
1627 #define SCS_PIF_BINARY 3
1628 #define SCS_POSIX_BINARY 4
1629 #define SCS_OS216_BINARY 5
1630 #define SCS_64BIT_BINARY 6
1632 /* flags for DefineDosDevice */
1633 #define DDD_RAW_TARGET_PATH 0x00000001
1634 #define DDD_REMOVE_DEFINITION 0x00000002
1635 #define DDD_EXACT_MATCH_ON_REMOVE 0x00000004
1636 #define DDD_NO_BROADCAST_SYSTEM 0x00000008
1637 #define DDD_LUID_BROADCAST_DRIVE 0x00000010
1639 #define LOGON_WITH_PROFILE 0x00000001
1640 #define LOGON_NETCREDENTIALS_ONLY 0x00000002
1641 #define LOGON_ZERO_PASSWORD_BUFFER 0x80000000
1643 /* one-time initialisation API */
1644 typedef RTL_RUN_ONCE INIT_ONCE;
1645 typedef PRTL_RUN_ONCE PINIT_ONCE;
1646 typedef PRTL_RUN_ONCE LPINIT_ONCE;
1647 #define INIT_ONCE_STATIC_INIT RTL_RUN_ONCE_INIT
1648 #define INIT_ONCE_CHECK_ONLY RTL_RUN_ONCE_CHECK_ONLY
1649 #define INIT_ONCE_ASYNC RTL_RUN_ONCE_ASYNC
1650 #define INIT_ONCE_INIT_FAILED RTL_RUN_ONCE_INIT_FAILED
1651 /* initialization callback prototype */
1652 typedef BOOL (WINAPI *PINIT_ONCE_FN)(PINIT_ONCE,PVOID,PVOID*);
1654 typedef struct _REASON_CONTEXT
1656 ULONG Version;
1657 DWORD Flags;
1658 union
1660 struct
1662 HMODULE LocalizedReasonModule;
1663 ULONG LocalizedReasonId;
1664 ULONG ReasonStringCount;
1665 LPWSTR *ReasonStrings;
1666 } Detailed;
1667 LPWSTR SimpleReasonString;
1668 } Reason;
1669 } REASON_CONTEXT, *PREASON_CONTEXT;
1671 #define RESOURCE_ENUM_LN 0x0001
1672 #define RESOURCE_ENUM_MUI 0x0002
1673 #define RESOURCE_ENUM_MUI_SYSTEM 0x0004
1674 #define RESOURCE_ENUM_VALIDATE 0x0008
1676 typedef struct _PROC_THREAD_ATTRIBUTE_LIST
1677 *PPROC_THREAD_ATTRIBUTE_LIST, *LPPROC_THREAD_ATTRIBUTE_LIST;
1679 #define PROC_THREAD_ATTRIBUTE_NUMBER 0x0000ffff
1680 #define PROC_THREAD_ATTRIBUTE_THREAD 0x00010000
1681 #define PROC_THREAD_ATTRIBUTE_INPUT 0x00020000
1682 #define PROC_THREAD_ATTRIBUTE_ADDITIVE 0x00040000
1684 typedef enum _PROC_THREAD_ATTRIBUTE_NUM
1686 ProcThreadAttributeParentProcess = 0,
1687 ProcThreadAttributeHandleList = 2,
1688 ProcThreadAttributeGroupAffinity = 3,
1689 ProcThreadAttributePreferredNode = 4,
1690 ProcThreadAttributeIdealProcessor = 5,
1691 ProcThreadAttributeUmsThread = 6,
1692 ProcThreadAttributeMitigationPolicy = 7,
1693 ProcThreadAttributeSecurityCapabilities = 9,
1694 ProcThreadAttributeProtectionLevel = 11,
1695 ProcThreadAttributeJobList = 13,
1696 ProcThreadAttributeChildProcessPolicy = 14,
1697 ProcThreadAttributeAllApplicationPackagesPolicy = 15,
1698 ProcThreadAttributeWin32kFilter = 16,
1699 ProcThreadAttributeSafeOpenPromptOriginClaim = 17,
1700 ProcThreadAttributeDesktopAppPolicy = 18,
1701 ProcThreadAttributePseudoConsole = 22,
1702 } PROC_THREAD_ATTRIBUTE_NUM;
1704 #define PROC_THREAD_ATTRIBUTE_PARENT_PROCESS (ProcThreadAttributeParentProcess | PROC_THREAD_ATTRIBUTE_INPUT)
1705 #define PROC_THREAD_ATTRIBUTE_HANDLE_LIST (ProcThreadAttributeHandleList | PROC_THREAD_ATTRIBUTE_INPUT)
1706 #define PROC_THREAD_ATTRIBUTE_GROUP_AFFINITY (ProcThreadAttributeGroupAffinity | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT)
1707 #define PROC_THREAD_ATTRIBUTE_PREFERRED_NODE (ProcThreadAttributePreferredNode | PROC_THREAD_ATTRIBUTE_INPUT)
1708 #define PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR (ProcThreadAttributeIdealProcessor | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT)
1709 #define PROC_THREAD_ATTRIBUTE_UMS_THREAD (ProcThreadAttributeUmsThread | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT)
1710 #define PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY (ProcThreadAttributeMitigationPolicy | PROC_THREAD_ATTRIBUTE_INPUT)
1711 #define PROC_THREAD_ATTRIBUTE_SECURITY_CAPABILITIES (ProcThreadAttributeSecurityCapabilities | PROC_THREAD_ATTRIBUTE_INPUT)
1712 #define PROC_THREAD_ATTRIBUTE_PROTECTION_LEVEL (ProcThreadAttributeProtectionLevel | PROC_THREAD_ATTRIBUTE_INPUT)
1713 #define PROC_THREAD_ATTRIBUTE_JOB_LIST (ProcThreadAttributeJobList | PROC_THREAD_ATTRIBUTE_INPUT)
1714 #define PROC_THREAD_ATTRIBUTE_CHILD_PROCESS_POLICY (ProcThreadAttributeChildProcessPolicy | PROC_THREAD_ATTRIBUTE_INPUT)
1715 #define PROC_THREAD_ATTRIBUTE_ALL_APPLICATION_PACKAGES_POLICY (ProcThreadAttributeAllApplicationPackagesPolicy | PROC_THREAD_ATTRIBUTE_INPUT)
1716 #define PROC_THREAD_ATTRIBUTE_WIN32K_FILTER (ProcThreadAttributeWin32kFilter | PROC_THREAD_ATTRIBUTE_INPUT)
1717 #define PROC_THREAD_ATTRIBUTE_DESKTOP_APP_POLICY (ProcThreadAttributeDesktopAppPolicy | PROC_THREAD_ATTRIBUTE_INPUT)
1718 #define PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE (ProcThreadAttributePseudoConsole | PROC_THREAD_ATTRIBUTE_INPUT)
1720 #define SYMBOLIC_LINK_FLAG_DIRECTORY (0x1)
1721 #define VALID_SYMBOLIC_LINK_FLAGS SYMBOLIC_LINK_FLAG_DIRECTORY
1723 typedef struct _STARTUPINFOEXA
1725 STARTUPINFOA StartupInfo;
1726 LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList;
1727 } STARTUPINFOEXA, *LPSTARTUPINFOEXA;
1729 typedef struct _STARTUPINFOEXW
1731 STARTUPINFOW StartupInfo;
1732 LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList;
1733 } STARTUPINFOEXW, *LPSTARTUPINFOEXW;
1735 DECL_WINELIB_TYPE_AW(STARTUPINFOEX)
1736 DECL_WINELIB_TYPE_AW(LPSTARTUPINFOEX)
1738 typedef void *PUMS_CONTEXT;
1739 typedef void *PUMS_COMPLETION_LIST;
1740 typedef PRTL_UMS_SCHEDULER_ENTRY_POINT PUMS_SCHEDULER_ENTRY_POINT;
1741 typedef struct _UMS_SCHEDULER_STARTUP_INFO
1743 ULONG UmsVersion;
1744 PUMS_COMPLETION_LIST CompletionList;
1745 PUMS_SCHEDULER_ENTRY_POINT SchedulerProc;
1746 PVOID SchedulerParam;
1747 } UMS_SCHEDULER_STARTUP_INFO, *PUMS_SCHEDULER_STARTUP_INFO;
1749 typedef enum _RTL_UMS_SCHEDULER_REASON UMS_SCHEDULER_REASON;
1750 typedef enum _RTL_UMS_THREAD_INFO_CLASS UMS_THREAD_INFO_CLASS, *PUMS_THREAD_INFO_CLASS;
1752 typedef enum _STREAM_INFO_LEVELS
1754 FindStreamInfoStandard,
1755 FindStreamInfoMaxInfoLevel
1756 } STREAM_INFO_LEVELS;
1758 typedef struct _WIN32_FIND_STREAM_DATA {
1759 LARGE_INTEGER StreamSize;
1760 WCHAR cStreamName[MAX_PATH + 36];
1761 } WIN32_FIND_STREAM_DATA,*PWIN32_FIND_STREAM_DATA;
1763 typedef struct _WIN32_MEMORY_RANGE_ENTRY
1765 PVOID VirtualAddress;
1766 SIZE_T NumberOfBytes;
1767 } WIN32_MEMORY_RANGE_ENTRY, *PWIN32_MEMORY_RANGE_ENTRY;
1769 WINBASEAPI BOOL WINAPI ActivateActCtx(HANDLE,ULONG_PTR *);
1770 WINADVAPI BOOL WINAPI AddAccessAllowedAce(PACL,DWORD,DWORD,PSID);
1771 WINADVAPI BOOL WINAPI AddAccessAllowedAceEx(PACL,DWORD,DWORD,DWORD,PSID);
1772 WINADVAPI BOOL WINAPI AddAccessDeniedAce(PACL,DWORD,DWORD,PSID);
1773 WINADVAPI BOOL WINAPI AddAccessDeniedAceEx(PACL,DWORD,DWORD,DWORD,PSID);
1774 WINADVAPI BOOL WINAPI AddAce(PACL,DWORD,DWORD,LPVOID,DWORD);
1775 WINBASEAPI ATOM WINAPI AddAtomA(LPCSTR);
1776 WINBASEAPI ATOM WINAPI AddAtomW(LPCWSTR);
1777 #define AddAtom WINELIB_NAME_AW(AddAtom)
1778 WINADVAPI BOOL WINAPI AddAuditAccessAce(PACL,DWORD,DWORD,PSID,BOOL,BOOL);
1779 WINADVAPI BOOL WINAPI AddAuditAccessAceEx(PACL,DWORD,DWORD,DWORD,PSID,BOOL,BOOL);
1780 WINADVAPI BOOL WINAPI AddMandatoryAce(PACL,DWORD,DWORD,DWORD,PSID);
1781 WINBASEAPI VOID WINAPI AddRefActCtx(HANDLE);
1782 WINBASEAPI PVOID WINAPI AddVectoredExceptionHandler(ULONG,PVECTORED_EXCEPTION_HANDLER);
1783 WINADVAPI BOOL WINAPI AdjustTokenGroups(HANDLE,BOOL,PTOKEN_GROUPS,DWORD,PTOKEN_GROUPS,PDWORD);
1784 WINADVAPI BOOL WINAPI AccessCheck(PSECURITY_DESCRIPTOR,HANDLE,DWORD,PGENERIC_MAPPING,PPRIVILEGE_SET,LPDWORD,LPDWORD,LPBOOL);
1785 WINADVAPI BOOL WINAPI AccessCheckAndAuditAlarmA(LPCSTR,LPVOID,LPSTR,LPSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,LPDWORD,LPBOOL,LPBOOL);
1786 WINADVAPI BOOL WINAPI AccessCheckAndAuditAlarmW(LPCWSTR,LPVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,LPDWORD,LPBOOL,LPBOOL);
1787 #define AccessCheckAndAuditAlarm WINELIB_NAME_AW(AccessCheckAndAuditAlarm)
1788 WINADVAPI BOOL WINAPI AccessCheckByType(PSECURITY_DESCRIPTOR,PSID,HANDLE,DWORD,POBJECT_TYPE_LIST,DWORD,PGENERIC_MAPPING,PPRIVILEGE_SET,LPDWORD,LPDWORD,LPBOOL);
1789 WINBASEAPI VOID WINAPI AcquireSRWLockExclusive(PSRWLOCK);
1790 WINBASEAPI VOID WINAPI AcquireSRWLockShared(PSRWLOCK);
1791 WINADVAPI BOOL WINAPI AdjustTokenPrivileges(HANDLE,BOOL,PTOKEN_PRIVILEGES,DWORD,PTOKEN_PRIVILEGES,PDWORD);
1792 WINADVAPI BOOL WINAPI AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY,BYTE,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,PSID *);
1793 WINADVAPI BOOL WINAPI AllocateLocallyUniqueId(PLUID);
1794 WINADVAPI BOOL WINAPI AreAllAccessesGranted(DWORD,DWORD);
1795 WINADVAPI BOOL WINAPI AreAnyAccessesGranted(DWORD,DWORD);
1796 WINBASEAPI BOOL WINAPI AreFileApisANSI(void);
1797 WINBASEAPI BOOL WINAPI AssignProcessToJobObject(HANDLE,HANDLE);
1798 WINADVAPI BOOL WINAPI BackupEventLogA(HANDLE,LPCSTR);
1799 WINADVAPI BOOL WINAPI BackupEventLogW(HANDLE,LPCWSTR);
1800 #define BackupEventLog WINELIB_NAME_AW(BackupEventLog)
1801 WINBASEAPI BOOL WINAPI BackupRead(HANDLE,LPBYTE,DWORD,LPDWORD,BOOL,BOOL,LPVOID*);
1802 WINBASEAPI BOOL WINAPI BackupSeek(HANDLE,DWORD,DWORD,LPDWORD,LPDWORD,LPVOID*);
1803 WINBASEAPI BOOL WINAPI BackupWrite(HANDLE,LPBYTE,DWORD,LPDWORD,BOOL,BOOL,LPVOID*);
1804 WINBASEAPI BOOL WINAPI Beep(DWORD,DWORD);
1805 WINBASEAPI HANDLE WINAPI BeginUpdateResourceA(LPCSTR,BOOL);
1806 WINBASEAPI HANDLE WINAPI BeginUpdateResourceW(LPCWSTR,BOOL);
1807 #define BeginUpdateResource WINELIB_NAME_AW(BeginUpdateResource)
1808 WINBASEAPI BOOL WINAPI BindIoCompletionCallback(HANDLE,LPOVERLAPPED_COMPLETION_ROUTINE,ULONG);
1809 WINBASEAPI BOOL WINAPI BuildCommDCBA(LPCSTR,LPDCB);
1810 WINBASEAPI BOOL WINAPI BuildCommDCBW(LPCWSTR,LPDCB);
1811 #define BuildCommDCB WINELIB_NAME_AW(BuildCommDCB)
1812 WINBASEAPI BOOL WINAPI BuildCommDCBAndTimeoutsA(LPCSTR,LPDCB,LPCOMMTIMEOUTS);
1813 WINBASEAPI BOOL WINAPI BuildCommDCBAndTimeoutsW(LPCWSTR,LPDCB,LPCOMMTIMEOUTS);
1814 #define BuildCommDCBAndTimeouts WINELIB_NAME_AW(BuildCommDCBAndTimeouts)
1815 WINBASEAPI BOOL WINAPI CallNamedPipeA(LPCSTR,LPVOID,DWORD,LPVOID,DWORD,LPDWORD,DWORD);
1816 WINBASEAPI BOOL WINAPI CallNamedPipeW(LPCWSTR,LPVOID,DWORD,LPVOID,DWORD,LPDWORD,DWORD);
1817 #define CallNamedPipe WINELIB_NAME_AW(CallNamedPipe)
1818 WINBASEAPI BOOL WINAPI CancelIo(HANDLE);
1819 WINBASEAPI BOOL WINAPI CancelIoEx(HANDLE,LPOVERLAPPED);
1820 WINBASEAPI BOOL WINAPI CancelSynchronousIo(HANDLE);
1821 WINBASEAPI BOOL WINAPI CancelTimerQueueTimer(HANDLE,HANDLE);
1822 WINBASEAPI BOOL WINAPI CancelWaitableTimer(HANDLE);
1823 WINBASEAPI BOOL WINAPI CheckNameLegalDOS8Dot3A(const char*,char*,DWORD,BOOL*,BOOL*);
1824 WINBASEAPI BOOL WINAPI CheckNameLegalDOS8Dot3W(const WCHAR*, char*,DWORD,BOOL*,BOOL*);
1825 WINBASEAPI BOOL WINAPI CheckRemoteDebuggerPresent(HANDLE,BOOL*);
1826 WINBASEAPI BOOL WINAPI ChangeTimerQueueTimer(HANDLE,HANDLE,ULONG,ULONG);
1827 WINADVAPI BOOL WINAPI CheckTokenMembership(HANDLE,PSID,PBOOL);
1828 WINBASEAPI BOOL WINAPI ClearCommBreak(HANDLE);
1829 WINBASEAPI BOOL WINAPI ClearCommError(HANDLE,LPDWORD,LPCOMSTAT);
1830 WINADVAPI VOID WINAPI CloseEncryptedFileRaw(PVOID);
1831 WINADVAPI BOOL WINAPI ClearEventLogA(HANDLE,LPCSTR);
1832 WINADVAPI BOOL WINAPI ClearEventLogW(HANDLE,LPCWSTR);
1833 #define ClearEventLog WINELIB_NAME_AW(ClearEventLog)
1834 WINADVAPI BOOL WINAPI CloseEventLog(HANDLE);
1835 WINBASEAPI BOOL WINAPI CloseHandle(HANDLE);
1836 WINBASEAPI BOOL WINAPI CommConfigDialogA(LPCSTR,HWND,LPCOMMCONFIG);
1837 WINBASEAPI BOOL WINAPI CommConfigDialogW(LPCWSTR,HWND,LPCOMMCONFIG);
1838 #define CommConfigDialog WINELIB_NAME_AW(CommConfigDialog)
1839 WINBASEAPI BOOL WINAPI ConnectNamedPipe(HANDLE,LPOVERLAPPED);
1840 WINBASEAPI BOOL WINAPI ContinueDebugEvent(DWORD,DWORD,DWORD);
1841 WINBASEAPI HANDLE WINAPI ConvertToGlobalHandle(HANDLE hSrc);
1842 WINBASEAPI BOOL WINAPI CopyContext(CONTEXT*, DWORD, CONTEXT*);
1843 WINBASEAPI BOOL WINAPI CopyFileA(LPCSTR,LPCSTR,BOOL);
1844 WINBASEAPI BOOL WINAPI CopyFileW(LPCWSTR,LPCWSTR,BOOL);
1845 #define CopyFile WINELIB_NAME_AW(CopyFile)
1846 WINBASEAPI HRESULT WINAPI CopyFile2(PCWSTR,PCWSTR,COPYFILE2_EXTENDED_PARAMETERS*);
1847 WINBASEAPI BOOL WINAPI CopyFileExA(LPCSTR, LPCSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL, DWORD);
1848 WINBASEAPI BOOL WINAPI CopyFileExW(LPCWSTR, LPCWSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL, DWORD);
1849 #define CopyFileEx WINELIB_NAME_AW(CopyFileEx)
1850 WINADVAPI BOOL WINAPI CopySid(DWORD,PSID,PSID);
1851 WINBASEAPI INT WINAPI CompareFileTime(const FILETIME*,const FILETIME*);
1852 WINBASEAPI BOOL WINAPI ConvertFiberToThread(void);
1853 WINBASEAPI LPVOID WINAPI ConvertThreadToFiber(LPVOID);
1854 WINBASEAPI LPVOID WINAPI ConvertThreadToFiberEx(LPVOID,DWORD);
1855 WINADVAPI BOOL WINAPI ConvertToAutoInheritPrivateObjectSecurity(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,GUID*,BOOL,PGENERIC_MAPPING);
1856 WINBASEAPI HANDLE WINAPI CreateActCtxA(PCACTCTXA);
1857 WINBASEAPI HANDLE WINAPI CreateActCtxW(PCACTCTXW);
1858 #define CreateActCtx WINELIB_NAME_AW(CreateActCtx)
1859 WINBASEAPI BOOL WINAPI CreateDirectoryA(LPCSTR,LPSECURITY_ATTRIBUTES);
1860 WINBASEAPI BOOL WINAPI CreateDirectoryW(LPCWSTR,LPSECURITY_ATTRIBUTES);
1861 #define CreateDirectory WINELIB_NAME_AW(CreateDirectory)
1862 WINBASEAPI BOOL WINAPI CreateDirectoryExA(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES);
1863 WINBASEAPI BOOL WINAPI CreateDirectoryExW(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES);
1864 #define CreateDirectoryEx WINELIB_NAME_AW(CreateDirectoryEx)
1865 WINBASEAPI HANDLE WINAPI CreateEventA(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCSTR);
1866 WINBASEAPI HANDLE WINAPI CreateEventW(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCWSTR);
1867 #define CreateEvent WINELIB_NAME_AW(CreateEvent)
1868 WINBASEAPI HANDLE WINAPI CreateEventExA(SECURITY_ATTRIBUTES*,LPCSTR,DWORD,DWORD);
1869 WINBASEAPI HANDLE WINAPI CreateEventExW(SECURITY_ATTRIBUTES*,LPCWSTR,DWORD,DWORD);
1870 #define CreateEventEx WINELIB_NAME_AW(CreateEventEx)
1871 WINBASEAPI LPVOID WINAPI CreateFiber(SIZE_T,LPFIBER_START_ROUTINE,LPVOID);
1872 WINBASEAPI LPVOID WINAPI CreateFiberEx(SIZE_T,SIZE_T,DWORD,LPFIBER_START_ROUTINE,LPVOID);
1873 WINBASEAPI HANDLE WINAPI CreateFileA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE);
1874 WINBASEAPI HANDLE WINAPI CreateFileW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE);
1875 #define CreateFile WINELIB_NAME_AW(CreateFile)
1876 WINBASEAPI HANDLE WINAPI CreateFileMappingA(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCSTR);
1877 WINBASEAPI HANDLE WINAPI CreateFileMappingW(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCWSTR);
1878 #define CreateFileMapping WINELIB_NAME_AW(CreateFileMapping)
1879 WINBASEAPI HANDLE WINAPI CreateFileMappingFromApp(HANDLE,PSECURITY_ATTRIBUTES,ULONG,ULONG64,PCWSTR);
1880 WINBASEAPI HANDLE WINAPI CreateIoCompletionPort(HANDLE,HANDLE,ULONG_PTR,DWORD);
1881 WINBASEAPI HANDLE WINAPI CreateJobObjectA(LPSECURITY_ATTRIBUTES,LPCSTR);
1882 WINBASEAPI HANDLE WINAPI CreateJobObjectW(LPSECURITY_ATTRIBUTES,LPCWSTR);
1883 #define CreateJobObject WINELIB_NAME_AW(CreateJobObject)
1884 WINBASEAPI HANDLE WINAPI CreateMailslotA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
1885 WINBASEAPI HANDLE WINAPI CreateMailslotW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
1886 #define CreateMailslot WINELIB_NAME_AW(CreateMailslot)
1887 WINBASEAPI HANDLE WINAPI CreateMemoryResourceNotification(MEMORY_RESOURCE_NOTIFICATION_TYPE);
1888 WINBASEAPI HANDLE WINAPI CreateMutexA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR);
1889 WINBASEAPI HANDLE WINAPI CreateMutexW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR);
1890 #define CreateMutex WINELIB_NAME_AW(CreateMutex)
1891 WINBASEAPI HANDLE WINAPI CreateMutexExA(SECURITY_ATTRIBUTES*,LPCSTR,DWORD,DWORD);
1892 WINBASEAPI HANDLE WINAPI CreateMutexExW(SECURITY_ATTRIBUTES*,LPCWSTR,DWORD,DWORD);
1893 #define CreateMutexEx WINELIB_NAME_AW(CreateMutexEx)
1894 WINBASEAPI HANDLE WINAPI CreateNamedPipeA(LPCSTR,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
1895 WINBASEAPI HANDLE WINAPI CreateNamedPipeW(LPCWSTR,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPSECURITY_ATTRIBUTES);
1896 #define CreateNamedPipe WINELIB_NAME_AW(CreateNamedPipe)
1897 WINBASEAPI BOOL WINAPI CreatePipe(PHANDLE,PHANDLE,LPSECURITY_ATTRIBUTES,DWORD);
1898 WINADVAPI BOOL WINAPI CreatePrivateObjectSecurity(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,BOOL,HANDLE,PGENERIC_MAPPING);
1899 WINADVAPI BOOL WINAPI CreatePrivateObjectSecurityEx(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,GUID*,BOOL,ULONG,HANDLE,PGENERIC_MAPPING);
1900 WINADVAPI BOOL WINAPI CreatePrivateObjectSecurityWithMultipleInheritance(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,GUID**,ULONG,BOOL,ULONG,HANDLE,PGENERIC_MAPPING);
1901 WINBASEAPI BOOL WINAPI CreateProcessA(LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,LPVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION);
1902 WINBASEAPI BOOL WINAPI CreateProcessW(LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,LPVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION);
1903 #define CreateProcess WINELIB_NAME_AW(CreateProcess)
1904 WINADVAPI BOOL WINAPI CreateProcessAsUserA(HANDLE,LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,LPVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION);
1905 WINADVAPI BOOL WINAPI CreateProcessAsUserW(HANDLE,LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,LPVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION);
1906 #define CreateProcessAsUser WINELIB_NAME_AW(CreateProcessAsUser)
1907 WINBASEAPI BOOL WINAPI CreateProcessInternalA(HANDLE,LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,LPVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION,HANDLE*);
1908 WINBASEAPI BOOL WINAPI CreateProcessInternalW(HANDLE,LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,LPVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION,HANDLE*);
1909 #define CreateProcessInternal WINELIB_NAME_AW(CreateProcessInternal)
1910 WINADVAPI BOOL WINAPI CreateProcessWithLogonW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPCWSTR,LPWSTR,DWORD,LPVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION);
1911 WINADVAPI BOOL WINAPI CreateProcessWithTokenW(HANDLE,DWORD,LPCWSTR,LPWSTR,DWORD,void *,LPCWSTR,STARTUPINFOW *,PROCESS_INFORMATION *);
1912 WINBASEAPI HANDLE WINAPI CreateRemoteThread(HANDLE,LPSECURITY_ATTRIBUTES,SIZE_T,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD);
1913 WINBASEAPI HANDLE WINAPI CreateRemoteThreadEx(HANDLE,LPSECURITY_ATTRIBUTES,SIZE_T,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPPROC_THREAD_ATTRIBUTE_LIST,LPDWORD);
1914 WINADVAPI BOOL WINAPI CreateRestrictedToken(HANDLE,DWORD,DWORD,PSID_AND_ATTRIBUTES,DWORD,PLUID_AND_ATTRIBUTES,DWORD,PSID_AND_ATTRIBUTES,PHANDLE);
1915 WINBASEAPI HANDLE WINAPI CreateSemaphoreA(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCSTR);
1916 WINBASEAPI HANDLE WINAPI CreateSemaphoreW(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR);
1917 #define CreateSemaphore WINELIB_NAME_AW(CreateSemaphore)
1918 WINBASEAPI HANDLE WINAPI CreateSemaphoreExA(SECURITY_ATTRIBUTES*,LONG,LONG,LPCSTR,DWORD,DWORD);
1919 WINBASEAPI HANDLE WINAPI CreateSemaphoreExW(SECURITY_ATTRIBUTES*,LONG,LONG,LPCWSTR,DWORD,DWORD);
1920 #define CreateSemaphoreEx WINELIB_NAME_AW(CreateSemaphoreEx)
1921 WINBASEAPI BOOLEAN WINAPI CreateSymbolicLinkA(LPCSTR,LPCSTR,DWORD);
1922 WINBASEAPI BOOLEAN WINAPI CreateSymbolicLinkW(LPCWSTR,LPCWSTR,DWORD);
1923 #define CreateSymbolicLink WINELIB_NAME_AW(CreateSymbolicLink)
1924 WINBASEAPI BOOL WINAPI CreateHardLinkA(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES);
1925 WINBASEAPI BOOL WINAPI CreateHardLinkW(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES);
1926 #define CreateHardLink WINELIB_NAME_AW(CreateHardLink)
1927 WINBASEAPI DWORD WINAPI CreateTapePartition(HANDLE,DWORD,DWORD,DWORD);
1928 WINBASEAPI HANDLE WINAPI CreateThread(LPSECURITY_ATTRIBUTES,SIZE_T,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD);
1929 WINBASEAPI HANDLE WINAPI CreateTimerQueue(void);
1930 WINBASEAPI BOOL WINAPI CreateTimerQueueTimer(PHANDLE,HANDLE,WAITORTIMERCALLBACK,PVOID,DWORD,DWORD,ULONG);
1931 WINBASEAPI BOOL WINAPI CreateUmsCompletionList(PUMS_COMPLETION_LIST*);
1932 WINBASEAPI BOOL WINAPI CreateUmsThreadContext(PUMS_CONTEXT*);
1933 WINBASEAPI HANDLE WINAPI CreateWaitableTimerA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR);
1934 WINBASEAPI HANDLE WINAPI CreateWaitableTimerW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR);
1935 #define CreateWaitableTimer WINELIB_NAME_AW(CreateWaitableTimer)
1936 WINBASEAPI HANDLE WINAPI CreateWaitableTimerExA(SECURITY_ATTRIBUTES*,LPCSTR,DWORD,DWORD);
1937 WINBASEAPI HANDLE WINAPI CreateWaitableTimerExW(SECURITY_ATTRIBUTES*,LPCWSTR,DWORD,DWORD);
1938 #define CreateWaitableTimerEx WINELIB_NAME_AW(CreateWaitableTimerEx)
1939 WINADVAPI BOOL WINAPI CreateWellKnownSid(WELL_KNOWN_SID_TYPE,PSID,PSID,DWORD*);
1940 WINBASEAPI BOOL WINAPI DeactivateActCtx(DWORD,ULONG_PTR);
1941 WINBASEAPI BOOL WINAPI DebugActiveProcess(DWORD);
1942 WINBASEAPI BOOL WINAPI DebugActiveProcessStop(DWORD);
1943 WINBASEAPI void WINAPI DebugBreak(void);
1944 WINBASEAPI BOOL WINAPI DebugBreakProcess(HANDLE);
1945 WINBASEAPI BOOL WINAPI DebugSetProcessKillOnExit(BOOL);
1946 WINBASEAPI void * WINAPI DecodePointer(void *);
1947 WINBASEAPI void * WINAPI DecodeSystemPointer(void *);
1948 WINADVAPI BOOL WINAPI DecryptFileA(LPCSTR,DWORD);
1949 WINADVAPI BOOL WINAPI DecryptFileW(LPCWSTR,DWORD);
1950 #define DecryptFile WINELIB_NAME_AW(DecryptFile)
1951 WINBASEAPI BOOL WINAPI DefineDosDeviceA(DWORD,LPCSTR,LPCSTR);
1952 WINBASEAPI BOOL WINAPI DefineDosDeviceW(DWORD,LPCWSTR,LPCWSTR);
1953 #define DefineDosDevice WINELIB_NAME_AW(DefineDosDevice)
1954 #define DefineHandleTable(w) ((w),TRUE)
1955 WINADVAPI BOOL WINAPI DeleteAce(PACL,DWORD);
1956 WINBASEAPI ATOM WINAPI DeleteAtom(ATOM);
1957 WINBASEAPI void WINAPI DeleteCriticalSection(CRITICAL_SECTION *lpCrit);
1958 WINBASEAPI void WINAPI DeleteFiber(LPVOID);
1959 WINBASEAPI BOOL WINAPI DeleteFileA(LPCSTR);
1960 WINBASEAPI BOOL WINAPI DeleteFileW(LPCWSTR);
1961 #define DeleteFile WINELIB_NAME_AW(DeleteFile)
1962 WINBASEAPI void WINAPI DeleteProcThreadAttributeList(struct _PROC_THREAD_ATTRIBUTE_LIST*);
1963 WINBASEAPI BOOL WINAPI DeleteTimerQueue(HANDLE);
1964 WINBASEAPI BOOL WINAPI DeleteTimerQueueEx(HANDLE,HANDLE);
1965 WINBASEAPI BOOL WINAPI DeleteTimerQueueTimer(HANDLE,HANDLE,HANDLE);
1966 WINBASEAPI BOOL WINAPI DeleteUmsCompletionList(PUMS_COMPLETION_LIST);
1967 WINBASEAPI BOOL WINAPI DeleteUmsThreadContext(PUMS_CONTEXT);
1968 WINBASEAPI BOOL WINAPI DeleteVolumeMountPointA(LPCSTR);
1969 WINBASEAPI BOOL WINAPI DeleteVolumeMountPointW(LPCWSTR);
1970 #define DeleteVolumeMountPoint WINELIB_NAME_AW(DeleteVolumeMountPoint)
1971 WINBASEAPI BOOL WINAPI DequeueUmsCompletionListItems(void *, DWORD, PUMS_CONTEXT *);
1972 WINADVAPI BOOL WINAPI DeregisterEventSource(HANDLE);
1973 WINADVAPI BOOL WINAPI DestroyPrivateObjectSecurity(PSECURITY_DESCRIPTOR*);
1974 WINBASEAPI BOOL WINAPI DeviceIoControl(HANDLE,DWORD,LPVOID,DWORD,LPVOID,DWORD,LPDWORD,LPOVERLAPPED);
1975 WINBASEAPI BOOL WINAPI DisableThreadLibraryCalls(HMODULE);
1976 WINBASEAPI BOOL WINAPI DisconnectNamedPipe(HANDLE);
1977 WINBASEAPI BOOL WINAPI DnsHostnameToComputerNameA(LPCSTR,LPSTR,LPDWORD);
1978 WINBASEAPI BOOL WINAPI DnsHostnameToComputerNameW(LPCWSTR,LPWSTR,LPDWORD);
1979 #define DnsHostnameToComputerName WINELIB_NAME_AW(DnsHostnameToComputerName)
1980 WINBASEAPI BOOL WINAPI DnsHostnameToComputerNameExW(LPCWSTR,LPWSTR,LPDWORD);
1981 WINBASEAPI BOOL WINAPI DosDateTimeToFileTime(WORD,WORD,LPFILETIME);
1982 WINBASEAPI BOOL WINAPI DuplicateHandle(HANDLE,HANDLE,HANDLE,HANDLE*,DWORD,BOOL,DWORD);
1983 WINADVAPI BOOL WINAPI DuplicateToken(HANDLE,SECURITY_IMPERSONATION_LEVEL,PHANDLE);
1984 WINADVAPI BOOL WINAPI DuplicateTokenEx(HANDLE,DWORD,LPSECURITY_ATTRIBUTES,SECURITY_IMPERSONATION_LEVEL,TOKEN_TYPE,PHANDLE);
1985 WINBASEAPI BOOL WINAPI EscapeCommFunction(HANDLE,DWORD);
1986 WINBASEAPI void * WINAPI EncodePointer(void *);
1987 WINBASEAPI void * WINAPI EncodeSystemPointer(void *);
1988 WINADVAPI BOOL WINAPI EncryptFileA(LPCSTR);
1989 WINADVAPI BOOL WINAPI EncryptFileW(LPCWSTR);
1990 #define EncryptFile WINELIB_NAME_AW(EncryptFile)
1991 WINBASEAPI BOOL WINAPI EndUpdateResourceA(HANDLE,BOOL);
1992 WINBASEAPI BOOL WINAPI EndUpdateResourceW(HANDLE,BOOL);
1993 #define EndUpdateResource WINELIB_NAME_AW(EndUpdateResource)
1994 WINBASEAPI void WINAPI EnterCriticalSection(CRITICAL_SECTION *lpCrit);
1995 WINBASEAPI BOOL WINAPI EnterUmsSchedulingMode(PUMS_SCHEDULER_STARTUP_INFO);
1996 WINBASEAPI BOOL WINAPI EnumResourceLanguagesA(HMODULE,LPCSTR,LPCSTR,ENUMRESLANGPROCA,LONG_PTR);
1997 WINBASEAPI BOOL WINAPI EnumResourceLanguagesW(HMODULE,LPCWSTR,LPCWSTR,ENUMRESLANGPROCW,LONG_PTR);
1998 #define EnumResourceLanguages WINELIB_NAME_AW(EnumResourceLanguages)
1999 WINBASEAPI BOOL WINAPI EnumResourceLanguagesExA(HMODULE,LPCSTR,LPCSTR,ENUMRESLANGPROCA,LONG_PTR,DWORD,LANGID);
2000 WINBASEAPI BOOL WINAPI EnumResourceLanguagesExW(HMODULE,LPCWSTR,LPCWSTR,ENUMRESLANGPROCW,LONG_PTR,DWORD,LANGID);
2001 #define EnumResourceLanguagesEx WINELIB_NAME_AW(EnumResourceLanguagesEx)
2002 WINBASEAPI BOOL WINAPI EnumResourceNamesA(HMODULE,LPCSTR,ENUMRESNAMEPROCA,LONG_PTR);
2003 WINBASEAPI BOOL WINAPI EnumResourceNamesW(HMODULE,LPCWSTR,ENUMRESNAMEPROCW,LONG_PTR);
2004 #define EnumResourceNames WINELIB_NAME_AW(EnumResourceNames)
2005 WINBASEAPI BOOL WINAPI EnumResourceNamesExA(HMODULE,LPCSTR,ENUMRESNAMEPROCA,LONG_PTR,DWORD,LANGID);
2006 WINBASEAPI BOOL WINAPI EnumResourceNamesExW(HMODULE,LPCWSTR,ENUMRESNAMEPROCW,LONG_PTR,DWORD,LANGID);
2007 #define EnumResourceNamesEx WINELIB_NAME_AW(EnumResourceNamesEx)
2008 WINBASEAPI BOOL WINAPI EnumResourceTypesA(HMODULE,ENUMRESTYPEPROCA,LONG_PTR);
2009 WINBASEAPI BOOL WINAPI EnumResourceTypesW(HMODULE,ENUMRESTYPEPROCW,LONG_PTR);
2010 #define EnumResourceTypes WINELIB_NAME_AW(EnumResourceTypes)
2011 WINBASEAPI BOOL WINAPI EnumResourceTypesExA(HMODULE,ENUMRESTYPEPROCA,LONG_PTR,DWORD,LANGID);
2012 WINBASEAPI BOOL WINAPI EnumResourceTypesExW(HMODULE,ENUMRESTYPEPROCW,LONG_PTR,DWORD,LANGID);
2013 #define EnumResourceTypesEx WINELIB_NAME_AW(EnumResourceTypesEx)
2014 WINADVAPI BOOL WINAPI EqualDomainSid(PSID,PSID,BOOL*);
2015 WINADVAPI BOOL WINAPI EqualSid(PSID, PSID);
2016 WINADVAPI BOOL WINAPI EqualPrefixSid(PSID,PSID);
2017 WINBASEAPI DWORD WINAPI EraseTape(HANDLE,DWORD,BOOL);
2018 WINBASEAPI VOID DECLSPEC_NORETURN WINAPI ExitProcess(DWORD);
2019 WINBASEAPI VOID DECLSPEC_NORETURN WINAPI ExitThread(DWORD);
2020 WINBASEAPI BOOL WINAPI ExecuteUmsThread(PUMS_CONTEXT);
2021 WINBASEAPI DWORD WINAPI ExpandEnvironmentStringsA(LPCSTR,LPSTR,DWORD);
2022 WINBASEAPI DWORD WINAPI ExpandEnvironmentStringsW(LPCWSTR,LPWSTR,DWORD);
2023 #define ExpandEnvironmentStrings WINELIB_NAME_AW(ExpandEnvironmentStrings)
2024 WINBASEAPI void WINAPI FatalAppExitA(UINT,LPCSTR);
2025 WINBASEAPI void WINAPI FatalAppExitW(UINT,LPCWSTR);
2026 WINBASEAPI void WINAPI FatalExit(int);
2027 #define FatalAppExit WINELIB_NAME_AW(FatalAppExit)
2028 WINADVAPI BOOL WINAPI FileEncryptionStatusA(LPCSTR,LPDWORD);
2029 WINADVAPI BOOL WINAPI FileEncryptionStatusW(LPCWSTR,LPDWORD);
2030 #define FileEncryptionStatus WINELIB_NAME_AW(FileEncryptionStatus)
2031 WINBASEAPI BOOL WINAPI FileTimeToDosDateTime(const FILETIME*,LPWORD,LPWORD);
2032 WINBASEAPI BOOL WINAPI FileTimeToLocalFileTime(const FILETIME*,LPFILETIME);
2033 WINBASEAPI BOOL WINAPI FileTimeToSystemTime(const FILETIME*,LPSYSTEMTIME);
2034 WINBASEAPI BOOL WINAPI FindActCtxSectionStringA(DWORD,const GUID *,ULONG,LPCSTR,PACTCTX_SECTION_KEYED_DATA);
2035 WINBASEAPI BOOL WINAPI FindActCtxSectionStringW(DWORD,const GUID *,ULONG,LPCWSTR,PACTCTX_SECTION_KEYED_DATA);
2036 #define FindActCtxSectionString WINELIB_NAME_AW(FindActCtxSectionString)
2037 WINBASEAPI BOOL WINAPI FindActCtxSectionGuid(DWORD,const GUID *,ULONG,const GUID *,PACTCTX_SECTION_KEYED_DATA);
2038 WINBASEAPI ATOM WINAPI FindAtomA(LPCSTR);
2039 WINBASEAPI ATOM WINAPI FindAtomW(LPCWSTR);
2040 #define FindAtom WINELIB_NAME_AW(FindAtom)
2041 WINBASEAPI BOOL WINAPI FindClose(HANDLE);
2042 WINBASEAPI HANDLE WINAPI FindFirstChangeNotificationA(LPCSTR,BOOL,DWORD);
2043 WINBASEAPI HANDLE WINAPI FindFirstChangeNotificationW(LPCWSTR,BOOL,DWORD);
2044 #define FindFirstChangeNotification WINELIB_NAME_AW(FindFirstChangeNotification)
2045 WINBASEAPI HANDLE WINAPI FindFirstFileA(LPCSTR,LPWIN32_FIND_DATAA);
2046 WINBASEAPI HANDLE WINAPI FindFirstFileW(LPCWSTR,LPWIN32_FIND_DATAW);
2047 #define FindFirstFile WINELIB_NAME_AW(FindFirstFile)
2048 WINBASEAPI HANDLE WINAPI FindFirstFileExA(LPCSTR,FINDEX_INFO_LEVELS,LPVOID,FINDEX_SEARCH_OPS,LPVOID,DWORD);
2049 WINBASEAPI HANDLE WINAPI FindFirstFileExW(LPCWSTR,FINDEX_INFO_LEVELS,LPVOID,FINDEX_SEARCH_OPS,LPVOID,DWORD);
2050 #define FindFirstFileEx WINELIB_NAME_AW(FindFirstFileEx)
2051 WINADVAPI BOOL WINAPI FindFirstFreeAce(PACL,LPVOID*);
2052 WINBASEAPI HANDLE WINAPI FindFirstStreamW(LPCWSTR,STREAM_INFO_LEVELS,void*,DWORD);
2053 WINBASEAPI BOOL WINAPI FindNextChangeNotification(HANDLE);
2054 WINBASEAPI BOOL WINAPI FindNextFileA(HANDLE,LPWIN32_FIND_DATAA);
2055 WINBASEAPI BOOL WINAPI FindNextFileW(HANDLE,LPWIN32_FIND_DATAW);
2056 #define FindNextFile WINELIB_NAME_AW(FindNextFile)
2057 WINBASEAPI BOOL WINAPI FindNextStreamW(HANDLE,void*);
2058 WINBASEAPI BOOL WINAPI FindCloseChangeNotification(HANDLE);
2059 WINBASEAPI HRSRC WINAPI FindResourceA(HMODULE,LPCSTR,LPCSTR);
2060 WINBASEAPI HRSRC WINAPI FindResourceW(HMODULE,LPCWSTR,LPCWSTR);
2061 #define FindResource WINELIB_NAME_AW(FindResource)
2062 WINBASEAPI HRSRC WINAPI FindResourceExA(HMODULE,LPCSTR,LPCSTR,WORD);
2063 WINBASEAPI HRSRC WINAPI FindResourceExW(HMODULE,LPCWSTR,LPCWSTR,WORD);
2064 #define FindResourceEx WINELIB_NAME_AW(FindResourceEx)
2065 WINBASEAPI HANDLE WINAPI FindFirstVolumeA(LPSTR,DWORD);
2066 WINBASEAPI HANDLE WINAPI FindFirstVolumeW(LPWSTR,DWORD);
2067 #define FindFirstVolume WINELIB_NAME_AW(FindFirstVolume)
2068 WINBASEAPI HANDLE WINAPI FindFirstVolumeMountPointA(LPCSTR,LPSTR,DWORD);
2069 WINBASEAPI HANDLE WINAPI FindFirstVolumeMountPointW(LPCWSTR,LPWSTR,DWORD);
2070 #define FindFirstVolumeMountPoint WINELIB_NAME_AW(FindFirstVolumeMountPoint)
2071 WINBASEAPI BOOL WINAPI FindNextVolumeA(HANDLE,LPSTR,DWORD);
2072 WINBASEAPI BOOL WINAPI FindNextVolumeW(HANDLE,LPWSTR,DWORD);
2073 #define FindNextVolume WINELIB_NAME_AW(FindNextVolume)
2074 WINBASEAPI BOOL WINAPI FindNextVolumeMountPointA(HANDLE,LPSTR,DWORD);
2075 WINBASEAPI BOOL WINAPI FindNextVolumeMountPointW(HANDLE,LPWSTR,DWORD);
2076 #define FindNextVolumeMountPoint WINELIB_NAME_AW(FindNextVolumeMountPoint)
2077 WINBASEAPI BOOL WINAPI FindVolumeClose(HANDLE);
2078 WINBASEAPI BOOL WINAPI FindVolumeMountPointClose(HANDLE);
2079 WINBASEAPI DWORD WINAPI FlsAlloc(PFLS_CALLBACK_FUNCTION);
2080 WINBASEAPI BOOL WINAPI FlsFree(DWORD);
2081 WINBASEAPI PVOID WINAPI FlsGetValue(DWORD);
2082 WINBASEAPI BOOL WINAPI FlsSetValue(DWORD,PVOID);
2083 WINBASEAPI BOOL WINAPI FlushFileBuffers(HANDLE);
2084 WINBASEAPI BOOL WINAPI FlushInstructionCache(HANDLE,LPCVOID,SIZE_T);
2085 WINBASEAPI VOID WINAPI FlushProcessWriteBuffers(void);
2086 WINBASEAPI BOOL WINAPI FlushViewOfFile(LPCVOID,SIZE_T);
2087 WINBASEAPI DWORD WINAPI FormatMessageA(DWORD,LPCVOID,DWORD,DWORD,LPSTR,DWORD,__ms_va_list*);
2088 WINBASEAPI DWORD WINAPI FormatMessageW(DWORD,LPCVOID,DWORD,DWORD,LPWSTR,DWORD,__ms_va_list*);
2089 #define FormatMessage WINELIB_NAME_AW(FormatMessage)
2090 WINBASEAPI BOOL WINAPI FreeEnvironmentStringsA(LPSTR);
2091 WINBASEAPI BOOL WINAPI FreeEnvironmentStringsW(LPWSTR);
2092 #define FreeEnvironmentStrings WINELIB_NAME_AW(FreeEnvironmentStrings)
2093 WINBASEAPI BOOL WINAPI FreeLibrary(HMODULE);
2094 WINBASEAPI VOID DECLSPEC_NORETURN WINAPI FreeLibraryAndExitThread(HINSTANCE,DWORD);
2095 #define FreeModule(handle) FreeLibrary(handle)
2096 #define FreeProcInstance(proc) /*nothing*/
2097 WINBASEAPI BOOL WINAPI FreeResource(HGLOBAL);
2098 WINADVAPI PVOID WINAPI FreeSid(PSID);
2099 WINADVAPI BOOL WINAPI GetAce(PACL,DWORD,LPVOID*);
2100 WINADVAPI BOOL WINAPI GetAclInformation(PACL,LPVOID,DWORD,ACL_INFORMATION_CLASS);
2101 WINBASEAPI DWORD WINAPI GetActiveProcessorCount(WORD);
2102 WINBASEAPI HRESULT WINAPI GetApplicationRestartSettings(HANDLE,WCHAR*,DWORD*,DWORD*);
2103 WINBASEAPI UINT WINAPI GetAtomNameA(ATOM,LPSTR,INT);
2104 WINBASEAPI UINT WINAPI GetAtomNameW(ATOM,LPWSTR,INT);
2105 #define GetAtomName WINELIB_NAME_AW(GetAtomName)
2106 WINBASEAPI BOOL WINAPI GetBinaryTypeA( LPCSTR lpApplicationName, LPDWORD lpBinaryType );
2107 WINBASEAPI BOOL WINAPI GetBinaryTypeW( LPCWSTR lpApplicationName, LPDWORD lpBinaryType );
2108 #define GetBinaryType WINELIB_NAME_AW(GetBinaryType)
2109 WINBASEAPI BOOL WINAPI GetCurrentActCtx(HANDLE *);
2110 WINBASEAPI BOOL WINAPI GetCommConfig(HANDLE,LPCOMMCONFIG,LPDWORD);
2111 WINBASEAPI BOOL WINAPI GetCommMask(HANDLE,LPDWORD);
2112 WINBASEAPI BOOL WINAPI GetCommModemStatus(HANDLE,LPDWORD);
2113 WINBASEAPI BOOL WINAPI GetCommProperties(HANDLE,LPCOMMPROP);
2114 WINBASEAPI BOOL WINAPI GetCommState(HANDLE,LPDCB);
2115 WINBASEAPI BOOL WINAPI GetCommTimeouts(HANDLE,LPCOMMTIMEOUTS);
2116 WINBASEAPI LPSTR WINAPI GetCommandLineA(void);
2117 WINBASEAPI LPWSTR WINAPI GetCommandLineW(void);
2118 #define GetCommandLine WINELIB_NAME_AW(GetCommandLine)
2119 WINBASEAPI DWORD WINAPI GetCompressedFileSizeA(LPCSTR,LPDWORD);
2120 WINBASEAPI DWORD WINAPI GetCompressedFileSizeW(LPCWSTR,LPDWORD);
2121 #define GetCompressedFileSize WINELIB_NAME_AW(GetCompressedFileSize)
2122 WINBASEAPI BOOL WINAPI GetComputerNameA(LPSTR,LPDWORD);
2123 WINBASEAPI BOOL WINAPI GetComputerNameW(LPWSTR,LPDWORD);
2124 #define GetComputerName WINELIB_NAME_AW(GetComputerName)
2125 WINBASEAPI BOOL WINAPI GetComputerNameExA(COMPUTER_NAME_FORMAT,LPSTR,LPDWORD);
2126 WINBASEAPI BOOL WINAPI GetComputerNameExW(COMPUTER_NAME_FORMAT,LPWSTR,LPDWORD);
2127 #define GetComputerNameEx WINELIB_NAME_AW(GetComputerNameEx)
2128 WINBASEAPI UINT WINAPI GetCurrentDirectoryA(UINT,LPSTR);
2129 WINBASEAPI UINT WINAPI GetCurrentDirectoryW(UINT,LPWSTR);
2130 #define GetCurrentDirectory WINELIB_NAME_AW(GetCurrentDirectory)
2131 WINADVAPI BOOL WINAPI GetCurrentHwProfileA(LPHW_PROFILE_INFOA);
2132 WINADVAPI BOOL WINAPI GetCurrentHwProfileW(LPHW_PROFILE_INFOW);
2133 #define GetCurrentHwProfile WINELIB_NAME_AW(GetCurrentHwProfile)
2134 WINBASEAPI DWORD WINAPI GetCurrentProcessorNumber(void);
2135 WINBASEAPI VOID WINAPI GetCurrentProcessorNumberEx(PPROCESSOR_NUMBER);
2136 #define GetCurrentTime() GetTickCount()
2137 WINBASEAPI PUMS_CONTEXT WINAPI GetCurrentUmsThread(void);
2138 WINBASEAPI BOOL WINAPI GetDefaultCommConfigA(LPCSTR,LPCOMMCONFIG,LPDWORD);
2139 WINBASEAPI BOOL WINAPI GetDefaultCommConfigW(LPCWSTR,LPCOMMCONFIG,LPDWORD);
2140 #define GetDefaultCommConfig WINELIB_NAME_AW(GetDefaultCommConfig)
2141 WINBASEAPI BOOL WINAPI GetDevicePowerState(HANDLE,BOOL*);
2142 WINBASEAPI BOOL WINAPI GetDiskFreeSpaceA(LPCSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
2143 WINBASEAPI BOOL WINAPI GetDiskFreeSpaceW(LPCWSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
2144 #define GetDiskFreeSpace WINELIB_NAME_AW(GetDiskFreeSpace)
2145 WINBASEAPI BOOL WINAPI GetDiskFreeSpaceExA(LPCSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER);
2146 WINBASEAPI BOOL WINAPI GetDiskFreeSpaceExW(LPCWSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER);
2147 #define GetDiskFreeSpaceEx WINELIB_NAME_AW(GetDiskFreeSpaceEx)
2148 WINBASEAPI DWORD WINAPI GetDllDirectoryA(DWORD,LPSTR);
2149 WINBASEAPI DWORD WINAPI GetDllDirectoryW(DWORD,LPWSTR);
2150 #define GetDllDirectory WINELIB_NAME_AW(GetDllDirectory)
2151 WINBASEAPI UINT WINAPI GetDriveTypeA(LPCSTR);
2152 WINBASEAPI UINT WINAPI GetDriveTypeW(LPCWSTR);
2153 #define GetDriveType WINELIB_NAME_AW(GetDriveType)
2154 WINBASEAPI DWORD64 WINAPI GetEnabledXStateFeatures(void);
2155 WINBASEAPI LPSTR WINAPI GetEnvironmentStringsA(void);
2156 WINBASEAPI LPWSTR WINAPI GetEnvironmentStringsW(void);
2157 #define GetEnvironmentStrings WINELIB_NAME_AW(GetEnvironmentStrings)
2158 WINBASEAPI DWORD WINAPI GetEnvironmentVariableA(LPCSTR,LPSTR,DWORD);
2159 WINBASEAPI DWORD WINAPI GetEnvironmentVariableW(LPCWSTR,LPWSTR,DWORD);
2160 #define GetEnvironmentVariable WINELIB_NAME_AW(GetEnvironmentVariable)
2161 WINBASEAPI UINT WINAPI GetErrorMode(void);
2162 WINADVAPI BOOL WINAPI GetEventLogInformation(HANDLE,DWORD,LPVOID,DWORD,LPDWORD);
2163 WINBASEAPI BOOL WINAPI GetExitCodeProcess(HANDLE,LPDWORD);
2164 WINBASEAPI BOOL WINAPI GetExitCodeThread(HANDLE,LPDWORD);
2165 WINBASEAPI DWORD WINAPI GetFileAttributesA(LPCSTR);
2166 WINBASEAPI DWORD WINAPI GetFileAttributesW(LPCWSTR);
2167 #define GetFileAttributes WINELIB_NAME_AW(GetFileAttributes)
2168 WINBASEAPI BOOL WINAPI GetFileAttributesExA(LPCSTR,GET_FILEEX_INFO_LEVELS,LPVOID);
2169 WINBASEAPI BOOL WINAPI GetFileAttributesExW(LPCWSTR,GET_FILEEX_INFO_LEVELS,LPVOID);
2170 #define GetFileAttributesEx WINELIB_NAME_AW(GetFileAttributesEx)
2171 WINBASEAPI BOOL WINAPI GetFileInformationByHandle(HANDLE,BY_HANDLE_FILE_INFORMATION*);
2172 WINBASEAPI BOOL WINAPI GetFileInformationByHandleEx(HANDLE,FILE_INFO_BY_HANDLE_CLASS,LPVOID,DWORD);
2173 WINBASEAPI DWORD WINAPI GetFinalPathNameByHandleA(HANDLE,LPSTR,DWORD,DWORD);
2174 WINBASEAPI DWORD WINAPI GetFinalPathNameByHandleW(HANDLE,LPWSTR,DWORD,DWORD);
2175 #define GetFinalPathNameByHandle WINELIB_NAME_AW(GetFinalPathNameByHandle)
2176 WINADVAPI BOOL WINAPI GetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,LPDWORD);
2177 WINADVAPI BOOL WINAPI GetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,LPDWORD);
2178 #define GetFileSecurity WINELIB_NAME_AW(GetFileSecurity)
2179 WINBASEAPI DWORD WINAPI GetFileSize(HANDLE,LPDWORD);
2180 WINBASEAPI BOOL WINAPI GetFileSizeEx(HANDLE,PLARGE_INTEGER);
2181 WINBASEAPI BOOL WINAPI GetFileTime(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME);
2182 WINBASEAPI DWORD WINAPI GetFileType(HANDLE);
2183 #define GetFreeSpace(w) (__MSABI_LONG(0x100000))
2184 WINBASEAPI DWORD WINAPI GetFullPathNameA(LPCSTR,DWORD,LPSTR,LPSTR*);
2185 WINBASEAPI DWORD WINAPI GetFullPathNameW(LPCWSTR,DWORD,LPWSTR,LPWSTR*);
2186 #define GetFullPathName WINELIB_NAME_AW(GetFullPathName)
2187 WINBASEAPI BOOL WINAPI GetHandleInformation(HANDLE,LPDWORD);
2188 WINADVAPI BOOL WINAPI GetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,LPDWORD);
2189 WINADVAPI DWORD WINAPI GetLengthSid(PSID);
2190 WINBASEAPI VOID WINAPI GetLocalTime(LPSYSTEMTIME);
2191 WINBASEAPI DWORD WINAPI GetLogicalDrives(void);
2192 WINBASEAPI UINT WINAPI GetLogicalDriveStringsA(UINT,LPSTR);
2193 WINBASEAPI UINT WINAPI GetLogicalDriveStringsW(UINT,LPWSTR);
2194 #define GetLogicalDriveStrings WINELIB_NAME_AW(GetLogicalDriveStrings)
2195 WINBASEAPI DWORD WINAPI GetLongPathNameA(LPCSTR,LPSTR,DWORD);
2196 WINBASEAPI DWORD WINAPI GetLongPathNameW(LPCWSTR,LPWSTR,DWORD);
2197 #define GetLongPathName WINELIB_NAME_AW(GetLongPathName)
2198 WINBASEAPI BOOL WINAPI GetMailslotInfo(HANDLE,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
2199 WINBASEAPI DWORD WINAPI GetModuleFileNameA(HMODULE,LPSTR,DWORD);
2200 WINBASEAPI DWORD WINAPI GetModuleFileNameW(HMODULE,LPWSTR,DWORD);
2201 #define GetModuleFileName WINELIB_NAME_AW(GetModuleFileName)
2202 WINBASEAPI HMODULE WINAPI GetModuleHandleA(LPCSTR);
2203 WINBASEAPI HMODULE WINAPI GetModuleHandleW(LPCWSTR);
2204 #define GetModuleHandle WINELIB_NAME_AW(GetModuleHandle)
2205 WINBASEAPI BOOL WINAPI GetModuleHandleExA(DWORD,LPCSTR,HMODULE*);
2206 WINBASEAPI BOOL WINAPI GetModuleHandleExW(DWORD,LPCWSTR,HMODULE*);
2207 #define GetModuleHandleEx WINELIB_NAME_AW(GetModuleHandleEx)
2208 WINBASEAPI BOOL WINAPI GetNamedPipeClientProcessId(HANDLE,PULONG);
2209 WINBASEAPI BOOL WINAPI GetNamedPipeClientSessionId(HANDLE,PULONG);
2210 WINBASEAPI BOOL WINAPI GetNamedPipeHandleStateA(HANDLE,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPSTR,DWORD);
2211 WINBASEAPI BOOL WINAPI GetNamedPipeHandleStateW(HANDLE,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPWSTR,DWORD);
2212 #define GetNamedPipeHandleState WINELIB_NAME_AW(GetNamedPipeHandleState)
2213 WINBASEAPI BOOL WINAPI GetNamedPipeInfo(HANDLE,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
2214 WINBASEAPI BOOL WINAPI GetNamedPipeServerProcessId(HANDLE,PULONG);
2215 WINBASEAPI BOOL WINAPI GetNamedPipeServerSessionId(HANDLE,PULONG);
2216 WINBASEAPI VOID WINAPI GetNativeSystemInfo(LPSYSTEM_INFO);
2217 WINBASEAPI PUMS_CONTEXT WINAPI GetNextUmsListItem(PUMS_CONTEXT);
2218 WINBASEAPI BOOL WINAPI GetNumaAvailableMemoryNode(UCHAR,PULONGLONG);
2219 WINBASEAPI BOOL WINAPI GetNumaAvailableMemoryNodeEx(USHORT,PULONGLONG);
2220 WINBASEAPI BOOL WINAPI GetNumaNodeProcessorMaskEx(USHORT,PGROUP_AFFINITY);
2221 WINBASEAPI BOOL WINAPI GetNumaProcessorNode(UCHAR,PUCHAR);
2222 WINBASEAPI BOOL WINAPI GetNumaProcessorNodeEx(PPROCESSOR_NUMBER,PUSHORT);
2223 WINBASEAPI BOOL WINAPI GetNumaProximityNode(ULONG,PUCHAR);
2224 WINBASEAPI BOOL WINAPI GetNumaProximityNodeEx(ULONG,PUSHORT);
2225 WINADVAPI BOOL WINAPI GetNumberOfEventLogRecords(HANDLE,PDWORD);
2226 WINADVAPI BOOL WINAPI GetOldestEventLogRecord(HANDLE,PDWORD);
2227 WINBASEAPI BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,LPDWORD,BOOL);
2228 WINBASEAPI BOOL WINAPI GetOverlappedResultEx(HANDLE,OVERLAPPED*,DWORD*,DWORD,BOOL);
2229 WINBASEAPI DWORD WINAPI GetPriorityClass(HANDLE);
2230 WINADVAPI BOOL WINAPI GetPrivateObjectSecurity(PSECURITY_DESCRIPTOR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD);
2231 WINBASEAPI UINT WINAPI GetPrivateProfileIntA(LPCSTR,LPCSTR,INT,LPCSTR);
2232 WINBASEAPI UINT WINAPI GetPrivateProfileIntW(LPCWSTR,LPCWSTR,INT,LPCWSTR);
2233 #define GetPrivateProfileInt WINELIB_NAME_AW(GetPrivateProfileInt)
2234 WINBASEAPI INT WINAPI GetPrivateProfileSectionA(LPCSTR,LPSTR,DWORD,LPCSTR);
2235 WINBASEAPI INT WINAPI GetPrivateProfileSectionW(LPCWSTR,LPWSTR,DWORD,LPCWSTR);
2236 #define GetPrivateProfileSection WINELIB_NAME_AW(GetPrivateProfileSection)
2237 WINBASEAPI DWORD WINAPI GetPrivateProfileSectionNamesA(LPSTR,DWORD,LPCSTR);
2238 WINBASEAPI DWORD WINAPI GetPrivateProfileSectionNamesW(LPWSTR,DWORD,LPCWSTR);
2239 #define GetPrivateProfileSectionNames WINELIB_NAME_AW(GetPrivateProfileSectionNames)
2240 WINBASEAPI INT WINAPI GetPrivateProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT,LPCSTR);
2241 WINBASEAPI INT WINAPI GetPrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT,LPCWSTR);
2242 #define GetPrivateProfileString WINELIB_NAME_AW(GetPrivateProfileString)
2243 WINBASEAPI BOOL WINAPI GetPrivateProfileStructA(LPCSTR,LPCSTR,LPVOID,UINT,LPCSTR);
2244 WINBASEAPI BOOL WINAPI GetPrivateProfileStructW(LPCWSTR,LPCWSTR,LPVOID,UINT,LPCWSTR);
2245 #define GetPrivateProfileStruct WINELIB_NAME_AW(GetPrivateProfileStruct)
2246 WINBASEAPI FARPROC WINAPI GetProcAddress(HMODULE,LPCSTR);
2247 WINBASEAPI BOOL WINAPI GetProcessAffinityMask(HANDLE,PDWORD_PTR,PDWORD_PTR);
2248 WINBASEAPI BOOL WINAPI GetLogicalProcessorInformation(PSYSTEM_LOGICAL_PROCESSOR_INFORMATION,PDWORD);
2249 WINBASEAPI BOOL WINAPI GetLogicalProcessorInformationEx(LOGICAL_PROCESSOR_RELATIONSHIP,PSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX,PDWORD);
2250 WINBASEAPI DWORD WINAPI GetProcessHeaps(DWORD,PHANDLE);
2251 WINBASEAPI DWORD WINAPI GetProcessId(HANDLE);
2252 WINBASEAPI DWORD WINAPI GetProcessIdOfThread(HANDLE);
2253 WINBASEAPI BOOL WINAPI GetProcessIoCounters(HANDLE,PIO_COUNTERS);
2254 WINBASEAPI BOOL WINAPI GetProcessPriorityBoost(HANDLE,PBOOL);
2255 WINBASEAPI BOOL WINAPI GetProcessShutdownParameters(LPDWORD,LPDWORD);
2256 WINBASEAPI BOOL WINAPI GetProcessTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME);
2257 WINBASEAPI DWORD WINAPI GetProcessVersion(DWORD);
2258 WINBASEAPI BOOL WINAPI GetProcessWorkingSetSize(HANDLE,PSIZE_T,PSIZE_T);
2259 WINBASEAPI BOOL WINAPI GetProcessWorkingSetSizeEx(HANDLE,SIZE_T*,SIZE_T*,DWORD*);
2260 WINBASEAPI BOOL WINAPI GetProductInfo(DWORD,DWORD,DWORD,DWORD,PDWORD);
2261 WINBASEAPI UINT WINAPI GetProfileIntA(LPCSTR,LPCSTR,INT);
2262 WINBASEAPI UINT WINAPI GetProfileIntW(LPCWSTR,LPCWSTR,INT);
2263 #define GetProfileInt WINELIB_NAME_AW(GetProfileInt)
2264 WINBASEAPI INT WINAPI GetProfileSectionA(LPCSTR,LPSTR,DWORD);
2265 WINBASEAPI INT WINAPI GetProfileSectionW(LPCWSTR,LPWSTR,DWORD);
2266 #define GetProfileSection WINELIB_NAME_AW(GetProfileSection)
2267 WINBASEAPI INT WINAPI GetProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT);
2268 WINBASEAPI INT WINAPI GetProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,UINT);
2269 #define GetProfileString WINELIB_NAME_AW(GetProfileString)
2270 WINBASEAPI BOOL WINAPI GetQueuedCompletionStatus(HANDLE,LPDWORD,PULONG_PTR,LPOVERLAPPED*,DWORD);
2271 WINBASEAPI BOOL WINAPI GetQueuedCompletionStatusEx(HANDLE,OVERLAPPED_ENTRY*,ULONG,ULONG*,DWORD,BOOL);
2272 WINADVAPI BOOL WINAPI GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR_CONTROL,LPDWORD);
2273 WINADVAPI BOOL WINAPI GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL *,LPBOOL);
2274 WINADVAPI BOOL WINAPI GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID *,LPBOOL);
2275 WINADVAPI DWORD WINAPI GetSecurityDescriptorLength(PSECURITY_DESCRIPTOR);
2276 WINADVAPI BOOL WINAPI GetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID *,LPBOOL);
2277 WINADVAPI BOOL WINAPI GetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL *,LPBOOL);
2278 WINADVAPI PSID_IDENTIFIER_AUTHORITY WINAPI GetSidIdentifierAuthority(PSID);
2279 WINADVAPI DWORD WINAPI GetSidLengthRequired(BYTE);
2280 WINADVAPI PDWORD WINAPI GetSidSubAuthority(PSID,DWORD);
2281 WINADVAPI PUCHAR WINAPI GetSidSubAuthorityCount(PSID);
2282 WINBASEAPI DWORD WINAPI GetShortPathNameA(LPCSTR,LPSTR,DWORD);
2283 WINBASEAPI DWORD WINAPI GetShortPathNameW(LPCWSTR,LPWSTR,DWORD);
2284 #define GetShortPathName WINELIB_NAME_AW(GetShortPathName)
2285 WINBASEAPI VOID WINAPI GetStartupInfoA(LPSTARTUPINFOA);
2286 WINBASEAPI VOID WINAPI GetStartupInfoW(LPSTARTUPINFOW);
2287 #define GetStartupInfo WINELIB_NAME_AW(GetStartupInfo)
2288 WINBASEAPI HANDLE WINAPI GetStdHandle(DWORD);
2289 WINBASEAPI BOOL WINAPI GetSystemCpuSetInformation(SYSTEM_CPU_SET_INFORMATION*,ULONG,ULONG*,HANDLE,ULONG);
2290 WINBASEAPI UINT WINAPI GetSystemDirectoryA(LPSTR,UINT);
2291 WINBASEAPI UINT WINAPI GetSystemDirectoryW(LPWSTR,UINT);
2292 #define GetSystemDirectory WINELIB_NAME_AW(GetSystemDirectory)
2293 WINBASEAPI UINT WINAPI GetSystemFirmwareTable(DWORD,DWORD,PVOID,DWORD);
2294 WINBASEAPI VOID WINAPI GetSystemInfo(LPSYSTEM_INFO);
2295 WINBASEAPI BOOL WINAPI GetSystemPowerStatus(LPSYSTEM_POWER_STATUS);
2296 WINBASEAPI BOOL WINAPI GetSystemRegistryQuota(PDWORD,PDWORD);
2297 WINBASEAPI VOID WINAPI GetSystemTime(LPSYSTEMTIME);
2298 WINBASEAPI BOOL WINAPI GetSystemTimeAdjustment(PDWORD,PDWORD,PBOOL);
2299 WINBASEAPI VOID WINAPI GetSystemTimeAsFileTime(LPFILETIME);
2300 WINBASEAPI VOID WINAPI GetSystemTimePreciseAsFileTime(LPFILETIME);
2301 WINBASEAPI UINT WINAPI GetSystemWindowsDirectoryA(LPSTR,UINT);
2302 WINBASEAPI UINT WINAPI GetSystemWindowsDirectoryW(LPWSTR,UINT);
2303 #define GetSystemWindowsDirectory WINELIB_NAME_AW(GetSystemWindowsDirectory)
2304 WINBASEAPI UINT WINAPI GetSystemWow64Directory2A(LPSTR,UINT,WORD);
2305 WINBASEAPI UINT WINAPI GetSystemWow64Directory2W(LPWSTR,UINT,WORD);
2306 #define GetSystemWow64Directory2 WINELIB_NAME_AW(GetSystemWow64Directory2)
2307 WINBASEAPI UINT WINAPI GetSystemWow64DirectoryA(LPSTR,UINT);
2308 WINBASEAPI UINT WINAPI GetSystemWow64DirectoryW(LPWSTR,UINT);
2309 #define GetSystemWow64Directory WINELIB_NAME_AW(GetSystemWow64Directory)
2310 WINBASEAPI DWORD WINAPI GetTapeParameters(HANDLE,DWORD,LPDWORD,LPVOID);
2311 WINBASEAPI DWORD WINAPI GetTapePosition(HANDLE,DWORD,LPDWORD,LPDWORD,LPDWORD);
2312 WINBASEAPI DWORD WINAPI GetTapeStatus(HANDLE);
2313 WINBASEAPI UINT WINAPI GetTempFileNameA(LPCSTR,LPCSTR,UINT,LPSTR);
2314 WINBASEAPI UINT WINAPI GetTempFileNameW(LPCWSTR,LPCWSTR,UINT,LPWSTR);
2315 #define GetTempFileName WINELIB_NAME_AW(GetTempFileName)
2316 WINBASEAPI DWORD WINAPI GetTempPathA(DWORD,LPSTR);
2317 WINBASEAPI DWORD WINAPI GetTempPathW(DWORD,LPWSTR);
2318 #define GetTempPath WINELIB_NAME_AW(GetTempPath)
2319 WINBASEAPI BOOL WINAPI GetThreadContext(HANDLE,CONTEXT *);
2320 WINBASEAPI DWORD WINAPI GetThreadErrorMode(void);
2321 WINBASEAPI DWORD WINAPI GetThreadId(HANDLE);
2322 WINBASEAPI BOOL WINAPI GetThreadIOPendingFlag(HANDLE,PBOOL);
2323 WINBASEAPI INT WINAPI GetThreadPriority(HANDLE);
2324 WINBASEAPI BOOL WINAPI GetThreadPriorityBoost(HANDLE,PBOOL);
2325 WINBASEAPI BOOL WINAPI GetThreadSelectorEntry(HANDLE,DWORD,LPLDT_ENTRY);
2326 WINBASEAPI BOOL WINAPI GetThreadTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME);
2327 WINBASEAPI DWORD WINAPI GetTickCount(void);
2328 WINBASEAPI ULONGLONG WINAPI GetTickCount64(void);
2329 WINADVAPI BOOL WINAPI GetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,LPVOID,DWORD,LPDWORD);
2330 WINBASEAPI BOOL WINAPI GetUmsCompletionListEvent(PUMS_COMPLETION_LIST, PHANDLE);
2331 WINADVAPI BOOL WINAPI GetUserNameA(LPSTR,LPDWORD);
2332 WINADVAPI BOOL WINAPI GetUserNameW(LPWSTR,LPDWORD);
2333 #define GetUserName WINELIB_NAME_AW(GetUserName)
2334 WINBASEAPI DWORD WINAPI GetVersion(void);
2335 WINBASEAPI BOOL WINAPI GetVersionExA(OSVERSIONINFOA*);
2336 WINBASEAPI BOOL WINAPI GetVersionExW(OSVERSIONINFOW*);
2337 #define GetVersionEx WINELIB_NAME_AW(GetVersionEx)
2338 WINBASEAPI BOOL WINAPI GetVolumeInformationA(LPCSTR,LPSTR,DWORD,LPDWORD,LPDWORD,LPDWORD,LPSTR,DWORD);
2339 WINBASEAPI BOOL WINAPI GetVolumeInformationW(LPCWSTR,LPWSTR,DWORD,LPDWORD,LPDWORD,LPDWORD,LPWSTR,DWORD);
2340 #define GetVolumeInformation WINELIB_NAME_AW(GetVolumeInformation)
2341 WINBASEAPI BOOL WINAPI GetVolumeInformationByHandleW(HANDLE,WCHAR *,DWORD,DWORD *,DWORD *,DWORD *,WCHAR *,DWORD);
2342 WINBASEAPI BOOL WINAPI GetVolumeNameForVolumeMountPointA(LPCSTR,LPSTR,DWORD);
2343 WINBASEAPI BOOL WINAPI GetVolumeNameForVolumeMountPointW(LPCWSTR,LPWSTR,DWORD);
2344 #define GetVolumeNameForVolumeMountPoint WINELIB_NAME_AW(GetVolumeNameForVolumeMountPoint)
2345 WINBASEAPI BOOL WINAPI GetVolumePathNameA(LPCSTR,LPSTR,DWORD);
2346 WINBASEAPI BOOL WINAPI GetVolumePathNameW(LPCWSTR,LPWSTR,DWORD);
2347 #define GetVolumePathName WINELIB_NAME_AW(GetVolumePathName)
2348 WINBASEAPI BOOL WINAPI GetVolumePathNamesForVolumeNameA(LPCSTR,LPSTR,DWORD,PDWORD);
2349 WINBASEAPI BOOL WINAPI GetVolumePathNamesForVolumeNameW(LPCWSTR,LPWSTR,DWORD,PDWORD);
2350 #define GetVolumePathNamesForVolumeName WINELIB_NAME_AW(GetVolumePathNamesForVolumeName)
2351 WINADVAPI BOOL WINAPI GetWindowsAccountDomainSid(PSID,PSID,DWORD*);
2352 WINBASEAPI UINT WINAPI GetWindowsDirectoryA(LPSTR,UINT);
2353 WINBASEAPI UINT WINAPI GetWindowsDirectoryW(LPWSTR,UINT);
2354 #define GetWindowsDirectory WINELIB_NAME_AW(GetWindowsDirectory)
2355 WINBASEAPI UINT WINAPI GetWriteWatch(DWORD,LPVOID,SIZE_T,LPVOID*,ULONG_PTR*,ULONG*);
2356 WINBASEAPI BOOL WINAPI GetXStateFeaturesMask(CONTEXT*,DWORD64*);
2357 WINBASEAPI ATOM WINAPI GlobalAddAtomA(LPCSTR);
2358 WINBASEAPI ATOM WINAPI GlobalAddAtomW(LPCWSTR);
2359 #define GlobalAddAtom WINELIB_NAME_AW(GlobalAddAtom)
2360 WINBASEAPI HGLOBAL WINAPI GlobalFree(HGLOBAL);
2361 WINBASEAPI HGLOBAL WINAPI GlobalAlloc(UINT,SIZE_T) __WINE_ALLOC_SIZE(2) __WINE_DEALLOC(GlobalFree) __WINE_MALLOC;
2362 WINBASEAPI SIZE_T WINAPI GlobalCompact(DWORD);
2363 WINBASEAPI ATOM WINAPI GlobalDeleteAtom(ATOM);
2364 WINBASEAPI ATOM WINAPI GlobalFindAtomA(LPCSTR);
2365 WINBASEAPI ATOM WINAPI GlobalFindAtomW(LPCWSTR);
2366 #define GlobalFindAtom WINELIB_NAME_AW(GlobalFindAtom)
2367 WINBASEAPI VOID WINAPI GlobalFix(HGLOBAL);
2368 WINBASEAPI UINT WINAPI GlobalFlags(HGLOBAL);
2369 WINBASEAPI UINT WINAPI GlobalGetAtomNameA(ATOM,LPSTR,INT);
2370 WINBASEAPI UINT WINAPI GlobalGetAtomNameW(ATOM,LPWSTR,INT);
2371 #define GlobalGetAtomName WINELIB_NAME_AW(GlobalGetAtomName)
2372 WINBASEAPI HGLOBAL WINAPI GlobalHandle(LPCVOID);
2373 WINBASEAPI LPVOID WINAPI GlobalLock(HGLOBAL);
2374 WINBASEAPI VOID WINAPI GlobalMemoryStatus(LPMEMORYSTATUS);
2375 WINBASEAPI BOOL WINAPI GlobalMemoryStatusEx(LPMEMORYSTATUSEX);
2376 WINBASEAPI HGLOBAL WINAPI GlobalReAlloc(HGLOBAL,SIZE_T,UINT) __WINE_ALLOC_SIZE(2) __WINE_DEALLOC(GlobalFree);
2377 WINBASEAPI SIZE_T WINAPI GlobalSize(HGLOBAL);
2378 WINBASEAPI VOID WINAPI GlobalUnfix(HGLOBAL);
2379 WINBASEAPI BOOL WINAPI GlobalUnlock(HGLOBAL);
2380 WINBASEAPI BOOL WINAPI GlobalUnWire(HGLOBAL);
2381 WINBASEAPI LPVOID WINAPI GlobalWire(HGLOBAL);
2382 #define HasOverlappedIoCompleted(lpOverlapped) ((lpOverlapped)->Internal != STATUS_PENDING)
2383 WINBASEAPI BOOL WINAPI HeapFree(HANDLE,DWORD,LPVOID);
2384 WINBASEAPI LPVOID WINAPI HeapAlloc(HANDLE,DWORD,SIZE_T) __WINE_ALLOC_SIZE(3) __WINE_DEALLOC(HeapFree,3) __WINE_MALLOC;
2385 WINBASEAPI SIZE_T WINAPI HeapCompact(HANDLE,DWORD);
2386 WINBASEAPI HANDLE WINAPI HeapCreate(DWORD,SIZE_T,SIZE_T);
2387 WINBASEAPI BOOL WINAPI HeapDestroy(HANDLE);
2388 WINBASEAPI BOOL WINAPI HeapLock(HANDLE);
2389 WINBASEAPI LPVOID WINAPI HeapReAlloc(HANDLE,DWORD,LPVOID,SIZE_T) __WINE_ALLOC_SIZE(4) __WINE_DEALLOC(HeapFree,3);
2390 WINBASEAPI BOOL WINAPI HeapQueryInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T,PSIZE_T);
2391 WINBASEAPI BOOL WINAPI HeapSetInformation(HANDLE,HEAP_INFORMATION_CLASS,PVOID,SIZE_T);
2392 WINBASEAPI SIZE_T WINAPI HeapSize(HANDLE,DWORD,LPCVOID);
2393 WINBASEAPI BOOL WINAPI HeapUnlock(HANDLE);
2394 WINBASEAPI BOOL WINAPI HeapValidate(HANDLE,DWORD,LPCVOID);
2395 WINBASEAPI BOOL WINAPI HeapWalk(HANDLE,LPPROCESS_HEAP_ENTRY);
2396 WINBASEAPI BOOL WINAPI InitAtomTable(DWORD);
2397 WINADVAPI BOOL WINAPI InitializeAcl(PACL,DWORD,DWORD);
2398 WINBASEAPI VOID WINAPI InitializeConditionVariable(PCONDITION_VARIABLE);
2399 WINBASEAPI BOOL WINAPI InitializeContext(void *,DWORD,CONTEXT **,DWORD *);
2400 WINBASEAPI BOOL WINAPI InitializeContext2(void *,DWORD,CONTEXT **,DWORD *,ULONG64);
2401 WINBASEAPI void WINAPI InitializeCriticalSection(CRITICAL_SECTION *lpCrit);
2402 WINBASEAPI BOOL WINAPI InitializeCriticalSectionAndSpinCount(CRITICAL_SECTION *,DWORD);
2403 WINBASEAPI BOOL WINAPI InitializeCriticalSectionEx(CRITICAL_SECTION *,DWORD,DWORD);
2404 WINBASEAPI BOOL WINAPI InitializeProcThreadAttributeList(struct _PROC_THREAD_ATTRIBUTE_LIST*,DWORD,DWORD,SIZE_T*);
2405 WINADVAPI BOOL WINAPI InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR,DWORD);
2406 WINADVAPI BOOL WINAPI InitializeSid(PSID,PSID_IDENTIFIER_AUTHORITY,BYTE);
2407 WINBASEAPI VOID WINAPI InitializeSListHead(PSLIST_HEADER);
2408 WINBASEAPI VOID WINAPI InitializeSRWLock(PSRWLOCK);
2409 WINBASEAPI BOOL WINAPI InitOnceBeginInitialize(PINIT_ONCE, DWORD, PBOOL, PVOID*);
2410 WINBASEAPI BOOL WINAPI InitOnceComplete(PINIT_ONCE, DWORD, PVOID);
2411 WINBASEAPI BOOL WINAPI InitOnceExecuteOnce(PINIT_ONCE,PINIT_ONCE_FN,PVOID,PVOID*);
2412 WINBASEAPI VOID WINAPI InitOnceInitialize(PINIT_ONCE);
2413 WINBASEAPI PSLIST_ENTRY WINAPI InterlockedFlushSList(PSLIST_HEADER);
2414 WINBASEAPI PSLIST_ENTRY WINAPI InterlockedPopEntrySList(PSLIST_HEADER);
2415 WINBASEAPI PSLIST_ENTRY WINAPI InterlockedPushEntrySList(PSLIST_HEADER, PSLIST_ENTRY);
2416 WINBASEAPI BOOL WINAPI IsApiSetImplemented(LPCSTR);
2417 WINBASEAPI BOOL WINAPI IsBadCodePtr(FARPROC);
2418 WINBASEAPI BOOL WINAPI IsBadHugeReadPtr(LPCVOID,UINT_PTR);
2419 WINBASEAPI BOOL WINAPI IsBadHugeWritePtr(LPVOID,UINT_PTR);
2420 WINBASEAPI BOOL WINAPI IsBadReadPtr(LPCVOID,UINT_PTR);
2421 WINBASEAPI BOOL WINAPI IsBadStringPtrA(LPCSTR,UINT_PTR);
2422 WINBASEAPI BOOL WINAPI IsBadStringPtrW(LPCWSTR,UINT_PTR);
2423 #define IsBadStringPtr WINELIB_NAME_AW(IsBadStringPtr)
2424 WINBASEAPI BOOL WINAPI IsBadWritePtr(LPVOID,UINT_PTR);
2425 WINBASEAPI BOOL WINAPI IsDebuggerPresent(void);
2426 WINBASEAPI BOOL WINAPI IsSystemResumeAutomatic(void);
2427 WINADVAPI BOOL WINAPI IsTextUnicode(LPCVOID,INT,LPINT);
2428 WINADVAPI BOOL WINAPI IsTokenRestricted(HANDLE);
2429 WINADVAPI BOOL WINAPI IsValidAcl(PACL);
2430 WINADVAPI BOOL WINAPI IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR);
2431 WINADVAPI BOOL WINAPI IsValidSid(PSID);
2432 WINADVAPI BOOL WINAPI IsWellKnownSid(PSID,WELL_KNOWN_SID_TYPE);
2433 WINBASEAPI BOOL WINAPI IsWow64Process(HANDLE,PBOOL);
2434 WINBASEAPI BOOL WINAPI IsWow64Process2(HANDLE,USHORT*,USHORT*);
2435 WINADVAPI BOOL WINAPI ImpersonateLoggedOnUser(HANDLE);
2436 WINADVAPI BOOL WINAPI ImpersonateNamedPipeClient(HANDLE);
2437 WINADVAPI BOOL WINAPI ImpersonateSelf(SECURITY_IMPERSONATION_LEVEL);
2438 WINBASEAPI BOOL WINAPI IsProcessInJob(HANDLE,HANDLE,PBOOL);
2439 WINBASEAPI BOOL WINAPI IsProcessorFeaturePresent(DWORD);
2440 WINBASEAPI void WINAPI LeaveCriticalSection(CRITICAL_SECTION *lpCrit);
2441 WINBASEAPI HMODULE WINAPI LoadLibraryA(LPCSTR);
2442 WINBASEAPI HMODULE WINAPI LoadLibraryW(LPCWSTR);
2443 #define LoadLibrary WINELIB_NAME_AW(LoadLibrary)
2444 WINBASEAPI HMODULE WINAPI LoadLibraryExA(LPCSTR,HANDLE,DWORD);
2445 WINBASEAPI HMODULE WINAPI LoadLibraryExW(LPCWSTR,HANDLE,DWORD);
2446 #define LoadLibraryEx WINELIB_NAME_AW(LoadLibraryEx)
2447 WINBASEAPI DWORD WINAPI LoadModule(LPCSTR,LPVOID);
2448 WINBASEAPI HMODULE WINAPI LoadPackagedLibrary(LPCWSTR,DWORD);
2449 WINBASEAPI HGLOBAL WINAPI LoadResource(HMODULE,HRSRC);
2450 WINBASEAPI HLOCAL WINAPI LocalFree(HLOCAL);
2451 WINBASEAPI HLOCAL WINAPI LocalAlloc(UINT,SIZE_T) __WINE_ALLOC_SIZE(2) __WINE_DEALLOC(LocalFree) __WINE_MALLOC;
2452 WINBASEAPI SIZE_T WINAPI LocalCompact(UINT);
2453 WINBASEAPI UINT WINAPI LocalFlags(HLOCAL);
2454 WINBASEAPI HLOCAL WINAPI LocalHandle(LPCVOID);
2455 WINBASEAPI LPVOID WINAPI LocalLock(HLOCAL);
2456 WINBASEAPI HLOCAL WINAPI LocalReAlloc(HLOCAL,SIZE_T,UINT) __WINE_ALLOC_SIZE(2) __WINE_DEALLOC(LocalFree);
2457 WINBASEAPI SIZE_T WINAPI LocalShrink(HGLOBAL,UINT);
2458 WINBASEAPI SIZE_T WINAPI LocalSize(HLOCAL);
2459 WINBASEAPI BOOL WINAPI LocalUnlock(HLOCAL);
2460 WINBASEAPI void * WINAPI LocateXStateFeature(CONTEXT *,DWORD,DWORD *);
2461 WINBASEAPI LPVOID WINAPI LockResource(HGLOBAL);
2462 #define LockSegment(handle) GlobalFix((HANDLE)(handle))
2463 WINADVAPI BOOL WINAPI LookupAccountNameA(LPCSTR,LPCSTR,PSID,LPDWORD,LPSTR,LPDWORD,PSID_NAME_USE);
2464 WINADVAPI BOOL WINAPI LookupAccountNameW(LPCWSTR,LPCWSTR,PSID,LPDWORD,LPWSTR,LPDWORD,PSID_NAME_USE);
2465 #define LookupAccountName WINELIB_NAME_AW(LookupAccountName)
2466 WINADVAPI BOOL WINAPI LookupAccountSidA(LPCSTR,PSID,LPSTR,LPDWORD,LPSTR,LPDWORD,PSID_NAME_USE);
2467 WINADVAPI BOOL WINAPI LookupAccountSidW(LPCWSTR,PSID,LPWSTR,LPDWORD,LPWSTR,LPDWORD,PSID_NAME_USE);
2468 #define LookupAccountSid WINELIB_NAME_AW(LookupAccountSid)
2469 WINADVAPI BOOL WINAPI LookupAccountSidLocalA(PSID,LPSTR,LPDWORD,LPSTR,LPDWORD,PSID_NAME_USE);
2470 WINADVAPI BOOL WINAPI LookupAccountSidLocalW(PSID,LPWSTR,LPDWORD,LPWSTR,LPDWORD,PSID_NAME_USE);
2471 #define LookupAccountSidLocal WINELIB_NAME_AW(LookupAccountSidLocal)
2472 WINBASEAPI BOOL WINAPI LocalFileTimeToFileTime(const FILETIME*,LPFILETIME);
2473 WINBASEAPI BOOL WINAPI LockFile(HANDLE,DWORD,DWORD,DWORD,DWORD);
2474 WINBASEAPI BOOL WINAPI LockFileEx(HANDLE, DWORD, DWORD, DWORD, DWORD, LPOVERLAPPED);
2475 WINADVAPI BOOL WINAPI LogonUserA(LPCSTR,LPCSTR,LPCSTR,DWORD,DWORD,PHANDLE);
2476 WINADVAPI BOOL WINAPI LogonUserW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,DWORD,PHANDLE);
2477 #define LogonUser WINELIB_NAME_AW(LogonUser)
2478 WINADVAPI BOOL WINAPI LookupPrivilegeDisplayNameA(LPCSTR,LPCSTR,LPSTR,LPDWORD,LPDWORD);
2479 WINADVAPI BOOL WINAPI LookupPrivilegeDisplayNameW(LPCWSTR,LPCWSTR,LPWSTR,LPDWORD,LPDWORD);
2480 #define LookupPrivilegeDisplayName WINELIB_NAME_AW(LookupPrivilegeDisplayName)
2481 WINADVAPI BOOL WINAPI LookupPrivilegeNameA(LPCSTR,PLUID,LPSTR,LPDWORD);
2482 WINADVAPI BOOL WINAPI LookupPrivilegeNameW(LPCWSTR,PLUID,LPWSTR,LPDWORD);
2483 #define LookupPrivilegeName WINELIB_NAME_AW(LookupPrivilegeName)
2484 WINADVAPI BOOL WINAPI LookupPrivilegeValueA(LPCSTR,LPCSTR,PLUID);
2485 WINADVAPI BOOL WINAPI LookupPrivilegeValueW(LPCWSTR,LPCWSTR,PLUID);
2486 #define LookupPrivilegeValue WINELIB_NAME_AW(LookupPrivilegeValue)
2487 WINADVAPI BOOL WINAPI MakeAbsoluteSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,LPDWORD,PACL,LPDWORD,PACL,LPDWORD,PSID,LPDWORD,PSID,LPDWORD);
2488 WINBASEAPI void WINAPI MakeCriticalSectionGlobal(CRITICAL_SECTION *lpCrit);
2489 #define MakeProcInstance(proc,inst) (proc)
2490 WINADVAPI BOOL WINAPI MakeSelfRelativeSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,LPDWORD);
2491 WINADVAPI VOID WINAPI MapGenericMask(PDWORD,PGENERIC_MAPPING);
2492 WINBASEAPI BOOL WINAPI MapUserPhysicalPages(PVOID,ULONG_PTR,PULONG_PTR);
2493 WINBASEAPI LPVOID WINAPI MapViewOfFile(HANDLE,DWORD,DWORD,DWORD,SIZE_T);
2494 WINBASEAPI LPVOID WINAPI MapViewOfFile3(HANDLE,HANDLE,PVOID,ULONG64,SIZE_T,ULONG,ULONG,MEM_EXTENDED_PARAMETER*,ULONG);
2495 WINBASEAPI LPVOID WINAPI MapViewOfFileEx(HANDLE,DWORD,DWORD,DWORD,SIZE_T,LPVOID);
2496 WINBASEAPI LPVOID WINAPI MapViewOfFileFromApp(HANDLE,ULONG,ULONG64,SIZE_T);
2497 WINBASEAPI BOOL WINAPI MoveFileA(LPCSTR,LPCSTR);
2498 WINBASEAPI BOOL WINAPI MoveFileW(LPCWSTR,LPCWSTR);
2499 #define MoveFile WINELIB_NAME_AW(MoveFile)
2500 WINBASEAPI BOOL WINAPI MoveFileExA(LPCSTR,LPCSTR,DWORD);
2501 WINBASEAPI BOOL WINAPI MoveFileExW(LPCWSTR,LPCWSTR,DWORD);
2502 #define MoveFileEx WINELIB_NAME_AW(MoveFileEx)
2503 WINBASEAPI BOOL WINAPI MoveFileTransactedA(const char*,const char*,LPPROGRESS_ROUTINE,void*,DWORD,HANDLE);
2504 WINBASEAPI BOOL WINAPI MoveFileTransactedW(const WCHAR*,const WCHAR*,LPPROGRESS_ROUTINE,void*,DWORD,HANDLE);
2505 #define MoveFileTransacted WINELIB_NAME_AW(MoveFiletransacted)
2506 WINBASEAPI BOOL WINAPI MoveFileWithProgressA(LPCSTR,LPCSTR,LPPROGRESS_ROUTINE,LPVOID,DWORD);
2507 WINBASEAPI BOOL WINAPI MoveFileWithProgressW(LPCWSTR,LPCWSTR,LPPROGRESS_ROUTINE,LPVOID,DWORD);
2508 #define MoveFileWithProgress WINELIB_NAME_AW(MoveFileWithProgress)
2509 WINBASEAPI INT WINAPI MulDiv(INT,INT,INT);
2510 WINBASEAPI BOOL WINAPI NeedCurrentDirectoryForExePathA(LPCSTR);
2511 WINBASEAPI BOOL WINAPI NeedCurrentDirectoryForExePathW(LPCWSTR);
2512 #define NeedCurrentDirectoryForExePath WINELIB_NAME_AW(NeedCurrentDirectoryForExePath)
2513 WINADVAPI BOOL WINAPI NotifyChangeEventLog(HANDLE,HANDLE);
2514 WINADVAPI BOOL WINAPI ObjectCloseAuditAlarmA(LPCSTR,LPVOID,BOOL);
2515 WINADVAPI BOOL WINAPI ObjectCloseAuditAlarmW(LPCWSTR,LPVOID,BOOL);
2516 #define ObjectCloseAuditAlarm WINELIB_NAME_AW(ObjectCloseAuditAlarm)
2517 WINADVAPI BOOL WINAPI ObjectDeleteAuditAlarmA(LPCSTR,LPVOID,BOOL);
2518 WINADVAPI BOOL WINAPI ObjectDeleteAuditAlarmW(LPCWSTR,LPVOID,BOOL);
2519 #define ObjectDeleteAuditAlarm WINELIB_NAME_AW(ObjectDeleteAuditAlarm)
2520 WINADVAPI BOOL WINAPI ObjectOpenAuditAlarmA(LPCSTR,LPVOID,LPSTR,LPSTR,PSECURITY_DESCRIPTOR,HANDLE,DWORD,DWORD,PPRIVILEGE_SET,BOOL,BOOL,LPBOOL);
2521 WINADVAPI BOOL WINAPI ObjectOpenAuditAlarmW(LPCWSTR,LPVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,HANDLE,DWORD,DWORD,PPRIVILEGE_SET,BOOL,BOOL,LPBOOL);
2522 #define ObjectOpenAuditAlarm WINELIB_NAME_AW(ObjectOpenAuditAlarm)
2523 WINADVAPI BOOL WINAPI ObjectPrivilegeAuditAlarmA(LPCSTR,LPVOID,HANDLE,DWORD,PPRIVILEGE_SET,BOOL);
2524 WINADVAPI BOOL WINAPI ObjectPrivilegeAuditAlarmW(LPCWSTR,LPVOID,HANDLE,DWORD,PPRIVILEGE_SET,BOOL);
2525 #define ObjectPrivilegeAuditAlarm WINELIB_NAME_AW(ObjectPrivilegeAuditAlarm)
2526 WINADVAPI HANDLE WINAPI OpenBackupEventLogA(LPCSTR,LPCSTR);
2527 WINADVAPI HANDLE WINAPI OpenBackupEventLogW(LPCWSTR,LPCWSTR);
2528 #define OpenBackupEventLog WINELIB_NAME_AW(OpenBackupEventLog)
2529 WINADVAPI DWORD WINAPI OpenEncryptedFileRawA(LPCSTR,ULONG,PVOID*);
2530 WINADVAPI DWORD WINAPI OpenEncryptedFileRawW(LPCWSTR,ULONG,PVOID*);
2531 #define OpenEncryptedFileRaw WINELIB_NAME_AW(OpenEncryptedFileRaw)
2532 WINBASEAPI HANDLE WINAPI OpenEventA(DWORD,BOOL,LPCSTR);
2533 WINBASEAPI HANDLE WINAPI OpenEventW(DWORD,BOOL,LPCWSTR);
2534 #define OpenEvent WINELIB_NAME_AW(OpenEvent)
2535 WINADVAPI HANDLE WINAPI OpenEventLogA(LPCSTR,LPCSTR);
2536 WINADVAPI HANDLE WINAPI OpenEventLogW(LPCWSTR,LPCWSTR);
2537 #define OpenEventLog WINELIB_NAME_AW(OpenEventLog)
2538 WINBASEAPI HFILE WINAPI OpenFile(LPCSTR,OFSTRUCT*,UINT);
2539 WINBASEAPI HANDLE WINAPI OpenFileMappingA(DWORD,BOOL,LPCSTR);
2540 WINBASEAPI HANDLE WINAPI OpenFileMappingW(DWORD,BOOL,LPCWSTR);
2541 #define OpenFileMapping WINELIB_NAME_AW(OpenFileMapping)
2542 WINBASEAPI HANDLE WINAPI OpenFileMappingFromApp(ULONG,BOOL,LPCWSTR);
2543 WINBASEAPI HANDLE WINAPI OpenJobObjectA(DWORD,BOOL,LPCSTR);
2544 WINBASEAPI HANDLE WINAPI OpenJobObjectW(DWORD,BOOL,LPCWSTR);
2545 #define OpenJobObject WINELIB_NAME_AW(OpenJobObject)
2546 WINBASEAPI HANDLE WINAPI OpenMutexA(DWORD,BOOL,LPCSTR);
2547 WINBASEAPI HANDLE WINAPI OpenMutexW(DWORD,BOOL,LPCWSTR);
2548 #define OpenMutex WINELIB_NAME_AW(OpenMutex)
2549 WINBASEAPI HANDLE WINAPI OpenProcess(DWORD,BOOL,DWORD);
2550 WINADVAPI BOOL WINAPI OpenProcessToken(HANDLE,DWORD,PHANDLE);
2551 WINBASEAPI HANDLE WINAPI OpenSemaphoreA(DWORD,BOOL,LPCSTR);
2552 WINBASEAPI HANDLE WINAPI OpenSemaphoreW(DWORD,BOOL,LPCWSTR);
2553 #define OpenSemaphore WINELIB_NAME_AW(OpenSemaphore)
2554 WINBASEAPI HANDLE WINAPI OpenThread(DWORD,BOOL,DWORD);
2555 WINADVAPI BOOL WINAPI OpenThreadToken(HANDLE,DWORD,BOOL,PHANDLE);
2556 WINBASEAPI HANDLE WINAPI OpenWaitableTimerA(DWORD,BOOL,LPCSTR);
2557 WINBASEAPI HANDLE WINAPI OpenWaitableTimerW(DWORD,BOOL,LPCWSTR);
2558 #define OpenWaitableTimer WINELIB_NAME_AW(OpenWaitableTimer)
2559 WINBASEAPI VOID WINAPI OutputDebugStringA(LPCSTR);
2560 WINBASEAPI VOID WINAPI OutputDebugStringW(LPCWSTR);
2561 #define OutputDebugString WINELIB_NAME_AW(OutputDebugString)
2562 WINBASEAPI BOOL WINAPI PeekNamedPipe(HANDLE,PVOID,DWORD,PDWORD,PDWORD,PDWORD);
2563 WINBASEAPI BOOL WINAPI PostQueuedCompletionStatus(HANDLE,DWORD,ULONG_PTR,LPOVERLAPPED);
2564 WINBASEAPI DWORD WINAPI PrepareTape(HANDLE,DWORD,BOOL);
2565 WINBASEAPI BOOL WINAPI ProcessIdToSessionId(DWORD,DWORD*);
2566 WINADVAPI BOOL WINAPI PrivilegeCheck(HANDLE,PPRIVILEGE_SET,LPBOOL);
2567 WINADVAPI BOOL WINAPI PrivilegedServiceAuditAlarmA(LPCSTR,LPCSTR,HANDLE,PPRIVILEGE_SET,BOOL);
2568 WINADVAPI BOOL WINAPI PrivilegedServiceAuditAlarmW(LPCWSTR,LPCWSTR,HANDLE,PPRIVILEGE_SET,BOOL);
2569 #define PrivilegedServiceAuditAlarm WINELIB_NAME_AW(PrivilegedServiceAuditAlarm)
2570 WINBASEAPI BOOL WINAPI PulseEvent(HANDLE);
2571 WINBASEAPI BOOL WINAPI PurgeComm(HANDLE,DWORD);
2572 WINBASEAPI BOOL WINAPI QueryActCtxSettingsW(DWORD,HANDLE,const WCHAR*,const WCHAR*,WCHAR*,SIZE_T,SIZE_T*);
2573 WINBASEAPI BOOL WINAPI QueryActCtxW(DWORD,HANDLE,PVOID,ULONG,PVOID,SIZE_T,SIZE_T *);
2574 WINBASEAPI USHORT WINAPI QueryDepthSList(PSLIST_HEADER);
2575 WINBASEAPI DWORD WINAPI QueryDosDeviceA(LPCSTR,LPSTR,DWORD);
2576 WINBASEAPI DWORD WINAPI QueryDosDeviceW(LPCWSTR,LPWSTR,DWORD);
2577 #define QueryDosDevice WINELIB_NAME_AW(QueryDosDevice)
2578 WINBASEAPI BOOL WINAPI QueryFullProcessImageNameA(HANDLE,DWORD,LPSTR,PDWORD);
2579 WINBASEAPI BOOL WINAPI QueryFullProcessImageNameW(HANDLE,DWORD,LPWSTR,PDWORD);
2580 #define QueryFullProcessImageName WINELIB_NAME_AW(QueryFullProcessImageName)
2581 WINBASEAPI BOOL WINAPI QueryInformationJobObject(HANDLE,JOBOBJECTINFOCLASS,LPVOID,DWORD,DWORD*);
2582 WINBASEAPI BOOL WINAPI QueryMemoryResourceNotification(HANDLE,PBOOL);
2583 WINBASEAPI BOOL WINAPI QueryPerformanceCounter(LARGE_INTEGER*);
2584 WINBASEAPI BOOL WINAPI QueryPerformanceFrequency(LARGE_INTEGER*);
2585 WINBASEAPI BOOL WINAPI QueryThreadCycleTime(HANDLE,PULONG64);
2586 WINBASEAPI BOOL WINAPI QueryUmsThreadInformation(PUMS_CONTEXT,UMS_THREAD_INFO_CLASS,PVOID,ULONG,PULONG);
2587 WINBASEAPI DWORD WINAPI QueueUserAPC(PAPCFUNC,HANDLE,ULONG_PTR);
2588 WINBASEAPI BOOL WINAPI QueueUserWorkItem(LPTHREAD_START_ROUTINE,PVOID,ULONG);
2589 WINBASEAPI void WINAPI RaiseException(DWORD,DWORD,DWORD,const ULONG_PTR *);
2590 WINADVAPI BOOL WINAPI ReadEventLogA(HANDLE,DWORD,DWORD,LPVOID,DWORD,DWORD *,DWORD *);
2591 WINADVAPI BOOL WINAPI ReadEventLogW(HANDLE,DWORD,DWORD,LPVOID,DWORD,DWORD *,DWORD *);
2592 #define ReadEventLog WINELIB_NAME_AW(ReadEventLog)
2593 WINBASEAPI BOOL WINAPI ReadDirectoryChangesW(HANDLE,LPVOID,DWORD,BOOL,DWORD,LPDWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE);
2594 WINADVAPI DWORD WINAPI ReadEncryptedFileRaw(PFE_EXPORT_FUNC,PVOID,PVOID);
2595 WINBASEAPI BOOL WINAPI ReadFile(HANDLE,LPVOID,DWORD,LPDWORD,LPOVERLAPPED);
2596 WINBASEAPI BOOL WINAPI ReadFileEx(HANDLE,LPVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE);
2597 WINBASEAPI BOOL WINAPI ReadFileScatter(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED);
2598 WINBASEAPI BOOL WINAPI ReadProcessMemory(HANDLE,LPCVOID,LPVOID,SIZE_T,SIZE_T*);
2599 WINADVAPI HANDLE WINAPI RegisterEventSourceA(LPCSTR,LPCSTR);
2600 WINADVAPI HANDLE WINAPI RegisterEventSourceW(LPCWSTR,LPCWSTR);
2601 #define RegisterEventSource WINELIB_NAME_AW(RegisterEventSource)
2602 WINBASEAPI BOOL WINAPI RegisterWaitForSingleObject(PHANDLE,HANDLE,WAITORTIMERCALLBACK,PVOID,ULONG,ULONG);
2603 WINBASEAPI HANDLE WINAPI RegisterWaitForSingleObjectEx(HANDLE,WAITORTIMERCALLBACK,PVOID,ULONG,ULONG);
2604 WINBASEAPI VOID WINAPI ReleaseActCtx(HANDLE);
2605 WINBASEAPI BOOL WINAPI ReleaseMutex(HANDLE);
2606 WINBASEAPI BOOL WINAPI ReleaseSemaphore(HANDLE,LONG,LPLONG);
2607 WINBASEAPI VOID WINAPI ReleaseSRWLockExclusive(PSRWLOCK);
2608 WINBASEAPI VOID WINAPI ReleaseSRWLockShared(PSRWLOCK);
2609 WINBASEAPI ULONG WINAPI RemoveVectoredExceptionHandler(PVOID);
2610 WINBASEAPI BOOL WINAPI ReplaceFileA(LPCSTR,LPCSTR,LPCSTR,DWORD,LPVOID,LPVOID);
2611 WINBASEAPI BOOL WINAPI ReplaceFileW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPVOID,LPVOID);
2612 #define ReplaceFile WINELIB_NAME_AW(ReplaceFile)
2613 WINBASEAPI BOOL WINAPI RemoveDirectoryA(LPCSTR);
2614 WINBASEAPI BOOL WINAPI RemoveDirectoryW(LPCWSTR);
2615 #define RemoveDirectory WINELIB_NAME_AW(RemoveDirectory)
2616 WINADVAPI BOOL WINAPI ReportEventA(HANDLE,WORD,WORD,DWORD,PSID,WORD,DWORD,LPCSTR *,LPVOID);
2617 WINADVAPI BOOL WINAPI ReportEventW(HANDLE,WORD,WORD,DWORD,PSID,WORD,DWORD,LPCWSTR *,LPVOID);
2618 WINBASEAPI BOOL WINAPI RequestDeviceWakeup(HANDLE);
2619 WINBASEAPI BOOL WINAPI RequestWakeupLatency(LATENCY_TIME latency);
2620 #define ReportEvent WINELIB_NAME_AW(ReportEvent)
2621 WINBASEAPI BOOL WINAPI ResetEvent(HANDLE);
2622 WINBASEAPI UINT WINAPI ResetWriteWatch(LPVOID,SIZE_T);
2623 WINBASEAPI DWORD WINAPI ResumeThread(HANDLE);
2624 WINADVAPI BOOL WINAPI RevertToSelf(void);
2625 WINBASEAPI DWORD WINAPI SearchPathA(LPCSTR,LPCSTR,LPCSTR,DWORD,LPSTR,LPSTR*);
2626 WINBASEAPI DWORD WINAPI SearchPathW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPWSTR,LPWSTR*);
2627 #define SearchPath WINELIB_NAME_AW(SearchPath)
2628 WINADVAPI BOOL WINAPI SetAclInformation(PACL,LPVOID,DWORD,ACL_INFORMATION_CLASS);
2629 WINBASEAPI BOOL WINAPI SetCachedSigningLevel(PHANDLE,ULONG,ULONG,HANDLE);
2630 WINBASEAPI BOOL WINAPI SetCommConfig(HANDLE,LPCOMMCONFIG,DWORD);
2631 WINBASEAPI BOOL WINAPI SetCommBreak(HANDLE);
2632 WINBASEAPI BOOL WINAPI SetCommMask(HANDLE,DWORD);
2633 WINBASEAPI BOOL WINAPI SetCommState(HANDLE,LPDCB);
2634 WINBASEAPI BOOL WINAPI SetCommTimeouts(HANDLE,LPCOMMTIMEOUTS);
2635 WINBASEAPI BOOL WINAPI SetComputerNameA(LPCSTR);
2636 WINBASEAPI BOOL WINAPI SetComputerNameW(LPCWSTR);
2637 #define SetComputerName WINELIB_NAME_AW(SetComputerName)
2638 WINBASEAPI BOOL WINAPI SetComputerNameExA(COMPUTER_NAME_FORMAT,LPCSTR);
2639 WINBASEAPI BOOL WINAPI SetComputerNameExW(COMPUTER_NAME_FORMAT,LPCWSTR);
2640 #define SetComputerNameEx WINELIB_NAME_AW(SetComputerNameEx)
2641 WINBASEAPI DWORD WINAPI SetCriticalSectionSpinCount(LPCRITICAL_SECTION,DWORD);
2642 WINBASEAPI BOOL WINAPI SetCurrentDirectoryA(LPCSTR);
2643 WINBASEAPI BOOL WINAPI SetCurrentDirectoryW(LPCWSTR);
2644 #define SetCurrentDirectory WINELIB_NAME_AW(SetCurrentDirectory)
2645 WINBASEAPI BOOL WINAPI SetDefaultCommConfigA(LPCSTR,LPCOMMCONFIG,DWORD);
2646 WINBASEAPI BOOL WINAPI SetDefaultCommConfigW(LPCWSTR,LPCOMMCONFIG,DWORD);
2647 #define SetDefaultCommConfig WINELIB_NAME_AW(SetDefaultCommConfig)
2648 WINBASEAPI BOOL WINAPI SetDllDirectoryA(LPCSTR);
2649 WINBASEAPI BOOL WINAPI SetDllDirectoryW(LPCWSTR);
2650 #define SetDllDirectory WINELIB_NAME_AW(SetDllDirectory)
2651 WINBASEAPI BOOL WINAPI SetEndOfFile(HANDLE);
2652 WINBASEAPI BOOL WINAPI SetEnvironmentStringsA(char *);
2653 WINBASEAPI BOOL WINAPI SetEnvironmentStringsW(WCHAR *);
2654 #define SetEnvironmentStrings WINELIB_NAME_AW(SetEnvironmentStrings)
2655 WINBASEAPI BOOL WINAPI SetEnvironmentVariableA(LPCSTR,LPCSTR);
2656 WINBASEAPI BOOL WINAPI SetEnvironmentVariableW(LPCWSTR,LPCWSTR);
2657 #define SetEnvironmentVariable WINELIB_NAME_AW(SetEnvironmentVariable)
2658 WINBASEAPI UINT WINAPI SetErrorMode(UINT);
2659 WINBASEAPI BOOL WINAPI SetEvent(HANDLE);
2660 WINBASEAPI VOID WINAPI SetFileApisToANSI(void);
2661 WINBASEAPI VOID WINAPI SetFileApisToOEM(void);
2662 WINBASEAPI BOOL WINAPI SetFileAttributesA(LPCSTR,DWORD);
2663 WINBASEAPI BOOL WINAPI SetFileAttributesW(LPCWSTR,DWORD);
2664 #define SetFileAttributes WINELIB_NAME_AW(SetFileAttributes)
2665 WINBASEAPI BOOL WINAPI SetFileCompletionNotificationModes(HANDLE,UCHAR);
2666 WINBASEAPI BOOL WINAPI SetFileInformationByHandle(HANDLE,FILE_INFO_BY_HANDLE_CLASS,LPVOID,DWORD);
2667 WINBASEAPI DWORD WINAPI SetFilePointer(HANDLE,LONG,LPLONG,DWORD);
2668 WINBASEAPI BOOL WINAPI SetFilePointerEx(HANDLE,LARGE_INTEGER,LARGE_INTEGER*,DWORD);
2669 WINADVAPI BOOL WINAPI SetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
2670 WINADVAPI BOOL WINAPI SetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
2671 #define SetFileSecurity WINELIB_NAME_AW(SetFileSecurity)
2672 WINBASEAPI BOOL WINAPI SetFileTime(HANDLE,const FILETIME*,const FILETIME*,const FILETIME*);
2673 WINBASEAPI BOOL WINAPI SetFileValidData(HANDLE,LONGLONG);
2674 WINBASEAPI UINT WINAPI SetHandleCount(UINT);
2675 WINBASEAPI BOOL WINAPI SetHandleInformation(HANDLE,DWORD,DWORD);
2676 WINBASEAPI BOOL WINAPI SetInformationJobObject(HANDLE,JOBOBJECTINFOCLASS,LPVOID,DWORD);
2677 WINADVAPI BOOL WINAPI SetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR);
2678 WINBASEAPI BOOL WINAPI SetLocalTime(const SYSTEMTIME*);
2679 WINBASEAPI BOOL WINAPI SetMailslotInfo(HANDLE,DWORD);
2680 WINBASEAPI BOOL WINAPI SetNamedPipeHandleState(HANDLE,LPDWORD,LPDWORD,LPDWORD);
2681 WINBASEAPI BOOL WINAPI SetPriorityClass(HANDLE,DWORD);
2682 WINADVAPI BOOL WINAPI SetPrivateObjectSecurity(SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,PGENERIC_MAPPING,HANDLE);
2683 WINADVAPI BOOL WINAPI SetPrivateObjectSecurityEx(SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,ULONG,PGENERIC_MAPPING,HANDLE);
2684 WINBASEAPI BOOL WINAPI SetProcessAffinityMask(HANDLE,DWORD_PTR);
2685 WINBASEAPI BOOL WINAPI SetProcessPriorityBoost(HANDLE,BOOL);
2686 WINBASEAPI BOOL WINAPI SetProcessShutdownParameters(DWORD,DWORD);
2687 WINBASEAPI BOOL WINAPI SetProcessWorkingSetSize(HANDLE,SIZE_T,SIZE_T);
2688 WINBASEAPI BOOL WINAPI SetProcessWorkingSetSizeEx(HANDLE,SIZE_T,SIZE_T,DWORD);
2689 WINBASEAPI BOOL WINAPI SetSearchPathMode(DWORD);
2690 WINADVAPI BOOL WINAPI SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,SECURITY_DESCRIPTOR_CONTROL,SECURITY_DESCRIPTOR_CONTROL);
2691 WINADVAPI BOOL WINAPI SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL);
2692 WINADVAPI BOOL WINAPI SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID,BOOL);
2693 WINADVAPI BOOL WINAPI SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID,BOOL);
2694 WINADVAPI BOOL WINAPI SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL);
2695 WINBASEAPI BOOL WINAPI SetStdHandle(DWORD,HANDLE);
2696 WINBASEAPI BOOL WINAPI SetStdHandleEx(DWORD,HANDLE,HANDLE*);
2697 #define SetSwapAreaSize(w) (w)
2698 WINBASEAPI BOOL WINAPI SetSystemPowerState(BOOL,BOOL);
2699 WINBASEAPI BOOL WINAPI SetSystemTime(const SYSTEMTIME*);
2700 WINBASEAPI BOOL WINAPI SetSystemTimeAdjustment(DWORD,BOOL);
2701 WINBASEAPI DWORD WINAPI SetTapeParameters(HANDLE,DWORD,LPVOID);
2702 WINBASEAPI DWORD WINAPI SetTapePosition(HANDLE,DWORD,DWORD,DWORD,DWORD,BOOL);
2703 WINBASEAPI DWORD_PTR WINAPI SetThreadAffinityMask(HANDLE,DWORD_PTR);
2704 WINBASEAPI BOOL WINAPI SetThreadContext(HANDLE,const CONTEXT *);
2705 WINBASEAPI BOOL WINAPI SetThreadErrorMode(DWORD,LPDWORD);
2706 WINBASEAPI DWORD WINAPI SetThreadExecutionState(EXECUTION_STATE);
2707 WINBASEAPI DWORD WINAPI SetThreadIdealProcessor(HANDLE,DWORD);
2708 WINBASEAPI BOOL WINAPI SetThreadPriority(HANDLE,INT);
2709 WINBASEAPI BOOL WINAPI SetThreadPriorityBoost(HANDLE,BOOL);
2710 WINADVAPI BOOL WINAPI SetThreadToken(PHANDLE,HANDLE);
2711 WINBASEAPI HANDLE WINAPI SetTimerQueueTimer(HANDLE,WAITORTIMERCALLBACK,PVOID,DWORD,DWORD,BOOL);
2712 WINADVAPI BOOL WINAPI SetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,LPVOID,DWORD);
2713 WINBASEAPI LPTOP_LEVEL_EXCEPTION_FILTER WINAPI SetUnhandledExceptionFilter(LPTOP_LEVEL_EXCEPTION_FILTER);
2714 WINBASEAPI BOOL WINAPI SetVolumeLabelA(LPCSTR,LPCSTR);
2715 WINBASEAPI BOOL WINAPI SetVolumeLabelW(LPCWSTR,LPCWSTR);
2716 #define SetVolumeLabel WINELIB_NAME_AW(SetVolumeLabel)
2717 WINBASEAPI BOOL WINAPI SetVolumeMountPointA(LPCSTR,LPCSTR);
2718 WINBASEAPI BOOL WINAPI SetVolumeMountPointW(LPCWSTR,LPCWSTR);
2719 #define SetVolumeMountPoint WINELIB_NAME_AW(SetVolumeMountPoint)
2720 WINBASEAPI BOOL WINAPI SetWaitableTimer(HANDLE,const LARGE_INTEGER*,LONG,PTIMERAPCROUTINE,LPVOID,BOOL);
2721 WINBASEAPI BOOL WINAPI SetWaitableTimerEx(HANDLE,const LARGE_INTEGER*,LONG,PTIMERAPCROUTINE,LPVOID,REASON_CONTEXT*,ULONG);
2722 WINBASEAPI BOOL WINAPI SetUmsThreadInformation(PUMS_CONTEXT,UMS_THREAD_INFO_CLASS,void *,ULONG);
2723 WINBASEAPI BOOL WINAPI SetXStateFeaturesMask(CONTEXT*, DWORD64);
2724 WINBASEAPI BOOL WINAPI SetupComm(HANDLE,DWORD,DWORD);
2725 WINBASEAPI DWORD WINAPI SignalObjectAndWait(HANDLE,HANDLE,DWORD,BOOL);
2726 WINBASEAPI DWORD WINAPI SizeofResource(HMODULE,HRSRC);
2727 WINBASEAPI VOID WINAPI Sleep(DWORD);
2728 WINBASEAPI BOOL WINAPI SleepConditionVariableCS(PCONDITION_VARIABLE,PCRITICAL_SECTION,DWORD);
2729 WINBASEAPI BOOL WINAPI SleepConditionVariableSRW(PCONDITION_VARIABLE,PSRWLOCK,DWORD,ULONG);
2730 WINBASEAPI DWORD WINAPI SleepEx(DWORD,BOOL);
2731 WINBASEAPI DWORD WINAPI SuspendThread(HANDLE);
2732 WINBASEAPI void WINAPI SwitchToFiber(LPVOID);
2733 WINBASEAPI BOOL WINAPI SwitchToThread(void);
2734 WINBASEAPI BOOL WINAPI SystemTimeToFileTime(const SYSTEMTIME*,LPFILETIME);
2735 WINBASEAPI BOOL WINAPI TerminateJobObject(HANDLE,UINT);
2736 WINBASEAPI BOOL WINAPI TerminateProcess(HANDLE,DWORD);
2737 WINBASEAPI BOOL WINAPI TerminateThread(HANDLE,DWORD);
2738 WINBASEAPI DWORD WINAPI TlsAlloc(void);
2739 WINBASEAPI BOOL WINAPI TlsFree(DWORD);
2740 WINBASEAPI LPVOID WINAPI TlsGetValue(DWORD);
2741 WINBASEAPI BOOL WINAPI TlsSetValue(DWORD,LPVOID);
2742 WINBASEAPI BOOL WINAPI TransactNamedPipe(HANDLE,LPVOID,DWORD,LPVOID,DWORD,LPDWORD,LPOVERLAPPED);
2743 WINBASEAPI BOOL WINAPI TransmitCommChar(HANDLE,CHAR);
2744 WINBASEAPI BOOLEAN WINAPI TryAcquireSRWLockExclusive(PSRWLOCK);
2745 WINBASEAPI BOOLEAN WINAPI TryAcquireSRWLockShared(PSRWLOCK);
2746 WINBASEAPI BOOL WINAPI TryEnterCriticalSection(CRITICAL_SECTION *lpCrit);
2747 WINBASEAPI LONG WINAPI UnhandledExceptionFilter(PEXCEPTION_POINTERS);
2748 WINBASEAPI BOOL WINAPI UnlockFile(HANDLE,DWORD,DWORD,DWORD,DWORD);
2749 WINBASEAPI BOOL WINAPI UnlockFileEx(HANDLE,DWORD,DWORD,DWORD,LPOVERLAPPED);
2750 #define UnlockResource(handle) ((handle), 0)
2751 #define UnlockSegment(handle) GlobalUnfix((HANDLE)(handle))
2752 WINBASEAPI BOOL WINAPI UnmapViewOfFile(LPCVOID);
2753 WINBASEAPI BOOL WINAPI UnmapViewOfFile2(HANDLE,PVOID,ULONG);
2754 WINBASEAPI BOOL WINAPI UnmapViewOfFileEx(PVOID,ULONG);
2755 WINBASEAPI BOOL WINAPI UmsThreadYield(void *);
2756 WINBASEAPI HRESULT WINAPI UnregisterApplicationRestart(void);
2757 WINBASEAPI BOOL WINAPI UnregisterWait(HANDLE);
2758 WINBASEAPI BOOL WINAPI UnregisterWaitEx(HANDLE,HANDLE);
2759 WINBASEAPI BOOL WINAPI UpdateProcThreadAttribute(struct _PROC_THREAD_ATTRIBUTE_LIST*,DWORD,DWORD_PTR,void*,SIZE_T,void*,SIZE_T*);
2760 WINBASEAPI BOOL WINAPI UpdateResourceA(HANDLE,LPCSTR,LPCSTR,WORD,LPVOID,DWORD);
2761 WINBASEAPI BOOL WINAPI UpdateResourceW(HANDLE,LPCWSTR,LPCWSTR,WORD,LPVOID,DWORD);
2762 #define UpdateResource WINELIB_NAME_AW(UpdateResource)
2763 WINBASEAPI BOOL WINAPI VerifyVersionInfoA(LPOSVERSIONINFOEXA,DWORD,DWORDLONG);
2764 WINBASEAPI BOOL WINAPI VerifyVersionInfoW(LPOSVERSIONINFOEXW,DWORD,DWORDLONG);
2765 #define VerifyVersionInfo WINELIB_NAME_AW(VerifyVersionInfo)
2766 WINBASEAPI LPVOID WINAPI VirtualAlloc(LPVOID,SIZE_T,DWORD,DWORD);
2767 WINBASEAPI LPVOID WINAPI VirtualAlloc2(HANDLE,LPVOID,SIZE_T,DWORD,DWORD,MEM_EXTENDED_PARAMETER*,ULONG);
2768 WINBASEAPI LPVOID WINAPI VirtualAlloc2FromApp(HANDLE,LPVOID,SIZE_T,DWORD,DWORD,MEM_EXTENDED_PARAMETER*,ULONG);
2769 WINBASEAPI LPVOID WINAPI VirtualAllocEx(HANDLE,LPVOID,SIZE_T,DWORD,DWORD);
2770 WINBASEAPI LPVOID WINAPI VirtualAllocExNuma(HANDLE,void*,SIZE_T,DWORD,DWORD,DWORD);
2771 WINBASEAPI LPVOID WINAPI VirtualAllocFromApp(LPVOID,SIZE_T,DWORD,DWORD);
2772 WINBASEAPI BOOL WINAPI VirtualFree(LPVOID,SIZE_T,DWORD);
2773 WINBASEAPI BOOL WINAPI VirtualFreeEx(HANDLE,LPVOID,SIZE_T,DWORD);
2774 WINBASEAPI BOOL WINAPI VirtualLock(LPVOID,SIZE_T);
2775 WINBASEAPI BOOL WINAPI VirtualProtect(LPVOID,SIZE_T,DWORD,LPDWORD);
2776 WINBASEAPI BOOL WINAPI VirtualProtectEx(HANDLE,LPVOID,SIZE_T,DWORD,LPDWORD);
2777 WINBASEAPI SIZE_T WINAPI VirtualQuery(LPCVOID,PMEMORY_BASIC_INFORMATION,SIZE_T);
2778 WINBASEAPI SIZE_T WINAPI VirtualQueryEx(HANDLE,LPCVOID,PMEMORY_BASIC_INFORMATION,SIZE_T);
2779 WINBASEAPI BOOL WINAPI VirtualUnlock(LPVOID,SIZE_T);
2780 WINBASEAPI DWORD WINAPI WTSGetActiveConsoleSessionId(void);
2781 WINBASEAPI BOOL WINAPI WaitCommEvent(HANDLE,LPDWORD,LPOVERLAPPED);
2782 WINBASEAPI BOOL WINAPI WaitForDebugEvent(LPDEBUG_EVENT,DWORD);
2783 WINBASEAPI DWORD WINAPI WaitForMultipleObjects(DWORD,const HANDLE*,BOOL,DWORD);
2784 WINBASEAPI DWORD WINAPI WaitForMultipleObjectsEx(DWORD,const HANDLE*,BOOL,DWORD,BOOL);
2785 WINBASEAPI DWORD WINAPI WaitForSingleObject(HANDLE,DWORD);
2786 WINBASEAPI DWORD WINAPI WaitForSingleObjectEx(HANDLE,DWORD,BOOL);
2787 WINBASEAPI BOOL WINAPI WaitNamedPipeA(LPCSTR,DWORD);
2788 WINBASEAPI BOOL WINAPI WaitNamedPipeW(LPCWSTR,DWORD);
2789 #define WaitNamedPipe WINELIB_NAME_AW(WaitNamedPipe)
2790 WINBASEAPI VOID WINAPI WakeAllConditionVariable(PCONDITION_VARIABLE);
2791 WINBASEAPI VOID WINAPI WakeConditionVariable(PCONDITION_VARIABLE);
2792 WINBASEAPI UINT WINAPI WinExec(LPCSTR,UINT);
2793 WINBASEAPI BOOL WINAPI Wow64DisableWow64FsRedirection(PVOID*);
2794 WINBASEAPI BOOLEAN WINAPI Wow64EnableWow64FsRedirection(BOOLEAN);
2795 WINBASEAPI BOOL WINAPI Wow64GetThreadContext(HANDLE, WOW64_CONTEXT *);
2796 WINBASEAPI BOOL WINAPI Wow64GetThreadSelectorEntry(HANDLE,DWORD,WOW64_LDT_ENTRY*);
2797 WINBASEAPI BOOL WINAPI Wow64RevertWow64FsRedirection(PVOID);
2798 WINBASEAPI BOOL WINAPI Wow64SetThreadContext(HANDLE, const WOW64_CONTEXT *);
2799 WINADVAPI DWORD WINAPI WriteEncryptedFileRaw(PFE_IMPORT_FUNC,PVOID,PVOID);
2800 WINBASEAPI BOOL WINAPI WriteFile(HANDLE,LPCVOID,DWORD,LPDWORD,LPOVERLAPPED);
2801 WINBASEAPI BOOL WINAPI WriteFileEx(HANDLE,LPCVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE);
2802 WINBASEAPI BOOL WINAPI WriteFileGather(HANDLE,FILE_SEGMENT_ELEMENT*,DWORD,LPDWORD,LPOVERLAPPED);
2803 WINBASEAPI BOOL WINAPI WritePrivateProfileSectionA(LPCSTR,LPCSTR,LPCSTR);
2804 WINBASEAPI BOOL WINAPI WritePrivateProfileSectionW(LPCWSTR,LPCWSTR,LPCWSTR);
2805 #define WritePrivateProfileSection WINELIB_NAME_AW(WritePrivateProfileSection)
2806 WINBASEAPI BOOL WINAPI WritePrivateProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
2807 WINBASEAPI BOOL WINAPI WritePrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR);
2808 #define WritePrivateProfileString WINELIB_NAME_AW(WritePrivateProfileString)
2809 WINBASEAPI BOOL WINAPI WritePrivateProfileStructA(LPCSTR,LPCSTR,LPVOID,UINT,LPCSTR);
2810 WINBASEAPI BOOL WINAPI WritePrivateProfileStructW(LPCWSTR,LPCWSTR,LPVOID,UINT,LPCWSTR);
2811 #define WritePrivateProfileStruct WINELIB_NAME_AW(WritePrivateProfileStruct)
2812 WINBASEAPI BOOL WINAPI WriteProcessMemory(HANDLE,LPVOID,LPCVOID,SIZE_T,SIZE_T*);
2813 WINBASEAPI BOOL WINAPI WriteProfileSectionA(LPCSTR,LPCSTR);
2814 WINBASEAPI BOOL WINAPI WriteProfileSectionW(LPCWSTR,LPCWSTR);
2815 #define WritePrivateProfileSection WINELIB_NAME_AW(WritePrivateProfileSection)
2816 WINBASEAPI BOOL WINAPI WriteProfileStringA(LPCSTR,LPCSTR,LPCSTR);
2817 WINBASEAPI BOOL WINAPI WriteProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR);
2818 #define WriteProfileString WINELIB_NAME_AW(WriteProfileString)
2819 WINBASEAPI DWORD WINAPI WriteTapemark(HANDLE,DWORD,DWORD,BOOL);
2820 #define Yield()
2821 WINBASEAPI BOOL WINAPI ZombifyActCtx(HANDLE);
2823 WINBASEAPI INT WINAPI lstrcmpA(LPCSTR,LPCSTR);
2824 WINBASEAPI INT WINAPI lstrcmpW(LPCWSTR,LPCWSTR);
2825 WINBASEAPI INT WINAPI lstrcmpiA(LPCSTR,LPCSTR);
2826 WINBASEAPI INT WINAPI lstrcmpiW(LPCWSTR,LPCWSTR);
2828 #if !defined(__WINESRC__) || defined(WINE_NO_INLINE_STRING)
2830 WINBASEAPI LPSTR WINAPI lstrcatA(LPSTR,LPCSTR);
2831 WINBASEAPI LPWSTR WINAPI lstrcatW(LPWSTR,LPCWSTR);
2832 WINBASEAPI LPSTR WINAPI lstrcpyA(LPSTR,LPCSTR);
2833 WINBASEAPI LPWSTR WINAPI lstrcpyW(LPWSTR,LPCWSTR);
2834 WINBASEAPI LPSTR WINAPI lstrcpynA(LPSTR,LPCSTR,INT);
2835 WINBASEAPI LPWSTR WINAPI lstrcpynW(LPWSTR,LPCWSTR,INT);
2836 WINBASEAPI INT WINAPI lstrlenA(LPCSTR);
2837 WINBASEAPI INT WINAPI lstrlenW(LPCWSTR);
2839 #else
2841 /* string functions without the exception handler */
2843 static inline LPWSTR WINAPI lstrcpynW( LPWSTR dst, LPCWSTR src, INT n )
2845 LPWSTR d = dst;
2846 LPCWSTR s = src;
2847 UINT count = n;
2849 while ((count > 1) && *s)
2851 count--;
2852 *d++ = *s++;
2854 if (count) *d = 0;
2855 return dst;
2858 static inline LPSTR WINAPI lstrcpynA( LPSTR dst, LPCSTR src, INT n )
2860 LPSTR d = dst;
2861 LPCSTR s = src;
2862 UINT count = n;
2864 while ((count > 1) && *s)
2866 count--;
2867 *d++ = *s++;
2869 if (count) *d = 0;
2870 return dst;
2873 static inline INT WINAPI lstrlenW( LPCWSTR str )
2875 const WCHAR *s = str;
2876 while (*s) s++;
2877 return s - str;
2880 static inline INT WINAPI lstrlenA( LPCSTR str )
2882 return strlen( str );
2885 static inline LPWSTR WINAPI lstrcpyW( LPWSTR dst, LPCWSTR src )
2887 WCHAR *p = dst;
2888 while ((*p++ = *src++));
2889 return dst;
2892 static inline LPSTR WINAPI lstrcpyA( LPSTR dst, LPCSTR src )
2894 return strcpy( dst, src );
2897 static inline LPWSTR WINAPI lstrcatW( LPWSTR dst, LPCWSTR src )
2899 WCHAR *p = dst;
2900 while (*p) p++;
2901 while ((*p++ = *src++));
2902 return dst;
2905 static inline LPSTR WINAPI lstrcatA( LPSTR dst, LPCSTR src )
2907 return strcat( dst, src );
2910 /* strncpy/wcsncpy don't do what you think, don't use them */
2911 #undef strncpy
2912 #undef wcsncpy
2913 #define strncpy(d,s,n) error do_not_use_strncpy_use_lstrcpynA_or_memcpy_instead
2914 #define wcsncpy(d,s,n) error do_not_use_wcsncpy_use_lstrcpynW_or_memcpy_instead
2916 #endif /* !defined(__WINESRC__) || defined(WINE_NO_INLINE_STRING) */
2918 #define lstrcat WINELIB_NAME_AW(lstrcat)
2919 #define lstrcmp WINELIB_NAME_AW(lstrcmp)
2920 #define lstrcmpi WINELIB_NAME_AW(lstrcmpi)
2921 #define lstrcpy WINELIB_NAME_AW(lstrcpy)
2922 #define lstrcpyn WINELIB_NAME_AW(lstrcpyn)
2923 #define lstrlen WINELIB_NAME_AW(lstrlen)
2925 WINBASEAPI LONG WINAPI _hread(HFILE,LPVOID,LONG);
2926 WINBASEAPI LONG WINAPI _hwrite(HFILE,LPCSTR,LONG);
2927 WINBASEAPI HFILE WINAPI _lcreat(LPCSTR,INT);
2928 WINBASEAPI HFILE WINAPI _lclose(HFILE);
2929 WINBASEAPI LONG WINAPI _llseek(HFILE,LONG,INT);
2930 WINBASEAPI HFILE WINAPI _lopen(LPCSTR,INT);
2931 WINBASEAPI UINT WINAPI _lread(HFILE,LPVOID,UINT);
2932 WINBASEAPI UINT WINAPI _lwrite(HFILE,LPCSTR,UINT);
2934 /* compatibility macros */
2935 #define FillMemory RtlFillMemory
2936 #define MoveMemory RtlMoveMemory
2937 #define ZeroMemory RtlZeroMemory
2938 #define CopyMemory RtlCopyMemory
2939 #define SecureZeroMemory RtlSecureZeroMemory
2941 /* Wine internal functions */
2943 extern char * CDECL wine_get_unix_file_name( LPCWSTR dos );
2944 extern WCHAR * CDECL wine_get_dos_file_name( LPCSTR str );
2947 #ifdef __WINESRC__
2949 static FORCEINLINE HANDLE WINAPI GetCurrentProcess(void)
2951 return (HANDLE)~(ULONG_PTR)0;
2954 static FORCEINLINE DWORD WINAPI GetCurrentProcessId(void)
2956 return HandleToULong( ((HANDLE *)NtCurrentTeb())[8] );
2959 static FORCEINLINE HANDLE WINAPI GetCurrentThread(void)
2961 return (HANDLE)~(ULONG_PTR)1;
2964 static FORCEINLINE DWORD WINAPI GetCurrentThreadId(void)
2966 return HandleToULong( ((HANDLE *)NtCurrentTeb())[9] );
2969 static FORCEINLINE DWORD WINAPI GetLastError(void)
2971 return *(DWORD *)((void **)NtCurrentTeb() + 13);
2974 static FORCEINLINE HANDLE WINAPI GetProcessHeap(void)
2976 return ((HANDLE **)NtCurrentTeb())[12][6];
2979 static FORCEINLINE void WINAPI SetLastError( DWORD err )
2981 *(DWORD *)((void **)NtCurrentTeb() + 13) = err;
2984 #else /* __WINESRC__ */
2986 WINBASEAPI HANDLE WINAPI GetCurrentProcess(void);
2987 WINBASEAPI DWORD WINAPI GetCurrentProcessId(void);
2988 WINBASEAPI HANDLE WINAPI GetCurrentThread(void);
2989 WINBASEAPI DWORD WINAPI GetCurrentThreadId(void);
2990 WINBASEAPI DWORD WINAPI GetLastError(void);
2991 WINBASEAPI HANDLE WINAPI GetProcessHeap(void);
2992 WINBASEAPI VOID WINAPI SetLastError(DWORD);
2994 #endif /* __WINESRC__ */
2996 static FORCEINLINE HANDLE WINAPI GetCurrentProcessToken(void)
2998 return (HANDLE)~(ULONG_PTR)3;
3001 static FORCEINLINE HANDLE WINAPI GetCurrentThreadToken(void)
3003 return (HANDLE)~(ULONG_PTR)4;
3006 static FORCEINLINE HANDLE WINAPI GetCurrentThreadEffectiveToken(void)
3008 return (HANDLE)~(ULONG_PTR)5;
3011 /* WinMain(entry point) must be declared in winbase.h. */
3012 /* If this is not declared, we cannot compile many sources written with C++. */
3013 int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int);
3014 int WINAPI wWinMain(HINSTANCE,HINSTANCE,LPWSTR,int);
3016 #ifdef __WINESRC__
3017 /* shouldn't be here, but is nice for type checking */
3018 BOOL WINAPI DllMain( HINSTANCE hinst, DWORD reason, LPVOID reserved ) DECLSPEC_HIDDEN;
3019 #endif
3021 #ifdef __cplusplus
3023 #endif
3025 #endif /* __WINE_WINBASE_H */