/** * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the w64 mingw-runtime package. * No warranty is given; refer to the file DISCLAIMER within this package. */#ifndef _WINBASE_#define _WINBASE_ #define WINADVAPI DECLSPEC_IMPORT#define WINBASEAPI DECLSPEC_IMPORT#define ZAWPROXYAPI DECLSPEC_IMPORT #ifdef __cplusplusextern "C" {#endif #define DefineHandleTable(w) ((w),TRUE)#define LimitEmsPages(dw)#define SetSwapAreaSize(w) (w)#define LockSegment(w) GlobalFix((HANDLE)(w))#define UnlockSegment(w) GlobalUnfix((HANDLE)(w))#define GetCurrentTime() GetTickCount() #define Yield() #define INVALID_HANDLE_VALUE ((HANDLE)(LONG_PTR)-1)#define INVALID_FILE_SIZE ((DWORD)0xffffffff)#define INVALID_SET_FILE_POINTER ((DWORD)-1)#define INVALID_FILE_ATTRIBUTES ((DWORD)-1) #define FILE_BEGIN 0#define FILE_CURRENT 1#define FILE_END 2 #define TIME_ZONE_ID_INVALID ((DWORD)0xffffffff) #define WAIT_FAILED ((DWORD)0xffffffff)#define WAIT_OBJECT_0 ((STATUS_WAIT_0) + 0)#define WAIT_ABANDONED ((STATUS_ABANDONED_WAIT_0) + 0)#define WAIT_ABANDONED_0 ((STATUS_ABANDONED_WAIT_0) + 0)#define WAIT_IO_COMPLETION STATUS_USER_APC#define STILL_ACTIVE STATUS_PENDING#define EXCEPTION_ACCESS_VIOLATION STATUS_ACCESS_VIOLATION#define EXCEPTION_DATATYPE_MISALIGNMENT STATUS_DATATYPE_MISALIGNMENT#define EXCEPTION_BREAKPOINT STATUS_BREAKPOINT#define EXCEPTION_SINGLE_STEP STATUS_SINGLE_STEP#define EXCEPTION_ARRAY_BOUNDS_EXCEEDED STATUS_ARRAY_BOUNDS_EXCEEDED#define EXCEPTION_FLT_DENORMAL_OPERAND STATUS_FLOAT_DENORMAL_OPERAND#define EXCEPTION_FLT_DIVIDE_BY_ZERO STATUS_FLOAT_DIVIDE_BY_ZERO#define EXCEPTION_FLT_INEXACT_RESULT STATUS_FLOAT_INEXACT_RESULT#define EXCEPTION_FLT_INVALID_OPERATION STATUS_FLOAT_INVALID_OPERATION#define EXCEPTION_FLT_OVERFLOW STATUS_FLOAT_OVERFLOW#define EXCEPTION_FLT_STACK_CHECK STATUS_FLOAT_STACK_CHECK#define EXCEPTION_FLT_UNDERFLOW STATUS_FLOAT_UNDERFLOW#define EXCEPTION_INT_DIVIDE_BY_ZERO STATUS_INTEGER_DIVIDE_BY_ZERO#define EXCEPTION_INT_OVERFLOW STATUS_INTEGER_OVERFLOW#define EXCEPTION_PRIV_INSTRUCTION STATUS_PRIVILEGED_INSTRUCTION#define EXCEPTION_IN_PAGE_ERROR STATUS_IN_PAGE_ERROR#define EXCEPTION_ILLEGAL_INSTRUCTION STATUS_ILLEGAL_INSTRUCTION#define EXCEPTION_NONCONTINUABLE_EXCEPTION STATUS_NONCONTINUABLE_EXCEPTION#define EXCEPTION_STACK_OVERFLOW STATUS_STACK_OVERFLOW#define EXCEPTION_INVALID_DISPOSITION STATUS_INVALID_DISPOSITION#define EXCEPTION_GUARD_PAGE STATUS_GUARD_PAGE_VIOLATION#define EXCEPTION_INVALID_HANDLE STATUS_INVALID_HANDLE#define EXCEPTION_POSSIBLE_DEADLOCK STATUS_POSSIBLE_DEADLOCK#define CONTROL_C_EXIT STATUS_CONTROL_C_EXIT#define MoveMemory RtlMoveMemory#define CopyMemory RtlCopyMemory#define FillMemory RtlFillMemory#define ZeroMemory RtlZeroMemory#define SecureZeroMemory RtlSecureZeroMemory #define FILE_FLAG_WRITE_THROUGH 0x80000000#define FILE_FLAG_OVERLAPPED 0x40000000#define FILE_FLAG_NO_BUFFERING 0x20000000#define FILE_FLAG_RANDOM_ACCESS 0x10000000#define FILE_FLAG_SEQUENTIAL_SCAN 0x8000000#define FILE_FLAG_DELETE_ON_CLOSE 0x4000000#define FILE_FLAG_BACKUP_SEMANTICS 0x2000000#define FILE_FLAG_POSIX_SEMANTICS 0x1000000#define FILE_FLAG_OPEN_REPARSE_POINT 0x200000#define FILE_FLAG_OPEN_NO_RECALL 0x100000#define FILE_FLAG_FIRST_PIPE_INSTANCE 0x80000 #define CREATE_NEW 1#define CREATE_ALWAYS 2#define OPEN_EXISTING 3#define OPEN_ALWAYS 4#define TRUNCATE_EXISTING 5 #define PROGRESS_CONTINUE 0#define PROGRESS_CANCEL 1#define PROGRESS_STOP 2#define PROGRESS_QUIET 3 #define CALLBACK_CHUNK_FINISHED 0x0#define CALLBACK_STREAM_SWITCH 0x1 #define COPY_FILE_FAIL_IF_EXISTS 0x1#define COPY_FILE_RESTARTABLE 0x2#define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x4#define COPY_FILE_ALLOW_DECRYPTED_DESTINATION 0x8 #define REPLACEFILE_WRITE_THROUGH 0x1#define REPLACEFILE_IGNORE_MERGE_ERRORS 0x2 #define PIPE_ACCESS_INBOUND 0x1#define PIPE_ACCESS_OUTBOUND 0x2#define PIPE_ACCESS_DUPLEX 0x3 #define PIPE_CLIENT_END 0x0#define PIPE_SERVER_END 0x1 #define PIPE_WAIT 0x0#define PIPE_NOWAIT 0x1#define PIPE_READMODE_BYTE 0x0#define PIPE_READMODE_MESSAGE 0x2#define PIPE_TYPE_BYTE 0x0#define PIPE_TYPE_MESSAGE 0x4 #define PIPE_UNLIMITED_INSTANCES 255 #define SECURITY_ANONYMOUS (SecurityAnonymous << 16)#define SECURITY_IDENTIFICATION (SecurityIdentification << 16)#define SECURITY_IMPERSONATION (SecurityImpersonation << 16)#define SECURITY_DELEGATION (SecurityDelegation << 16) #define SECURITY_CONTEXT_TRACKING 0x40000#define SECURITY_EFFECTIVE_ONLY 0x80000 #define SECURITY_SQOS_PRESENT 0x100000#define SECURITY_VALID_SQOS_FLAGS 0x1f0000 typedef struct _OVERLAPPED { ULONG_PTR Internal; ULONG_PTR InternalHigh; union { struct { DWORD Offset; DWORD OffsetHigh; }; PVOID Pointer; }; HANDLE hEvent; } OVERLAPPED,*LPOVERLAPPED; typedef struct _SECURITY_ATTRIBUTES { DWORD nLength; LPVOID lpSecurityDescriptor; WINBOOL bInheritHandle; } SECURITY_ATTRIBUTES,*PSECURITY_ATTRIBUTES,*LPSECURITY_ATTRIBUTES; typedef struct _PROCESS_INFORMATION { HANDLE hProcess; HANDLE hThread; DWORD dwProcessId; DWORD dwThreadId; } PROCESS_INFORMATION,*PPROCESS_INFORMATION,*LPPROCESS_INFORMATION; #ifndef _FILETIME_#define _FILETIME_ typedef struct _FILETIME { DWORD dwLowDateTime; DWORD dwHighDateTime; } FILETIME,*PFILETIME,*LPFILETIME;#endif typedef struct _SYSTEMTIME { WORD wYear; WORD wMonth; WORD wDayOfWeek; WORD wDay; WORD wHour; WORD wMinute; WORD wSecond; WORD wMilliseconds; } SYSTEMTIME,*PSYSTEMTIME,*LPSYSTEMTIME; typedef DWORD (WINAPI *PTHREAD_START_ROUTINE)(LPVOID lpThreadParameter); typedef PTHREAD_START_ROUTINE LPTHREAD_START_ROUTINE; typedef VOID (WINAPI *PFIBER_START_ROUTINE)(LPVOID lpFiberParameter); typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE; typedef RTL_CRITICAL_SECTION CRITICAL_SECTION; typedef PRTL_CRITICAL_SECTION PCRITICAL_SECTION; typedef PRTL_CRITICAL_SECTION LPCRITICAL_SECTION; typedef RTL_CRITICAL_SECTION_DEBUG CRITICAL_SECTION_DEBUG; typedef PRTL_CRITICAL_SECTION_DEBUG PCRITICAL_SECTION_DEBUG; typedef PRTL_CRITICAL_SECTION_DEBUG LPCRITICAL_SECTION_DEBUG; WINBASEAPI PVOID WINAPI EncodePointer(PVOID Ptr); WINBASEAPI PVOID WINAPI DecodePointer(PVOID Ptr); WINBASEAPI PVOID WINAPI EncodeSystemPointer(PVOID Ptr); WINBASEAPI PVOID WINAPI DecodeSystemPointer(PVOID Ptr); #ifdef I_X86_ typedef PLDT_ENTRY LPLDT_ENTRY;#else typedef LPVOID LPLDT_ENTRY;#endif #define MUTEX_MODIFY_STATE MUTANT_QUERY_STATE#define MUTEX_ALL_ACCESS MUTANT_ALL_ACCESS #define SP_SERIALCOMM ((DWORD)0x1) #define PST_UNSPECIFIED ((DWORD)0x0)#define PST_RS232 ((DWORD)0x1)#define PST_PARALLELPORT ((DWORD)0x2)#define PST_RS422 ((DWORD)0x3)#define PST_RS423 ((DWORD)0x4)#define PST_RS449 ((DWORD)0x5)#define PST_MODEM ((DWORD)0x6)#define PST_FAX ((DWORD)0x21)#define PST_SCANNER ((DWORD)0x22)#define PST_NETWORK_BRIDGE ((DWORD)0x100)#define PST_LAT ((DWORD)0x101)#define PST_TCPIP_TELNET ((DWORD)0x102)#define PST_X25 ((DWORD)0x103) #define PCF_DTRDSR ((DWORD)0x1)#define PCF_RTSCTS ((DWORD)0x2)#define PCF_RLSD ((DWORD)0x4)#define PCF_PARITY_CHECK ((DWORD)0x8)#define PCF_XONXOFF ((DWORD)0x10)#define PCF_SETXCHAR ((DWORD)0x20)#define PCF_TOTALTIMEOUTS ((DWORD)0x40)#define PCF_INTTIMEOUTS ((DWORD)0x80)#define PCF_SPECIALCHARS ((DWORD)0x100)#define PCF_16BITMODE ((DWORD)0x200) #define SP_PARITY ((DWORD)0x1)#define SP_BAUD ((DWORD)0x2)#define SP_DATABITS ((DWORD)0x4)#define SP_STOPBITS ((DWORD)0x8)#define SP_HANDSHAKING ((DWORD)0x10)#define SP_PARITY_CHECK ((DWORD)0x20)#define SP_RLSD ((DWORD)0x40) #define BAUD_075 ((DWORD)0x1)#define BAUD_110 ((DWORD)0x2)#define BAUD_134_5 ((DWORD)0x4)#define BAUD_150 ((DWORD)0x8)#define BAUD_300 ((DWORD)0x10)#define BAUD_600 ((DWORD)0x20)#define BAUD_1200 ((DWORD)0x40)#define BAUD_1800 ((DWORD)0x80)#define BAUD_2400 ((DWORD)0x100)#define BAUD_4800 ((DWORD)0x200)#define BAUD_7200 ((DWORD)0x400)#define BAUD_9600 ((DWORD)0x800)#define BAUD_14400 ((DWORD)0x1000)#define BAUD_19200 ((DWORD)0x2000)#define BAUD_38400 ((DWORD)0x4000)#define BAUD_56K ((DWORD)0x8000)#define BAUD_128K ((DWORD)0x10000)#define BAUD_115200 ((DWORD)0x20000)#define BAUD_57600 ((DWORD)0x40000)#define BAUD_USER ((DWORD)0x10000000) #define DATABITS_5 ((WORD)0x1)#define DATABITS_6 ((WORD)0x2)#define DATABITS_7 ((WORD)0x4)#define DATABITS_8 ((WORD)0x8)#define DATABITS_16 ((WORD)0x10)#define DATABITS_16X ((WORD)0x20) #define STOPBITS_10 ((WORD)0x1)#define STOPBITS_15 ((WORD)0x2)#define STOPBITS_20 ((WORD)0x4)#define PARITY_NONE ((WORD)0x100)#define PARITY_ODD ((WORD)0x200)#define PARITY_EVEN ((WORD)0x400)#define PARITY_MARK ((WORD)0x800)#define PARITY_SPACE ((WORD)0x1000) typedef struct _COMMPROP { WORD wPacketLength; WORD wPacketVersion; DWORD dwServiceMask; DWORD dwReserved1; DWORD dwMaxTxQueue; DWORD dwMaxRxQueue; DWORD dwMaxBaud; DWORD dwProvSubType; DWORD dwProvCapabilities; DWORD dwSettableParams; DWORD dwSettableBaud; WORD wSettableData; WORD wSettableStopParity; DWORD dwCurrentTxQueue; DWORD dwCurrentRxQueue; DWORD dwProvSpec1; DWORD dwProvSpec2; WCHAR wcProvChar[1]; } COMMPROP,*LPCOMMPROP; #define COMMPROP_INITIALIZED ((DWORD)0xE73CF52E) typedef struct _COMSTAT { DWORD fCtsHold : 1; DWORD fDsrHold : 1; DWORD fRlsdHold : 1; DWORD fXoffHold : 1; DWORD fXoffSent : 1; DWORD fEof : 1; DWORD fTxim : 1; DWORD fReserved : 25; DWORD cbInQue; DWORD cbOutQue; } COMSTAT,*LPCOMSTAT; #define DTR_CONTROL_DISABLE 0x0#define DTR_CONTROL_ENABLE 0x1#define DTR_CONTROL_HANDSHAKE 0x2 #define RTS_CONTROL_DISABLE 0x0#define RTS_CONTROL_ENABLE 0x1#define RTS_CONTROL_HANDSHAKE 0x2#define RTS_CONTROL_TOGGLE 0x3 typedef struct _DCB { DWORD DCBlength; DWORD BaudRate; DWORD fBinary: 1; DWORD fParity: 1; DWORD fOutxCtsFlow:1; DWORD fOutxDsrFlow:1; DWORD fDtrControl:2; DWORD fDsrSensitivity:1; DWORD fTXContinueOnXoff: 1; DWORD fOutX: 1; DWORD fInX: 1; DWORD fErrorChar: 1; DWORD fNull: 1; DWORD fRtsControl:2; DWORD fAbortOnError:1; DWORD fDummy2:17; WORD wReserved; WORD XonLim; WORD XoffLim; BYTE ByteSize; BYTE Parity; BYTE StopBits; char XonChar; char XoffChar; char ErrorChar; char EofChar; char EvtChar; WORD wReserved1; } DCB,*LPDCB; typedef struct _COMMTIMEOUTS { DWORD ReadIntervalTimeout; DWORD ReadTotalTimeoutMultiplier; DWORD ReadTotalTimeoutConstant; DWORD WriteTotalTimeoutMultiplier; DWORD WriteTotalTimeoutConstant; } COMMTIMEOUTS,*LPCOMMTIMEOUTS; typedef struct _COMMCONFIG { DWORD dwSize; WORD wVersion; WORD wReserved; DCB dcb; DWORD dwProviderSubType; DWORD dwProviderOffset; DWORD dwProviderSize; WCHAR wcProviderData[1]; } COMMCONFIG,*LPCOMMCONFIG; typedef struct _SYSTEM_INFO { union { DWORD dwOemId; struct { WORD wProcessorArchitecture; WORD wReserved; }; }; DWORD dwPageSize; LPVOID lpMinimumApplicationAddress; LPVOID lpMaximumApplicationAddress; DWORD_PTR dwActiveProcessorMask; DWORD dwNumberOfProcessors; DWORD dwProcessorType; DWORD dwAllocationGranularity; WORD wProcessorLevel; WORD wProcessorRevision; } SYSTEM_INFO,*LPSYSTEM_INFO; #define FreeModule(hLibModule) FreeLibrary((hLibModule))#define MakeProcInstance(lpProc,hInstance) (lpProc)#define FreeProcInstance(lpProc) (lpProc) #define GMEM_FIXED 0x0#define GMEM_MOVEABLE 0x2#define GMEM_NOCOMPACT 0x10#define GMEM_NODISCARD 0x20#define GMEM_ZEROINIT 0x40#define GMEM_MODIFY 0x80#define GMEM_DISCARDABLE 0x100#define GMEM_NOT_BANKED 0x1000#define GMEM_SHARE 0x2000#define GMEM_DDESHARE 0x2000#define GMEM_NOTIFY 0x4000#define GMEM_LOWER GMEM_NOT_BANKED#define GMEM_VALID_FLAGS 0x7F72#define GMEM_INVALID_HANDLE 0x8000 #define GHND (GMEM_MOVEABLE | GMEM_ZEROINIT)#define GPTR (GMEM_FIXED | GMEM_ZEROINIT) #define GlobalLRUNewest(h) ((HANDLE)(h))#define GlobalLRUOldest(h) ((HANDLE)(h))#define GlobalDiscard(h) GlobalReAlloc((h),0,GMEM_MOVEABLE) #define GMEM_DISCARDED 0x4000#define GMEM_LOCKCOUNT 0xff typedef struct _MEMORYSTATUS { DWORD dwLength; DWORD dwMemoryLoad; SIZE_T dwTotalPhys; SIZE_T dwAvailPhys; SIZE_T dwTotalPageFile; SIZE_T dwAvailPageFile; SIZE_T dwTotalVirtual; SIZE_T dwAvailVirtual; } MEMORYSTATUS,*LPMEMORYSTATUS; #define LMEM_FIXED 0x0#define LMEM_MOVEABLE 0x2#define LMEM_NOCOMPACT 0x10#define LMEM_NODISCARD 0x20#define LMEM_ZEROINIT 0x40#define LMEM_MODIFY 0x80#define LMEM_DISCARDABLE 0xf00#define LMEM_VALID_FLAGS 0xf72#define LMEM_INVALID_HANDLE 0x8000 #define LHND (LMEM_MOVEABLE | LMEM_ZEROINIT)#define LPTR (LMEM_FIXED | LMEM_ZEROINIT) #define NONZEROLHND (LMEM_MOVEABLE)#define NONZEROLPTR (LMEM_FIXED) #define LocalDiscard(h) LocalReAlloc((h),0,LMEM_MOVEABLE) #define LMEM_DISCARDED 0x4000#define LMEM_LOCKCOUNT 0xff #define DEBUG_PROCESS 0x1#define DEBUG_ONLY_THIS_PROCESS 0x2#define CREATE_SUSPENDED 0x4#define DETACHED_PROCESS 0x8#define CREATE_NEW_CONSOLE 0x10#define NORMAL_PRIORITY_CLASS 0x20#define IDLE_PRIORITY_CLASS 0x40#define HIGH_PRIORITY_CLASS 0x80#define REALTIME_PRIORITY_CLASS 0x100#define CREATE_NEW_PROCESS_GROUP 0x200#define CREATE_UNICODE_ENVIRONMENT 0x400#define CREATE_SEPARATE_WOW_VDM 0x800#define CREATE_SHARED_WOW_VDM 0x1000#define CREATE_FORCEDOS 0x2000#define BELOW_NORMAL_PRIORITY_CLASS 0x4000#define ABOVE_NORMAL_PRIORITY_CLASS 0x8000#define STACK_SIZE_PARAM_IS_A_RESERVATION 0x10000 #define CREATE_BREAKAWAY_FROM_JOB 0x1000000#define CREATE_PRESERVE_CODE_AUTHZ_LEVEL 0x2000000 #define CREATE_DEFAULT_ERROR_MODE 0x4000000#define CREATE_NO_WINDOW 0x8000000 #define PROFILE_USER 0x10000000#define PROFILE_KERNEL 0x20000000#define PROFILE_SERVER 0x40000000 #define CREATE_IGNORE_SYSTEM_DEFAULT 0x80000000 #define THREAD_PRIORITY_LOWEST THREAD_BASE_PRIORITY_MIN#define THREAD_PRIORITY_BELOW_NORMAL (THREAD_PRIORITY_LOWEST+1)#define THREAD_PRIORITY_NORMAL 0#define THREAD_PRIORITY_HIGHEST THREAD_BASE_PRIORITY_MAX#define THREAD_PRIORITY_ABOVE_NORMAL (THREAD_PRIORITY_HIGHEST-1)#define THREAD_PRIORITY_ERROR_RETURN (MAXLONG) #define THREAD_PRIORITY_TIME_CRITICAL THREAD_BASE_PRIORITY_LOWRT#define THREAD_PRIORITY_IDLE THREAD_BASE_PRIORITY_IDLE #define EXCEPTION_DEBUG_EVENT 1#define CREATE_THREAD_DEBUG_EVENT 2#define CREATE_PROCESS_DEBUG_EVENT 3#define EXIT_THREAD_DEBUG_EVENT 4#define EXIT_PROCESS_DEBUG_EVENT 5#define LOAD_DLL_DEBUG_EVENT 6#define UNLOAD_DLL_DEBUG_EVENT 7#define OUTPUT_DEBUG_STRING_EVENT 8#define RIP_EVENT 9Lines 1–500 of 2951. Load more
/** * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the w64 mingw-runtime package. * No warranty is given; refer to the file DISCLAIMER within this package. */ #ifndef _WINBASE_ #define _WINBASE_ #define WINADVAPI DECLSPEC_IMPORT #define WINBASEAPI DECLSPEC_IMPORT #define ZAWPROXYAPI DECLSPEC_IMPORT #ifdef __cplusplus extern "C" { #endif #define DefineHandleTable(w) ((w),TRUE) #define LimitEmsPages(dw) #define SetSwapAreaSize(w) (w) #define LockSegment(w) GlobalFix((HANDLE)(w)) #define UnlockSegment(w) GlobalUnfix((HANDLE)(w)) #define GetCurrentTime() GetTickCount() #define Yield() #define INVALID_HANDLE_VALUE ((HANDLE)(LONG_PTR)-1) #define INVALID_FILE_SIZE ((DWORD)0xffffffff) #define INVALID_SET_FILE_POINTER ((DWORD)-1) #define INVALID_FILE_ATTRIBUTES ((DWORD)-1) #define FILE_BEGIN 0 #define FILE_CURRENT 1 #define FILE_END 2 #define TIME_ZONE_ID_INVALID ((DWORD)0xffffffff) #define WAIT_FAILED ((DWORD)0xffffffff) #define WAIT_OBJECT_0 ((STATUS_WAIT_0) + 0) #define WAIT_ABANDONED ((STATUS_ABANDONED_WAIT_0) + 0) #define WAIT_ABANDONED_0 ((STATUS_ABANDONED_WAIT_0) + 0) #define WAIT_IO_COMPLETION STATUS_USER_APC #define STILL_ACTIVE STATUS_PENDING #define EXCEPTION_ACCESS_VIOLATION STATUS_ACCESS_VIOLATION #define EXCEPTION_DATATYPE_MISALIGNMENT STATUS_DATATYPE_MISALIGNMENT #define EXCEPTION_BREAKPOINT STATUS_BREAKPOINT #define EXCEPTION_SINGLE_STEP STATUS_SINGLE_STEP #define EXCEPTION_ARRAY_BOUNDS_EXCEEDED STATUS_ARRAY_BOUNDS_EXCEEDED #define EXCEPTION_FLT_DENORMAL_OPERAND STATUS_FLOAT_DENORMAL_OPERAND #define EXCEPTION_FLT_DIVIDE_BY_ZERO STATUS_FLOAT_DIVIDE_BY_ZERO #define EXCEPTION_FLT_INEXACT_RESULT STATUS_FLOAT_INEXACT_RESULT #define EXCEPTION_FLT_INVALID_OPERATION STATUS_FLOAT_INVALID_OPERATION #define EXCEPTION_FLT_OVERFLOW STATUS_FLOAT_OVERFLOW #define EXCEPTION_FLT_STACK_CHECK STATUS_FLOAT_STACK_CHECK #define EXCEPTION_FLT_UNDERFLOW STATUS_FLOAT_UNDERFLOW #define EXCEPTION_INT_DIVIDE_BY_ZERO STATUS_INTEGER_DIVIDE_BY_ZERO #define EXCEPTION_INT_OVERFLOW STATUS_INTEGER_OVERFLOW #define EXCEPTION_PRIV_INSTRUCTION STATUS_PRIVILEGED_INSTRUCTION #define EXCEPTION_IN_PAGE_ERROR STATUS_IN_PAGE_ERROR #define EXCEPTION_ILLEGAL_INSTRUCTION STATUS_ILLEGAL_INSTRUCTION #define EXCEPTION_NONCONTINUABLE_EXCEPTION STATUS_NONCONTINUABLE_EXCEPTION #define EXCEPTION_STACK_OVERFLOW STATUS_STACK_OVERFLOW #define EXCEPTION_INVALID_DISPOSITION STATUS_INVALID_DISPOSITION #define EXCEPTION_GUARD_PAGE STATUS_GUARD_PAGE_VIOLATION #define EXCEPTION_INVALID_HANDLE STATUS_INVALID_HANDLE #define EXCEPTION_POSSIBLE_DEADLOCK STATUS_POSSIBLE_DEADLOCK #define CONTROL_C_EXIT STATUS_CONTROL_C_EXIT #define MoveMemory RtlMoveMemory #define CopyMemory RtlCopyMemory #define FillMemory RtlFillMemory #define ZeroMemory RtlZeroMemory #define SecureZeroMemory RtlSecureZeroMemory #define FILE_FLAG_WRITE_THROUGH 0x80000000 #define FILE_FLAG_OVERLAPPED 0x40000000 #define FILE_FLAG_NO_BUFFERING 0x20000000 #define FILE_FLAG_RANDOM_ACCESS 0x10000000 #define FILE_FLAG_SEQUENTIAL_SCAN 0x8000000 #define FILE_FLAG_DELETE_ON_CLOSE 0x4000000 #define FILE_FLAG_BACKUP_SEMANTICS 0x2000000 #define FILE_FLAG_POSIX_SEMANTICS 0x1000000 #define FILE_FLAG_OPEN_REPARSE_POINT 0x200000 #define FILE_FLAG_OPEN_NO_RECALL 0x100000 #define FILE_FLAG_FIRST_PIPE_INSTANCE 0x80000 #define CREATE_NEW 1 #define CREATE_ALWAYS 2 #define OPEN_EXISTING 3 #define OPEN_ALWAYS 4 #define TRUNCATE_EXISTING 5 #define PROGRESS_CONTINUE 0 #define PROGRESS_CANCEL 1 #define PROGRESS_STOP 2 #define PROGRESS_QUIET 3 #define CALLBACK_CHUNK_FINISHED 0x0 #define CALLBACK_STREAM_SWITCH 0x1 #define COPY_FILE_FAIL_IF_EXISTS 0x1 #define COPY_FILE_RESTARTABLE 0x2 #define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x4 #define COPY_FILE_ALLOW_DECRYPTED_DESTINATION 0x8 #define REPLACEFILE_WRITE_THROUGH 0x1 #define REPLACEFILE_IGNORE_MERGE_ERRORS 0x2 #define PIPE_ACCESS_INBOUND 0x1 #define PIPE_ACCESS_OUTBOUND 0x2 #define PIPE_ACCESS_DUPLEX 0x3 #define PIPE_CLIENT_END 0x0 #define PIPE_SERVER_END 0x1 #define PIPE_WAIT 0x0 #define PIPE_NOWAIT 0x1 #define PIPE_READMODE_BYTE 0x0 #define PIPE_READMODE_MESSAGE 0x2 #define PIPE_TYPE_BYTE 0x0 #define PIPE_TYPE_MESSAGE 0x4 #define PIPE_UNLIMITED_INSTANCES 255 #define SECURITY_ANONYMOUS (SecurityAnonymous << 16) #define SECURITY_IDENTIFICATION (SecurityIdentification << 16) #define SECURITY_IMPERSONATION (SecurityImpersonation << 16) #define SECURITY_DELEGATION (SecurityDelegation << 16) #define SECURITY_CONTEXT_TRACKING 0x40000 #define SECURITY_EFFECTIVE_ONLY 0x80000 #define SECURITY_SQOS_PRESENT 0x100000 #define SECURITY_VALID_SQOS_FLAGS 0x1f0000 typedef struct _OVERLAPPED { ULONG_PTR Internal; ULONG_PTR InternalHigh; union { struct { DWORD Offset; DWORD OffsetHigh; }; PVOID Pointer; }; HANDLE hEvent; } OVERLAPPED,*LPOVERLAPPED; typedef struct _SECURITY_ATTRIBUTES { DWORD nLength; LPVOID lpSecurityDescriptor; WINBOOL bInheritHandle; } SECURITY_ATTRIBUTES,*PSECURITY_ATTRIBUTES,*LPSECURITY_ATTRIBUTES; typedef struct _PROCESS_INFORMATION { HANDLE hProcess; HANDLE hThread; DWORD dwProcessId; DWORD dwThreadId; } PROCESS_INFORMATION,*PPROCESS_INFORMATION,*LPPROCESS_INFORMATION; #ifndef _FILETIME_ #define _FILETIME_ typedef struct _FILETIME { DWORD dwLowDateTime; DWORD dwHighDateTime; } FILETIME,*PFILETIME,*LPFILETIME; #endif typedef struct _SYSTEMTIME { WORD wYear; WORD wMonth; WORD wDayOfWeek; WORD wDay; WORD wHour; WORD wMinute; WORD wSecond; WORD wMilliseconds; } SYSTEMTIME,*PSYSTEMTIME,*LPSYSTEMTIME; typedef DWORD (WINAPI *PTHREAD_START_ROUTINE)(LPVOID lpThreadParameter); typedef PTHREAD_START_ROUTINE LPTHREAD_START_ROUTINE; typedef VOID (WINAPI *PFIBER_START_ROUTINE)(LPVOID lpFiberParameter); typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE; typedef RTL_CRITICAL_SECTION CRITICAL_SECTION; typedef PRTL_CRITICAL_SECTION PCRITICAL_SECTION; typedef PRTL_CRITICAL_SECTION LPCRITICAL_SECTION; typedef RTL_CRITICAL_SECTION_DEBUG CRITICAL_SECTION_DEBUG; typedef PRTL_CRITICAL_SECTION_DEBUG PCRITICAL_SECTION_DEBUG; typedef PRTL_CRITICAL_SECTION_DEBUG LPCRITICAL_SECTION_DEBUG; WINBASEAPI PVOID WINAPI EncodePointer(PVOID Ptr); WINBASEAPI PVOID WINAPI DecodePointer(PVOID Ptr); WINBASEAPI PVOID WINAPI EncodeSystemPointer(PVOID Ptr); WINBASEAPI PVOID WINAPI DecodeSystemPointer(PVOID Ptr); #ifdef I_X86_ typedef PLDT_ENTRY LPLDT_ENTRY; #else typedef LPVOID LPLDT_ENTRY; #endif #define MUTEX_MODIFY_STATE MUTANT_QUERY_STATE #define MUTEX_ALL_ACCESS MUTANT_ALL_ACCESS #define SP_SERIALCOMM ((DWORD)0x1) #define PST_UNSPECIFIED ((DWORD)0x0) #define PST_RS232 ((DWORD)0x1) #define PST_PARALLELPORT ((DWORD)0x2) #define PST_RS422 ((DWORD)0x3) #define PST_RS423 ((DWORD)0x4) #define PST_RS449 ((DWORD)0x5) #define PST_MODEM ((DWORD)0x6) #define PST_FAX ((DWORD)0x21) #define PST_SCANNER ((DWORD)0x22) #define PST_NETWORK_BRIDGE ((DWORD)0x100) #define PST_LAT ((DWORD)0x101) #define PST_TCPIP_TELNET ((DWORD)0x102) #define PST_X25 ((DWORD)0x103) #define PCF_DTRDSR ((DWORD)0x1) #define PCF_RTSCTS ((DWORD)0x2) #define PCF_RLSD ((DWORD)0x4) #define PCF_PARITY_CHECK ((DWORD)0x8) #define PCF_XONXOFF ((DWORD)0x10) #define PCF_SETXCHAR ((DWORD)0x20) #define PCF_TOTALTIMEOUTS ((DWORD)0x40) #define PCF_INTTIMEOUTS ((DWORD)0x80) #define PCF_SPECIALCHARS ((DWORD)0x100) #define PCF_16BITMODE ((DWORD)0x200) #define SP_PARITY ((DWORD)0x1) #define SP_BAUD ((DWORD)0x2) #define SP_DATABITS ((DWORD)0x4) #define SP_STOPBITS ((DWORD)0x8) #define SP_HANDSHAKING ((DWORD)0x10) #define SP_PARITY_CHECK ((DWORD)0x20) #define SP_RLSD ((DWORD)0x40) #define BAUD_075 ((DWORD)0x1) #define BAUD_110 ((DWORD)0x2) #define BAUD_134_5 ((DWORD)0x4) #define BAUD_150 ((DWORD)0x8) #define BAUD_300 ((DWORD)0x10) #define BAUD_600 ((DWORD)0x20) #define BAUD_1200 ((DWORD)0x40) #define BAUD_1800 ((DWORD)0x80) #define BAUD_2400 ((DWORD)0x100) #define BAUD_4800 ((DWORD)0x200) #define BAUD_7200 ((DWORD)0x400) #define BAUD_9600 ((DWORD)0x800) #define BAUD_14400 ((DWORD)0x1000) #define BAUD_19200 ((DWORD)0x2000) #define BAUD_38400 ((DWORD)0x4000) #define BAUD_56K ((DWORD)0x8000) #define BAUD_128K ((DWORD)0x10000) #define BAUD_115200 ((DWORD)0x20000) #define BAUD_57600 ((DWORD)0x40000) #define BAUD_USER ((DWORD)0x10000000) #define DATABITS_5 ((WORD)0x1) #define DATABITS_6 ((WORD)0x2) #define DATABITS_7 ((WORD)0x4) #define DATABITS_8 ((WORD)0x8) #define DATABITS_16 ((WORD)0x10) #define DATABITS_16X ((WORD)0x20) #define STOPBITS_10 ((WORD)0x1) #define STOPBITS_15 ((WORD)0x2) #define STOPBITS_20 ((WORD)0x4) #define PARITY_NONE ((WORD)0x100) #define PARITY_ODD ((WORD)0x200) #define PARITY_EVEN ((WORD)0x400) #define PARITY_MARK ((WORD)0x800) #define PARITY_SPACE ((WORD)0x1000) typedef struct _COMMPROP { WORD wPacketLength; WORD wPacketVersion; DWORD dwServiceMask; DWORD dwReserved1; DWORD dwMaxTxQueue; DWORD dwMaxRxQueue; DWORD dwMaxBaud; DWORD dwProvSubType; DWORD dwProvCapabilities; DWORD dwSettableParams; DWORD dwSettableBaud; WORD wSettableData; WORD wSettableStopParity; DWORD dwCurrentTxQueue; DWORD dwCurrentRxQueue; DWORD dwProvSpec1; DWORD dwProvSpec2; WCHAR wcProvChar[1]; } COMMPROP,*LPCOMMPROP; #define COMMPROP_INITIALIZED ((DWORD)0xE73CF52E) typedef struct _COMSTAT { DWORD fCtsHold : 1; DWORD fDsrHold : 1; DWORD fRlsdHold : 1; DWORD fXoffHold : 1; DWORD fXoffSent : 1; DWORD fEof : 1; DWORD fTxim : 1; DWORD fReserved : 25; DWORD cbInQue; DWORD cbOutQue; } COMSTAT,*LPCOMSTAT; #define DTR_CONTROL_DISABLE 0x0 #define DTR_CONTROL_ENABLE 0x1 #define DTR_CONTROL_HANDSHAKE 0x2 #define RTS_CONTROL_DISABLE 0x0 #define RTS_CONTROL_ENABLE 0x1 #define RTS_CONTROL_HANDSHAKE 0x2 #define RTS_CONTROL_TOGGLE 0x3 typedef struct _DCB { DWORD DCBlength; DWORD BaudRate; DWORD fBinary: 1; DWORD fParity: 1; DWORD fOutxCtsFlow:1; DWORD fOutxDsrFlow:1; DWORD fDtrControl:2; DWORD fDsrSensitivity:1; DWORD fTXContinueOnXoff: 1; DWORD fOutX: 1; DWORD fInX: 1; DWORD fErrorChar: 1; DWORD fNull: 1; DWORD fRtsControl:2; DWORD fAbortOnError:1; DWORD fDummy2:17; WORD wReserved; WORD XonLim; WORD XoffLim; BYTE ByteSize; BYTE Parity; BYTE StopBits; char XonChar; char XoffChar; char ErrorChar; char EofChar; char EvtChar; WORD wReserved1; } DCB,*LPDCB; typedef struct _COMMTIMEOUTS { DWORD ReadIntervalTimeout; DWORD ReadTotalTimeoutMultiplier; DWORD ReadTotalTimeoutConstant; DWORD WriteTotalTimeoutMultiplier; DWORD WriteTotalTimeoutConstant; } COMMTIMEOUTS,*LPCOMMTIMEOUTS; typedef struct _COMMCONFIG { DWORD dwSize; WORD wVersion; WORD wReserved; DCB dcb; DWORD dwProviderSubType; DWORD dwProviderOffset; DWORD dwProviderSize; WCHAR wcProviderData[1]; } COMMCONFIG,*LPCOMMCONFIG; typedef struct _SYSTEM_INFO { union { DWORD dwOemId; struct { WORD wProcessorArchitecture; WORD wReserved; }; }; DWORD dwPageSize; LPVOID lpMinimumApplicationAddress; LPVOID lpMaximumApplicationAddress; DWORD_PTR dwActiveProcessorMask; DWORD dwNumberOfProcessors; DWORD dwProcessorType; DWORD dwAllocationGranularity; WORD wProcessorLevel; WORD wProcessorRevision; } SYSTEM_INFO,*LPSYSTEM_INFO; #define FreeModule(hLibModule) FreeLibrary((hLibModule)) #define MakeProcInstance(lpProc,hInstance) (lpProc) #define FreeProcInstance(lpProc) (lpProc) #define GMEM_FIXED 0x0 #define GMEM_MOVEABLE 0x2 #define GMEM_NOCOMPACT 0x10 #define GMEM_NODISCARD 0x20 #define GMEM_ZEROINIT 0x40 #define GMEM_MODIFY 0x80 #define GMEM_DISCARDABLE 0x100 #define GMEM_NOT_BANKED 0x1000 #define GMEM_SHARE 0x2000 #define GMEM_DDESHARE 0x2000 #define GMEM_NOTIFY 0x4000 #define GMEM_LOWER GMEM_NOT_BANKED #define GMEM_VALID_FLAGS 0x7F72 #define GMEM_INVALID_HANDLE 0x8000 #define GHND (GMEM_MOVEABLE | GMEM_ZEROINIT) #define GPTR (GMEM_FIXED | GMEM_ZEROINIT) #define GlobalLRUNewest(h) ((HANDLE)(h)) #define GlobalLRUOldest(h) ((HANDLE)(h)) #define GlobalDiscard(h) GlobalReAlloc((h),0,GMEM_MOVEABLE) #define GMEM_DISCARDED 0x4000 #define GMEM_LOCKCOUNT 0xff typedef struct _MEMORYSTATUS { DWORD dwLength; DWORD dwMemoryLoad; SIZE_T dwTotalPhys; SIZE_T dwAvailPhys; SIZE_T dwTotalPageFile; SIZE_T dwAvailPageFile; SIZE_T dwTotalVirtual; SIZE_T dwAvailVirtual; } MEMORYSTATUS,*LPMEMORYSTATUS; #define LMEM_FIXED 0x0 #define LMEM_MOVEABLE 0x2 #define LMEM_NOCOMPACT 0x10 #define LMEM_NODISCARD 0x20 #define LMEM_ZEROINIT 0x40 #define LMEM_MODIFY 0x80 #define LMEM_DISCARDABLE 0xf00 #define LMEM_VALID_FLAGS 0xf72 #define LMEM_INVALID_HANDLE 0x8000 #define LHND (LMEM_MOVEABLE | LMEM_ZEROINIT) #define LPTR (LMEM_FIXED | LMEM_ZEROINIT) #define NONZEROLHND (LMEM_MOVEABLE) #define NONZEROLPTR (LMEM_FIXED) #define LocalDiscard(h) LocalReAlloc((h),0,LMEM_MOVEABLE) #define LMEM_DISCARDED 0x4000 #define LMEM_LOCKCOUNT 0xff #define DEBUG_PROCESS 0x1 #define DEBUG_ONLY_THIS_PROCESS 0x2 #define CREATE_SUSPENDED 0x4 #define DETACHED_PROCESS 0x8 #define CREATE_NEW_CONSOLE 0x10 #define NORMAL_PRIORITY_CLASS 0x20 #define IDLE_PRIORITY_CLASS 0x40 #define HIGH_PRIORITY_CLASS 0x80 #define REALTIME_PRIORITY_CLASS 0x100 #define CREATE_NEW_PROCESS_GROUP 0x200 #define CREATE_UNICODE_ENVIRONMENT 0x400 #define CREATE_SEPARATE_WOW_VDM 0x800 #define CREATE_SHARED_WOW_VDM 0x1000 #define CREATE_FORCEDOS 0x2000 #define BELOW_NORMAL_PRIORITY_CLASS 0x4000 #define ABOVE_NORMAL_PRIORITY_CLASS 0x8000 #define STACK_SIZE_PARAM_IS_A_RESERVATION 0x10000 #define CREATE_BREAKAWAY_FROM_JOB 0x1000000 #define CREATE_PRESERVE_CODE_AUTHZ_LEVEL 0x2000000 #define CREATE_DEFAULT_ERROR_MODE 0x4000000 #define CREATE_NO_WINDOW 0x8000000 #define PROFILE_USER 0x10000000 #define PROFILE_KERNEL 0x20000000 #define PROFILE_SERVER 0x40000000 #define CREATE_IGNORE_SYSTEM_DEFAULT 0x80000000 #define THREAD_PRIORITY_LOWEST THREAD_BASE_PRIORITY_MIN #define THREAD_PRIORITY_BELOW_NORMAL (THREAD_PRIORITY_LOWEST+1) #define THREAD_PRIORITY_NORMAL 0 #define THREAD_PRIORITY_HIGHEST THREAD_BASE_PRIORITY_MAX #define THREAD_PRIORITY_ABOVE_NORMAL (THREAD_PRIORITY_HIGHEST-1) #define THREAD_PRIORITY_ERROR_RETURN (MAXLONG) #define THREAD_PRIORITY_TIME_CRITICAL THREAD_BASE_PRIORITY_LOWRT #define THREAD_PRIORITY_IDLE THREAD_BASE_PRIORITY_IDLE #define EXCEPTION_DEBUG_EVENT 1 #define CREATE_THREAD_DEBUG_EVENT 2 #define CREATE_PROCESS_DEBUG_EVENT 3 #define EXIT_THREAD_DEBUG_EVENT 4 #define EXIT_PROCESS_DEBUG_EVENT 5 #define LOAD_DLL_DEBUG_EVENT 6 #define UNLOAD_DLL_DEBUG_EVENT 7 #define OUTPUT_DEBUG_STRING_EVENT 8 #define RIP_EVENT 9