dll kernel32 RtlMoveMemory !*Destination !*Source Length
dll kernel32 RtlFillMemory !*Destination Length Fill
dll kernel32 RtlZeroMemory !*Destination Length
dll ntdll #RtlCompareMemory !*Destination !*Source Length
def ANYSIZE_ARRAY    1
type RECT Left Top Right Bottom
type RECTL Left Top Right Bottom
type POINTAPI x y
type POINTL x y
type SIZE cx cy
type POINTS @x @y
type MSG hWnd message wParam lParam time POINT'pt
def DELETE           0x10000
def READ_CONTROL     0x20000
def WRITE_DAC        0x40000
def WRITE_OWNER      0x80000
def SYNCHRONIZE      0x100000
def STANDARD_RIGHTS_READ  (READ_CONTROL)
def STANDARD_RIGHTS_WRITE  (READ_CONTROL)
def STANDARD_RIGHTS_EXECUTE  (READ_CONTROL)
def STANDARD_RIGHTS_REQUIRED  0xF0000
def STANDARD_RIGHTS_ALL  0x1F0000
def SPECIFIC_RIGHTS_ALL  0xFFFF
type SID_IDENTIFIER_AUTHORITY !Value[6]
def SID_REVISION     (1)
def SID_MAX_SUB_AUTHORITIES  (15)
def SID_RECOMMENDED_SUB_AUTHORITIES  (1)
def SidTypeUser      1
def SidTypeGroup     2
def SidTypeDomain    3
def SidTypeAlias     4
def SidTypeWellKnownGroup  5
def SidTypeDeletedAccount  6
def SidTypeInvalid   7
def SidTypeUnknown   8
type SID_AND_ATTRIBUTES Sid Attributes
def SECURITY_NULL_RID  0x0
def SECURITY_WORLD_RID  0x0
def SECURITY_LOCAL_RID  0x0
def SECURITY_CREATOR_OWNER_RID  0x0
def SECURITY_CREATOR_GROUP_RID  0x1
def SECURITY_DIALUP_RID  0x1
def SECURITY_NETWORK_RID  0x2
def SECURITY_BATCH_RID  0x3
def SECURITY_INTERACTIVE_RID  0x4
def SECURITY_SERVICE_RID  0x6
def SECURITY_ANONYMOUS_LOGON_RID  0x7
def SECURITY_LOGON_IDS_RID  0x5
def SECURITY_LOCAL_SYSTEM_RID  0x12
def SECURITY_NT_NON_UNIQUE  0x15
def SECURITY_BUILTIN_DOMAIN_RID  0x20
def DOMAIN_USER_RID_ADMIN  0x1F4
def DOMAIN_USER_RID_GUEST  0x1F5
def DOMAIN_GROUP_RID_ADMINS  0x200
def DOMAIN_GROUP_RID_USERS  0x201
def DOMAIN_GROUP_RID_GUESTS  0x202
def DOMAIN_ALIAS_RID_ADMINS  0x220
def DOMAIN_ALIAS_RID_USERS  0x221
def DOMAIN_ALIAS_RID_GUESTS  0x222
def DOMAIN_ALIAS_RID_POWER_USERS  0x223
def DOMAIN_ALIAS_RID_ACCOUNT_OPS  0x224
def DOMAIN_ALIAS_RID_SYSTEM_OPS  0x225
def DOMAIN_ALIAS_RID_PRINT_OPS  0x226
def DOMAIN_ALIAS_RID_BACKUP_OPS  0x227
def DOMAIN_ALIAS_RID_REPLICATOR  0x228
def SE_GROUP_MANDATORY  0x1
def SE_GROUP_ENABLED_BY_DEFAULT  0x2
def SE_GROUP_ENABLED  0x4
def SE_GROUP_OWNER   0x8
def SE_GROUP_LOGON_ID  0xC0000000
def FILE_BEGIN       0
def FILE_CURRENT     1
def FILE_END         2
def FILE_FLAG_WRITE_THROUGH  0x80000000
def FILE_FLAG_OVERLAPPED  0x40000000
def FILE_FLAG_NO_BUFFERING  0x20000000
def FILE_FLAG_RANDOM_ACCESS  0x10000000
def FILE_FLAG_SEQUENTIAL_SCAN  0x8000000
def FILE_FLAG_DELETE_ON_CLOSE  0x4000000
def FILE_FLAG_BACKUP_SEMANTICS  0x2000000
def FILE_FLAG_POSIX_SEMANTICS  0x1000000
def CREATE_NEW       1
def CREATE_ALWAYS    2
def OPEN_EXISTING    3
def OPEN_ALWAYS      4
def TRUNCATE_EXISTING  5
def PIPE_ACCESS_INBOUND  0x1
def PIPE_ACCESS_OUTBOUND  0x2
def PIPE_ACCESS_DUPLEX  0x3
def PIPE_CLIENT_END  0x0
def PIPE_SERVER_END  0x1
def PIPE_WAIT        0x0
def PIPE_NOWAIT      0x1
def PIPE_READMODE_BYTE  0x0
def PIPE_READMODE_MESSAGE  0x2
def PIPE_TYPE_BYTE   0x0
def PIPE_TYPE_MESSAGE  0x4
def PIPE_UNLIMITED_INSTANCES  255
def SECURITY_CONTEXT_TRACKING  0x40000
def SECURITY_EFFECTIVE_ONLY  0x80000
def SECURITY_SQOS_PRESENT  0x100000
def SECURITY_VALID_SQOS_FLAGS  0x1F0000
type OVERLAPPED Internal InternalHigh offset OffsetHigh hEvent
type SECURITY_ATTRIBUTES nLength lpSecurityDescriptor bInheritHandle
type PROCESS_INFORMATION hProcess hThread dwProcessId dwThreadId
type FILETIME dwLowDateTime dwHighDateTime
type SYSTEMTIME @wYear @wMonth @wDayOfWeek @wDay @wHour @wMinute @wSecond @wMilliseconds
def SP_SERIALCOMM    0x1
def PST_UNSPECIFIED  0x0
def PST_RS232        0x1
def PST_PARALLELPORT  0x2
def PST_RS422        0x3
def PST_RS423        0x4
def PST_RS449        0x5
def PST_FAX          0x21
def PST_SCANNER      0x22
def PST_NETWORK_BRIDGE  0x100
def PST_LAT          0x101
def PST_TCPIP_TELNET  0x102
def PST_X25          0x103
def PCF_DTRDSR       0x1
def PCF_RTSCTS       0x2
def PCF_RLSD         0x4
def PCF_PARITY_CHECK  0x8
def PCF_XONXOFF      0x10
def PCF_SETXCHAR     0x20
def PCF_TOTALTIMEOUTS  0x40
def PCF_INTTIMEOUTS  0x80
def PCF_SPECIALCHARS  0x100
def PCF_16BITMODE    0x200
def SP_PARITY        0x1
def SP_BAUD          0x2
def SP_DATABITS      0x4
def SP_STOPBITS      0x8
def SP_HANDSHAKING   0x10
def SP_PARITY_CHECK  0x20
def SP_RLSD          0x40
def BAUD_075         0x1
def BAUD_110         0x2
def BAUD_134_5       0x4
def BAUD_150         0x8
def BAUD_300         0x10
def BAUD_600         0x20
def BAUD_1200        0x40
def BAUD_1800        0x80
def BAUD_2400        0x100
def BAUD_4800        0x200
def BAUD_7200        0x400
def BAUD_9600        0x800
def BAUD_14400       0x1000
def BAUD_19200       0x2000
def BAUD_38400       0x4000
def BAUD_56K         0x8000
def BAUD_128K        0x10000
def BAUD_115200      0x20000
def BAUD_57600       0x40000
def BAUD_USER        0x10000000
def DATABITS_5       0x1
def DATABITS_6       0x2
def DATABITS_7       0x4
def DATABITS_8       0x8
def DATABITS_16      0x10
def DATABITS_16X     0x20
def STOPBITS_10      0x1
def STOPBITS_15      0x2
def STOPBITS_20      0x4
def PARITY_NONE      0x100
def PARITY_ODD       0x200
def PARITY_EVEN      0x400
def PARITY_MARK      0x800
def PARITY_SPACE     0x1000
type COMMPROP @wPacketLength @wPacketVersion dwServiceMask dwReserved1 dwMaxTxQueue dwMaxRxQueue dwMaxBaud dwProvSubType dwProvCapabilities dwSettableParams dwSettableBaud @wSettableData @wSettableStopParity dwCurrentTxQueue dwCurrentRxQueue dwProvSpec1 dwProvSpec2 @wcProvChar[1]
type COMSTAT fBitFields cbInQue cbOutQue
def DTR_CONTROL_DISABLE  0x0
def DTR_CONTROL_ENABLE  0x1
def DTR_CONTROL_HANDSHAKE  0x2
def RTS_CONTROL_DISABLE  0x0
def RTS_CONTROL_ENABLE  0x1
def RTS_CONTROL_HANDSHAKE  0x2
def RTS_CONTROL_TOGGLE  0x3
type DCB DCBlength BaudRate fBitFields @wReserved @XonLim @XoffLim !ByteSize !Parity !StopBits !XonChar !XoffChar !ErrorChar !EofChar !EvtChar @wReserved1
type COMMTIMEOUTS ReadIntervalTimeout ReadTotalTimeoutMultiplier ReadTotalTimeoutConstant WriteTotalTimeoutMultiplier WriteTotalTimeoutConstant
type SYSTEM_INFO dwOemID dwPageSize lpMinimumApplicationAddress lpMaximumApplicationAddress dwActiveProcessorMask dwNumberOrfProcessors dwProcessorType dwAllocationGranularity dwReserved
def GMEM_FIXED       0x0
def GMEM_MOVEABLE    0x2
def GMEM_NOCOMPACT   0x10
def GMEM_NODISCARD   0x20
def GMEM_ZEROINIT    0x40
def GMEM_MODIFY      0x80
def GMEM_DISCARDABLE  0x100
def GMEM_NOT_BANKED  0x1000
def GMEM_SHARE       0x2000
def GMEM_DDESHARE    0x2000
def GMEM_NOTIFY      0x4000
def GMEM_LOWER       GMEM_NOT_BANKED
def GMEM_VALID_FLAGS  0x7F72
def GMEM_INVALID_HANDLE  0x8000
def GHND             (GMEM_MOVEABLE |  GMEM_ZEROINIT)
def GPTR             (GMEM_FIXED |  GMEM_ZEROINIT)
def GMEM_DISCARDED   0x4000
def GMEM_LOCKCOUNT   0xFF
type MEMORYSTATUS dwLength dwMemoryLoad dwTotalPhys dwAvailPhys dwTotalPageFile dwAvailPageFile dwTotalVirtual dwAvailVirtual
def LMEM_FIXED       0x0
def LMEM_MOVEABLE    0x2
def LMEM_NOCOMPACT   0x10
def LMEM_NODISCARD   0x20
def LMEM_ZEROINIT    0x40
def LMEM_MODIFY      0x80
def LMEM_DISCARDABLE  0xF00
def LMEM_VALID_FLAGS  0xF72
def LMEM_INVALID_HANDLE  0x8000
def LHND             (LMEM_MOVEABLE + LMEM_ZEROINIT)
def LPTR             (LMEM_FIXED + LMEM_ZEROINIT)
def NONZEROLHND      (LMEM_MOVEABLE)
def NONZEROLPTR      (LMEM_FIXED)
def LMEM_DISCARDED   0x4000
def LMEM_LOCKCOUNT   0xFF
def DEBUG_PROCESS    0x1
def DEBUG_ONLY_THIS_PROCESS  0x2
def CREATE_SUSPENDED  0x4
def DETACHED_PROCESS  0x8
def CREATE_NEW_CONSOLE  0x10
def NORMAL_PRIORITY_CLASS  0x20
def IDLE_PRIORITY_CLASS  0x40
def HIGH_PRIORITY_CLASS  0x80
def REALTIME_PRIORITY_CLASS  0x100
def CREATE_NEW_PROCESS_GROUP  0x200
def CREATE_NO_WINDOW  0x8000000
def PROFILE_USER     0x10000000
def PROFILE_KERNEL   0x20000000
def PROFILE_SERVER   0x40000000
def MAXLONG          0x7FFFFFFF
def THREAD_BASE_PRIORITY_MIN  -2
def THREAD_BASE_PRIORITY_MAX  2
def THREAD_BASE_PRIORITY_LOWRT  15
def THREAD_BASE_PRIORITY_IDLE  -15
def THREAD_PRIORITY_LOWEST  THREAD_BASE_PRIORITY_MIN
def THREAD_PRIORITY_BELOW_NORMAL  (THREAD_PRIORITY_LOWEST + 1)
def THREAD_PRIORITY_NORMAL  0
def THREAD_PRIORITY_HIGHEST  THREAD_BASE_PRIORITY_MAX
def THREAD_PRIORITY_ABOVE_NORMAL  (THREAD_PRIORITY_HIGHEST - 1)
def THREAD_PRIORITY_ERROR_RETURN  (MAXLONG)
def THREAD_PRIORITY_TIME_CRITICAL  THREAD_BASE_PRIORITY_LOWRT
def THREAD_PRIORITY_IDLE  THREAD_BASE_PRIORITY_IDLE
def APPLICATION_ERROR_MASK  0x20000000
def ERROR_SEVERITY_SUCCESS  0x0
def ERROR_SEVERITY_INFORMATIONAL  0x40000000
def ERROR_SEVERITY_WARNING  0x80000000
def ERROR_SEVERITY_ERROR  0xC0000000
def MINCHAR          0x80
def MAXCHAR          0x7F
def MINSHORT         0x8000
def MAXSHORT         0x7FFF
def MINLONG          0x80000000
def MAXByte          0xFF
def MAXWORD          0xFFFF
def MAXDWORD         0xFFFFFFFF
def LANG_NEUTRAL     0x0
def LANG_BULGARIAN   0x2
def LANG_CHINESE     0x4
def LANG_CROATIAN    0x1A
def LANG_CZECH       0x5
def LANG_DANISH      0x6
def LANG_DUTCH       0x13
def LANG_ENGLISH     0x9
def LANG_FINNISH     0xB
def LANG_FRENCH      0xC
def LANG_GERMAN      0x7
def LANG_GREEK       0x8
def LANG_HUNGARIAN   0xE
def LANG_ICELANDIC   0xF
def LANG_ITALIAN     0x10
def LANG_JAPANESE    0x11
def LANG_KOREAN      0x12
def LANG_NORWEGIAN   0x14
def LANG_POLISH      0x15
def LANG_PORTUGUESE  0x16
def LANG_ROMANIAN    0x18
def LANG_RUSSIAN     0x19
def LANG_SLOVAK      0x1B
def LANG_SLOVENIAN   0x24
def LANG_SPANISH     0xA
def LANG_SWEDISH     0x1D
def LANG_TURKISH     0x1F
def SUBLANG_NEUTRAL  0x0
def SUBLANG_DEFAULT  0x1
def SUBLANG_SYS_DEFAULT  0x2
def SUBLANG_CHINESE_TRADITIONAL  0x1
def SUBLANG_CHINESE_SIMPLIFIED  0x2
def SUBLANG_CHINESE_HONGKONG  0x3
def SUBLANG_CHINESE_SINGAPORE  0x4
def SUBLANG_DUTCH    0x1
def SUBLANG_DUTCH_BELGIAN  0x2
def SUBLANG_ENGLISH_US  0x1
def SUBLANG_ENGLISH_UK  0x2
def SUBLANG_ENGLISH_AUS  0x3
def SUBLANG_ENGLISH_CAN  0x4
def SUBLANG_ENGLISH_NZ  0x5
def SUBLANG_ENGLISH_EIRE  0x6
def SUBLANG_FRENCH   0x1
def SUBLANG_FRENCH_BELGIAN  0x2
def SUBLANG_FRENCH_CANADIAN  0x3
def SUBLANG_FRENCH_SWISS  0x4
def SUBLANG_GERMAN   0x1
def SUBLANG_GERMAN_SWISS  0x2
def SUBLANG_GERMAN_AUSTRIAN  0x3
def SUBLANG_ITALIAN  0x1
def SUBLANG_ITALIAN_SWISS  0x2
def SUBLANG_NORWEGIAN_BOKMAL  0x1
def SUBLANG_NORWEGIAN_NYNORSK  0x2
def SUBLANG_PORTUGUESE  0x2
def SUBLANG_PORTUGUESE_BRAZILIAN  0x1
def SUBLANG_SPANISH  0x1
def SUBLANG_SPANISH_MEXICAN  0x2
def SUBLANG_SPANISH_MODERN  0x3
def SORT_DEFAULT     0x0
def SORT_JAPANESE_XJIS  0x0
def SORT_JAPANESE_UNICODE  0x1
def SORT_CHINESE_BIG5  0x0
def SORT_CHINESE_UNICODE  0x1
def SORT_KOREAN_KSC  0x0
def SORT_KOREAN_UNICODE  0x1
def FILE_READ_DATA   (0x1)
def FILE_LIST_DIRECTORY  (0x1)
def FILE_WRITE_DATA  (0x2)
def FILE_ADD_FILE    (0x2)
def FILE_APPEND_DATA  (0x4)
def FILE_ADD_SUBDIRECTORY  (0x4)
def FILE_CREATE_PIPE_INSTANCE  (0x4)
def FILE_READ_EA     (0x8)
def FILE_READ_PROPERTIES  FILE_READ_EA
def FILE_WRITE_EA    (0x10)
def FILE_WRITE_PROPERTIES  FILE_WRITE_EA
def FILE_EXECUTE     (0x20)
def FILE_TRAVERSE    (0x20)
def FILE_DELETE_CHILD  (0x40)
def FILE_READ_ATTRIBUTES  (0x80)
def FILE_WRITE_ATTRIBUTES  (0x100)
def FILE_ALL_ACCESS  (STANDARD_RIGHTS_REQUIRED |  SYNCHRONIZE |  0x1FF)
def FILE_GENERIC_READ  (STANDARD_RIGHTS_READ |  FILE_READ_DATA |  FILE_READ_ATTRIBUTES |  FILE_READ_EA |  SYNCHRONIZE)
def FILE_GENERIC_WRITE  (STANDARD_RIGHTS_WRITE |  FILE_WRITE_DATA |  FILE_WRITE_ATTRIBUTES |  FILE_WRITE_EA |  FILE_APPEND_DATA |  SYNCHRONIZE)
def FILE_GENERIC_EXECUTE  (STANDARD_RIGHTS_EXECUTE |  FILE_READ_ATTRIBUTES |  FILE_EXECUTE |  SYNCHRONIZE)
def FILE_SHARE_READ  0x1
def FILE_SHARE_WRITE  0x2
def FILE_ATTRIBUTE_READONLY  0x1
def FILE_ATTRIBUTE_HIDDEN  0x2
def FILE_ATTRIBUTE_SYSTEM  0x4
def FILE_ATTRIBUTE_DIRECTORY  0x10
def FILE_ATTRIBUTE_ARCHIVE  0x20
def FILE_ATTRIBUTE_NORMAL  0x80
def FILE_ATTRIBUTE_TEMPORARY  0x100
def FILE_ATTRIBUTE_COMPRESSED  0x800
def FILE_NOTIFY_CHANGE_FILE_NAME  0x1
def FILE_NOTIFY_CHANGE_DIR_NAME  0x2
def FILE_NOTIFY_CHANGE_ATTRIBUTES  0x4
def FILE_NOTIFY_CHANGE_SIZE  0x8
def FILE_NOTIFY_CHANGE_LAST_WRITE  0x10
def FILE_NOTIFY_CHANGE_SECURITY  0x100
def MAILSLOT_NO_MESSAGE  (-1)
def MAILSLOT_WAIT_FOREVER  (-1)
def FILE_CASE_SENSITIVE_SEARCH  0x1
def FILE_CASE_PRESERVED_NAMES  0x2
def FILE_UNICODE_ON_DISK  0x4
def FILE_PERSISTENT_ACLS  0x8
def FILE_FILE_COMPRESSION  0x10
def FILE_VOLUME_IS_COMPRESSED  0x8000
def IO_COMPLETION_MODIFY_STATE  0x2
def IO_COMPLETION_ALL_ACCESS  (STANDARD_RIGHTS_REQUIRED |  SYNCHRONIZE |  0x3)
def DUPLICATE_CLOSE_SOURCE  0x1
def DUPLICATE_SAME_ACCESS  0x2
def ACCESS_SYSTEM_SECURITY  0x1000000
def MAXIMUM_ALLOWED  0x2000000
def GENERIC_READ     0x80000000
def GENERIC_WRITE    0x40000000
def GENERIC_EXECUTE  0x20000000
def GENERIC_ALL      0x10000000
type GENERIC_MAPPING GenericRead GenericWrite GenericExecute GenericAll
type LUID LowPart HighPart
type LUID_AND_ATTRIBUTES LUID'pLuid Attributes
def ACL_REVISION     (2)
def ACL_REVISION1    (1)
def ACL_REVISION2    (2)
type ACL !AclRevision !Sbz1 @AclSize @AceCount @Sbz2
type ACE_HEADER !AceType !AceFlags AceSize
def ACCESS_ALLOWED_ACE_TYPE  0x0
def ACCESS_DENIED_ACE_TYPE  0x1
def SYSTEM_AUDIT_ACE_TYPE  0x2
def SYSTEM_ALARM_ACE_TYPE  0x3
def OBJECT_INHERIT_ACE  0x1
def CONTAINER_INHERIT_ACE  0x2
def NO_PROPAGATE_INHERIT_ACE  0x4
def INHERIT_ONLY_ACE  0x8
def VALID_INHERIT_FLAGS  0xF
def SUCCESSFUL_ACCESS_ACE_FLAG  0x40
def FAILED_ACCESS_ACE_FLAG  0x80
type ACCESS_ALLOWED_ACE ACE_HEADER'Header Mask SidStart
type ACCESS_DENIED_ACE ACE_HEADER'Header Mask SidStart
type SYSTEM_AUDIT_ACE ACE_HEADER'Header Mask SidStart
type SYSTEM_ALARM_ACE ACE_HEADER'Header Mask SidStart
def AclRevisionInformation  1
def AclSizeInformation  2
type ACL_REVISION_INFORMATION AclRevision
type ACL_SIZE_INFORMATION AceCount AclBytesInUse AclBytesFree
def SECURITY_DESCRIPTOR_REVISION  (1)
def SECURITY_DESCRIPTOR_REVISION1  (1)
def SECURITY_DESCRIPTOR_MIN_LENGTH  (20)
def SE_OWNER_DEFAULTED  0x1
def SE_GROUP_DEFAULTED  0x2
def SE_DACL_PRESENT  0x4
def SE_DACL_DEFAULTED  0x8
def SE_SACL_PRESENT  0x10
def SE_SACL_DEFAULTED  0x20
def SE_SELF_RELATIVE  0x8000
type SECURITY_DESCRIPTOR !Revision !Sbz1 Control Owner Group ACL'Sacl ACL'Dacl
def SE_PRIVILEGE_ENABLED_BY_DEFAULT  0x1
def SE_PRIVILEGE_ENABLED  0x2
def SE_PRIVILEGE_USED_FOR_ACCESS  0x80000000
def PRIVILEGE_SET_ALL_NECESSARY  (1)
type PRIVILEGE_SET PrivilegeCount Control LUID_AND_ATTRIBUTES'Privilege[ANYSIZE_ARRAY]
def SE_CREATE_TOKEN_NAME  "SeCreateTokenPrivilege"
def SE_ASSIGNPRIMARYTOKEN_NAME  "SeAssignPrimaryTokenPrivilege"
def SE_LOCK_MEMORY_NAME  "SeLockMemoryPrivilege"
def SE_INCREASE_QUOTA_NAME  "SeIncreaseQuotaPrivilege"
def SE_UNSOLICITED_INPUT_NAME  "SeUnsolicitedInputPrivilege"
def SE_MACHINE_ACCOUNT_NAME  "SeMachineAccountPrivilege"
def SE_TCB_NAME      "SeTcbPrivilege"
def SE_SECURITY_NAME  "SeSecurityPrivilege"
def SE_TAKE_OWNERSHIP_NAME  "SeTakeOwnershipPrivilege"
def SE_LOAD_DRIVER_NAME  "SeLoadDriverPrivilege"
def SE_SYSTEM_PROFILE_NAME  "SeSystemProfilePrivilege"
def SE_SYSTEMTIME_NAME  "SeSystemtimePrivilege"
def SE_PROF_SINGLE_PROCESS_NAME  "SeProfileSingleProcessPrivilege"
def SE_INC_BASE_PRIORITY_NAME  "SeIncreaseBasePriorityPrivilege"
def SE_CREATE_PAGEFILE_NAME  "SeCreatePagefilePrivilege"
def SE_CREATE_PERMANENT_NAME  "SeCreatePermanentPrivilege"
def SE_BACKUP_NAME   "SeBackupPrivilege"
def SE_RESTORE_NAME  "SeRestorePrivilege"
def SE_SHUTDOWN_NAME  "SeShutdownPrivilege"
def SE_DEBUG_NAME    "SeDebugPrivilege"
def SE_AUDIT_NAME    "SeAuditPrivilege"
def SE_SYSTEM_ENVIRONMENT_NAME  "SeSystemEnvironmentPrivilege"
def SE_CHANGE_NOTIFY_NAME  "SeChangeNotifyPrivilege"
def SE_REMOTE_SHUTDOWN_NAME  "SeRemoteShutdownPrivilege"
def SecurityAnonymous  1
def SecurityIdentification  2
def REG_NONE         0
def REG_SZ           1
def REG_EXPAND_SZ    2
def REG_BINARY       3
def REG_DWORD        4
def REG_DWORD_LITTLE_ENDIAN  4
def REG_DWORD_BIG_ENDIAN  5
def REG_LINK         6
def REG_MULTI_SZ     7
def REG_RESOURCE_LIST  8
def REG_FULL_RESOURCE_DESCRIPTOR  9
def REG_RESOURCE_REQUIREMENTS_LIST  10
def REG_CREATED_NEW_KEY  0x1
def REG_OPENED_EXISTING_KEY  0x2
def REG_WHOLE_HIVE_VOLATILE  0x1
def REG_REFRESH_HIVE  0x2
def REG_NOTIFY_CHANGE_NAME  0x1
def REG_NOTIFY_CHANGE_ATTRIBUTES  0x2
def REG_NOTIFY_CHANGE_LAST_SET  0x4
def REG_NOTIFY_CHANGE_SECURITY  0x8
def REG_LEGAL_CHANGE_FILTER  (REG_NOTIFY_CHANGE_NAME |  REG_NOTIFY_CHANGE_ATTRIBUTES |  REG_NOTIFY_CHANGE_LAST_SET |  REG_NOTIFY_CHANGE_SECURITY)
def REG_LEGAL_OPTION  (REG_OPTION_RESERVED |  REG_OPTION_NON_VOLATILE |  REG_OPTION_VOLATILE |  REG_OPTION_CREATE_LINK |  REG_OPTION_BACKUP_RESTORE)
def REG_OPTION_RESERVED  0
def REG_OPTION_NON_VOLATILE  0
def REG_OPTION_VOLATILE  1
def REG_OPTION_CREATE_LINK  2
def REG_OPTION_BACKUP_RESTORE  4
def READ_CONTROL     0x20000
def KEY_QUERY_VALUE  0x1
def KEY_SET_VALUE    0x2
def KEY_CREATE_SUB_KEY  0x4
def KEY_ENUMERATE_SUB_KEYS  0x8
def KEY_NOTIFY       0x10
def KEY_CREATE_LINK  0x20
def KEY_READ         ((STANDARD_RIGHTS_READ |  KEY_QUERY_VALUE |  KEY_ENUMERATE_SUB_KEYS |  KEY_NOTIFY)  &  ( ~  SYNCHRONIZE))
def KEY_WRITE        ((STANDARD_RIGHTS_WRITE |  KEY_SET_VALUE |  KEY_CREATE_SUB_KEY)  &  ( ~  SYNCHRONIZE))
def KEY_EXECUTE      (KEY_READ)
def KEY_ALL_ACCESS   ((STANDARD_RIGHTS_ALL |  KEY_QUERY_VALUE |  KEY_SET_VALUE |  KEY_CREATE_SUB_KEY |  KEY_ENUMERATE_SUB_KEYS |  KEY_NOTIFY |  KEY_CREATE_LINK)  &  ( ~  SYNCHRONIZE))
def STANDARD_RIGHTS_READ  (READ_CONTROL)
def STANDARD_RIGHTS_WRITE  (READ_CONTROL)
def KEY_EXECUTE      ((KEY_READ)  &  ( ~  SYNCHRONIZE))
def EXCEPTION_DEBUG_EVENT  1
def CREATE_THREAD_DEBUG_EVENT  2
def CREATE_PROCESS_DEBUG_EVENT  3
def EXIT_THREAD_DEBUG_EVENT  4
def EXIT_PROCESS_DEBUG_EVENT  5
def LOAD_DLL_DEBUG_EVENT  6
def UNLOAD_DLL_DEBUG_EVENT  7
def OUTPUT_DEBUG_STRING_EVENT  8
def RIP_EVENT        9
def EXCEPTION_MAXIMUM_PARAMETERS  15
type EXCEPTION_RECORD ExceptionCode ExceptionFlags pExceptionRecord ExceptionAddress NumberParameters ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS]
type EXCEPTION_DEBUG_INFO EXCEPTION_RECORD'pExceptionRecord dwFirstChance
type CREATE_THREAD_DEBUG_INFO hThread lpThreadLocalBase lpStartAddress
type CREATE_PROCESS_DEBUG_INFO hFile hProcess hThread lpBaseOfImage dwDebugInfoFileOffset nDebugInfoSize lpThreadLocalBase lpStartAddress lpImageName @fUnicode
type EXIT_THREAD_DEBUG_INFO dwExitCode
type EXIT_PROCESS_DEBUG_INFO dwExitCode
type LOAD_DLL_DEBUG_INFO hFile lpBaseOfDll dwDebugInfoFileOffset nDebugInfoSize lpImageName @fUnicode
type UNLOAD_DLL_DEBUG_INFO lpBaseOfDll
type OUTPUT_DEBUG_STRING_INFO $lpDebugStringData @fUnicode @nDebugStringLength
type RIP_INFO dwError dwType
def DRIVE_REMOVABLE  2
def DRIVE_FIXED      3
def DRIVE_REMOTE     4
def DRIVE_CDROM      5
def DRIVE_RAMDISK    6
def FILE_TYPE_UNKNOWN  0x0
def FILE_TYPE_DISK   0x1
def FILE_TYPE_CHAR   0x2
def FILE_TYPE_PIPE   0x3
def FILE_TYPE_REMOTE  0x8000
def STD_INPUT_HANDLE  -10
def STD_OUTPUT_HANDLE  -11
def STD_ERROR_HANDLE  -12
def NOPARITY         0
def ODDPARITY        1
def EVENPARITY       2
def MARKPARITY       3
def SPACEPARITY      4
def ONESTOPBIT       0
def ONE5STOPBITS     1
def TWOSTOPBITS      2
def IGNORE           0
def INFINITE         -1
def CBR_110          110
def CBR_300          300
def CBR_600          600
def CBR_1200         1200
def CBR_2400         2400
def CBR_4800         4800
def CBR_9600         9600
def CBR_14400        14400
def CBR_19200        19200
def CBR_38400        38400
def CBR_56000        56000
def CBR_57600        57600
def CBR_115200       115200
def CBR_128000       128000
def CBR_256000       256000
def CE_RXOVER        0x1
def CE_OVERRUN       0x2
def CE_RXPARITY      0x4
def CE_FRAME         0x8
def CE_BREAK         0x10
def CE_TXFULL        0x100
def CE_PTO           0x200
def CE_IOE           0x400
def CE_DNS           0x800
def CE_OOP           0x1000
def CE_MODE          0x8000
def IE_BADID         (-1)
def IE_OPEN          (-2)
def IE_NOPEN         (-3)
def IE_MEMORY        (-4)
def IE_DEFAULT       (-5)
def IE_HARDWARE      (-10)
def IE_BYTESIZE      (-11)
def IE_BAUDRATE      (-12)
def EV_RXCHAR        0x1
def EV_RXFLAG        0x2
def EV_TXEMPTY       0x4
def EV_CTS           0x8
def EV_DSR           0x10
def EV_RLSD          0x20
def EV_BREAK         0x40
def EV_ERR           0x80
def EV_RING          0x100
def EV_PERR          0x200
def EV_RX80FULL      0x400
def EV_EVENT1        0x800
def EV_EVENT2        0x1000
def SETXOFF          1
def SETXON           2
def SETRTS           3
def CLRRTS           4
def SETDTR           5
def CLRDTR           6
def RESETDEV         7
def SETBREAK         8
def CLRBREAK         9
def PURGE_TXABORT    0x1
def PURGE_RXABORT    0x2
def PURGE_TXCLEAR    0x4
def PURGE_RXCLEAR    0x8
def LPTx             0x80
def MS_CTS_ON        0x10
def MS_DSR_ON        0x20
def MS_RING_ON       0x40
def MS_RLSD_ON       0x80
def S_QUEUEEMPTY     0
def S_THRESHOLD      1
def S_ALLTHRESHOLD   2
def S_NORMAL         0
def S_LEGATO         1
def S_STACCATO       2
def S_PERIOD512      0
def S_PERIOD1024     1
def S_PERIOD2048     2
def S_PERIODVOICE    3
def S_WHITE512       4
def S_WHITE1024      5
def S_WHITE2048      6
def S_WHITEVOICE     7
def S_SERDVNA        (-1)
def S_SEROFM         (-2)
def S_SERMACT        (-3)
def S_SERQFUL        (-4)
def S_SERBDNT        (-5)
def S_SERDLN         (-6)
def S_SERDCC         (-7)
def S_SERDTP         (-8)
def S_SERDVL         (-9)
def S_SERDMD         (-10)
def S_SERDSH         (-11)
def S_SERDPT         (-12)
def S_SERDFQ         (-13)
def S_SERDDR         (-14)
def S_SERDSR         (-15)
def S_SERDST         (-16)
def NMPWAIT_WAIT_FOREVER  0xFFFF
def NMPWAIT_NOWAIT   0x1
def NMPWAIT_USE_DEFAULT_WAIT  0x0
def FS_CASE_IS_PRESERVED  FILE_CASE_PRESERVED_NAMES
def FS_CASE_SENSITIVE  FILE_CASE_SENSITIVE_SEARCH
def FS_UNICODE_STORED_ON_DISK  FILE_UNICODE_ON_DISK
def FS_PERSISTENT_ACLS  FILE_PERSISTENT_ACLS
def SECTION_QUERY    0x1
def SECTION_MAP_WRITE  0x2
def SECTION_MAP_READ  0x4
def SECTION_MAP_EXECUTE  0x8
def SECTION_EXTEND_SIZE  0x10
def SECTION_ALL_ACCESS  (STANDARD_RIGHTS_REQUIRED |  SECTION_QUERY |  SECTION_MAP_WRITE |  SECTION_MAP_READ |  SECTION_MAP_EXECUTE |  SECTION_EXTEND_SIZE)
def FILE_MAP_COPY    SECTION_QUERY
def FILE_MAP_WRITE   SECTION_MAP_WRITE
def FILE_MAP_READ    SECTION_MAP_READ
def FILE_MAP_ALL_ACCESS  SECTION_ALL_ACCESS
def OF_READ          0x0
def OF_WRITE         0x1
def OF_READWRITE     0x2
def OF_SHARE_COMPAT  0x0
def OF_SHARE_EXCLUSIVE  0x10
def OF_SHARE_DENY_WRITE  0x20
def OF_SHARE_DENY_READ  0x30
def OF_SHARE_DENY_NONE  0x40
def OF_PARSE         0x100
def OF_DELETE        0x200
def OF_VERIFY        0x400
def OF_CANCEL        0x800
def OF_CREATE        0x1000
def OF_PROMPT        0x2000
def OF_EXIST         0x4000
def OF_REOPEN        0x8000
def OFS_MAXPATHNAME  128
type OFSTRUCT !cBytes !fFixedDisk @nErrCode @Reserved1 @Reserved2 !szPathName[OFS_MAXPATHNAME]
dll kernel32 #InterlockedIncrement *lpAddend
dll kernel32 #InterlockedDecrement *lpAddend
dll kernel32 #InterlockedExchange *Target Value
dll kernel32 #GetModuleFileName hModule $lpFileName nSize
dll kernel32 #GetModuleHandle $lpModuleName
dll kernel32 #CreateProcess $lpApplicationName $lpCommandLine SECURITY_ATTRIBUTES*lpProcessAttributes SECURITY_ATTRIBUTES*lpThreadAttributes bInheritHandles dwCreationFlags !*lpEnvironment $lpCurrentDriectory STARTUPINFO*lpStartupInfo PROCESS_INFORMATION*lpProcessInformation
dll kernel32 #SetProcessShutdownParameters dwLevel dwFlags
dll kernel32 #GetProcessShutdownParameters *lpdwLevel *lpdwFlags
dll kernel32 FatalAppExit uAction $lpMessageText
dll kernel32 GetStartupInfo STARTUPINFO*lpStartupInfo
dll kernel32 #GetCommandLineW
dll kernel32 #GetEnvironmentVariable $lpName $lpBuffer nSize
dll kernel32 #SetEnvironmentVariable $lpName $lpValue
dll kernel32 #ExpandEnvironmentStrings $lpSrc $lpDst nSize
dll kernel32 #LoadLibrary $lpLibFileName
dll kernel32 #LoadLibraryEx $lpLibFileName hFile dwFlags
def DONT_RESOLVE_DLL_REFERENCES  0x1
def LOAD_LIBRARY_AS_DATAFILE  0x2
def LOAD_WITH_ALTERED_SEARCH_PATH  0x8
dll kernel32 #LoadModule $lpModuleName !*lpParameterBlock
dll kernel32 #FreeLibrary hLibModule
dll kernel32 #WinExec $lpCmdLine nCmdShow
dll kernel32 DebugBreak
dll kernel32 #ContinueDebugEvent dwProcessId dwThreadId dwContinueStatus
dll kernel32 #DebugActiveProcess dwProcessId
type CRITICAL_SECTION dummy
dll kernel32 InitializeCriticalSection CRITICAL_SECTION*lpCriticalSection
dll kernel32 EnterCriticalSection CRITICAL_SECTION*lpCriticalSection
dll kernel32 LeaveCriticalSection CRITICAL_SECTION*lpCriticalSection
dll kernel32 DeleteCriticalSection CRITICAL_SECTION*lpCriticalSection
dll kernel32 #SetEvent hEvent
dll kernel32 #ResetEvent hEvent
dll kernel32 #PulseEvent hEvent
dll kernel32 #ReleaseSemaphore hSemaphore lReleaseCount *lpPreviousCount
dll kernel32 #ReleaseMutex hMutex
dll kernel32 #WaitForSingleObject hHandle dwMilliseconds
dll kernel32 #WaitForMultipleObjects nCount *lpHandles bWaitAll dwMilliseconds
dll kernel32 Sleep dwMilliseconds
dll kernel32 OutputDebugString $lpOutputString
dll kernel32 #GetVersion
dll kernel32 #OpenFile $lpFileName OFSTRUCT*lpReOpenBuff wStyle
def TF_FORCEDRIVE    0x80
dll kernel32 #GetTempFileName $lpszPath $lpPrefixString wUnique $lpTempFileName
dll kernel32 #SetHandleCount wNumber
dll kernel32 #GetLogicalDrives
dll kernel32 #LockFile hFile dwFileOffsetLow dwFileOffsetHigh nNumberOfBytesToLockLow nNumberOfBytesToLockHigh
dll kernel32 #UnlockFile hFile dwFileOffsetLow dwFileOffsetHigh nNumberOfBytesToUnlockLow nNumberOfBytesToUnlockHigh
dll kernel32 #LockFileEx hFile dwFlags dwReserved nNumberOfBytesToLockLow nNumberOfBytesToLockHigh OVERLAPPED*lpOverlapped
def LOCKFILE_FAIL_IMMEDIATELY  0x1
def LOCKFILE_EXCLUSIVE_LOCK  0x2
dll kernel32 #UnlockFileEx hFile dwReserved nNumberOfBytesToUnlockLow nNumberOfBytesToUnlockHigh OVERLAPPED*lpOverlapped
type BY_HANDLE_FILE_INFORMATION dwFileAttributes FILETIME'ftCreationTime FILETIME'ftLastAccessTime FILETIME'ftLastWriteTime dwVolumeSerialNumber nFileSizeHigh nFileSizeLow nNumberOfLinks nFileIndexHigh nFileIndexLow
dll kernel32 #GetFileInformationByHandle hFile BY_HANDLE_FILE_INFORMATION*lpFileInformation
dll kernel32 #GetFileType hFile
dll kernel32 #GetFileSize hFile *lpFileSizeHigh
dll kernel32 #GetStdHandle nStdHandle
dll kernel32 #SetStdHandle nStdHandle nHandle
dll kernel32 #WriteFile hFile !*lpBuffer nNumberOfBytesToWrite *lpNumberOfBytesWritten OVERLAPPED*lpOverlapped
dll kernel32 #ReadFile hFile !*lpBuffer nNumberOfBytesToRead *lpNumberOfBytesRead OVERLAPPED*lpOverlapped
dll kernel32 #FlushFileBuffers hFile
dll kernel32 #DeviceIoControl hDevice dwIoControlCode !*lpInBuffer nInBufferSize !*lpOutBuffer nOutBufferSize *lpBytesReturned OVERLAPPED*lpOverlapped
dll kernel32 #SetEndOfFile hFile
dll kernel32 #SetFilePointer hFile lDistanceToMove *lpDistanceToMoveHigh dwMoveMethod
dll kernel32 #FindClose hFindFile
dll kernel32 #GetFileTime hFile FILETIME*lpCreationTime FILETIME*lpLastAccessTime FILETIME*lpLastWriteTime
dll kernel32 #SetFileTime hFile FILETIME*lpCreationTime FILETIME*lpLastAccessTime FILETIME*lpLastWriteTime
dll kernel32 #CloseHandle hObject
dll kernel32 #DuplicateHandle hSourceProcessHandle hSourceHandle hTargetProcessHandle *lpTargetHandle dwDesiredAccess bInheritHandle dwOptions
dll kernel32 #GetDriveType $nDrive
dll kernel32 #GlobalAlloc wFlags dwBytes
dll kernel32 #GlobalFree hMem
dll kernel32 #GlobalHandle !*wMem
dll kernel32 #GlobalLock hMem
dll kernel32 #GlobalReAlloc hMem dwBytes wFlags
dll kernel32 #GlobalSize hMem
dll kernel32 #GlobalUnlock hMem
dll kernel32 #GlobalFlags hMem
dll kernel32 GlobalMemoryStatus MEMORYSTATUS*lpBuffer
def LNOTIFY_OUTOFMEM  0
def LNOTIFY_MOVE     1
def LNOTIFY_DISCARD  2
dll kernel32 #LocalAlloc wFlags wBytes
dll kernel32 #LocalFree hMem
dll kernel32 #LocalHandle !*wMem
dll kernel32 #LocalLock hMem
dll kernel32 #LocalReAlloc hMem wBytes wFlags
dll kernel32 #LocalSize hMem
dll kernel32 #LocalUnlock hMem
dll kernel32 #LocalFlags hMem
type MEMORY_BASIC_INFORMATION BaseAddress AllocationBase AllocationProtect RegionSize State Protect lType
dll kernel32 #FlushInstructionCache hProcess !*lpBaseAddress dwSize
dll kernel32 #VirtualAlloc !*lpAddress dwSize flAllocationType flProtect
dll kernel32 #VirtualFree !*lpAddress dwSize dwFreeType
dll kernel32 #VirtualProtect !*lpAddress dwSize flNewProtect *lpflOldProtect
dll kernel32 #VirtualQuery !*lpAddress MEMORY_BASIC_INFORMATION*lpBuffer dwLength
dll kernel32 #VirtualProtectEx hProcess !*lpAddress dwSize flNewProtect *lpflOldProtect
dll kernel32 #VirtualQueryEx hProcess !*lpAddress MEMORY_BASIC_INFORMATION*lpBuffer dwLength
dll kernel32 #HeapCreate flOptions dwInitialSize dwMaximumSize
dll kernel32 #HeapDestroy hHeap
dll kernel32 #HeapAlloc hHeap dwFlags dwBytes
dll kernel32 #HeapReAlloc hHeap dwFlags !*lpMem dwBytes
dll kernel32 #HeapFree hHeap dwFlags !*lpMem
dll kernel32 #HeapSize hHeap dwFlags !*lpMem
dll kernel32 #GetProcessHeap
dll kernel32 #GetProcessTimes hProcess FILETIME*lpCreationTime FILETIME*lpExitTime FILETIME*lpKernelTime FILETIME*lpUserTime
dll kernel32 #OpenProcess dwDesiredAccess bInheritHandle dwProcessId
dll kernel32 #GetCurrentProcess
dll kernel32 #GetCurrentProcessId
dll kernel32 ExitProcess uExitCode
dll kernel32 #TerminateProcess hProcess uExitCode
dll kernel32 #GetExitCodeProcess hProcess *lpExitCode
dll kernel32 #GetLastError
dll kernel32 SetLastError dwErrCode
def SLE_ERROR        0x1
def SLE_MINORERROR   0x2
def SLE_WARNING      0x3
dll user32 SetLastErrorEx dwErrCode dwType
dll kernel32 #GetOverlappedResult hFile OVERLAPPED*lpOverlapped *lpNumberOfBytesTransferred bWait
def SEM_FAILCRITICALERRORS  0x1
def SEM_NOGPFAULTERRORBOX  0x2
def SEM_NOOPENFILEERRORBOX  0x8000
dll user32 SetDebugErrorLevel dwLevel
dll kernel32 #SetErrorMode wMode
dll kernel32 #ReadProcessMemory hProcess !*lpBaseAddress !*lpBuffer nSize *lpNumberOfBytesWritten
dll kernel32 #WriteProcessMemory hProcess !*lpBaseAddress !*lpBuffer nSize *lpNumberOfBytesWritten
dll kernel32 #GetThreadContext hThread CONTEXT*lpContext
dll kernel32 #SetThreadContext hThread CONTEXT*lpContext
dll kernel32 #SuspendThread hThread
dll kernel32 #ResumeThread hThread
dll kernel32 #FindResource hInstance $lpName $lpType
dll kernel32 #FindResourceEx hModule $lpType $lpName wLanguage
dll kernel32 #BeginUpdateResource $pFileName bDeleteExistingResources
dll kernel32 #UpdateResource hUpdate $lpType $lpName wLanguage !*lpData cbData
dll kernel32 #EndUpdateResource hUpdate fDiscard
dll kernel32 #LoadResource hInstance hResInfo
dll kernel32 #LockResource hResData
dll kernel32 #SizeofResource hInstance hResInfo
def RT_CURSOR        1
def RT_BITMAP        2
def RT_ICON          3
def RT_MENU          4
def RT_DIALOG        5
def RT_STRING        6
def RT_FONTDIR       7
def RT_FONT          8
def RT_ACCELERATOR   9
def RT_RCDATA        10
def RT_MESSAGETABLE  11
def RT_GROUP_CURSOR  12
def RT_GROUP_ICON    14
def RT_VERSION       16
def RT_DLGINCLUDE    17
def RT_PLUGPLAY      19
def RT_VXD           20
def RT_ANICURSOR     21
def RT_ANIICON       22
def RT_HTML          23
dll kernel32 #InitAtomTable nSize
dll kernel32 #AddAtom $lpString
dll kernel32 #DeleteAtom @nAtom
dll kernel32 #FindAtom $lpString
dll kernel32 #GetAtomName @nAtom $lpBuffer nSize
dll kernel32 #GlobalAddAtom $lpString
dll kernel32 #GlobalDeleteAtom @nAtom
dll kernel32 #GlobalFindAtom $lpString
dll kernel32 #GlobalGetAtomName @nAtom $lpBuffer nSize
dll kernel32 #GetProfileInt $lpAppName $lpKeyName nDefault
dll kernel32 #GetProfileString $lpAppName $lpKeyName $lpDefault $lpReturnedString nSize
dll kernel32 #WriteProfileString $lpszSection $lpszKeyName $lpszString
dll kernel32 #GetProfileSection $lpAppName $lpReturnedString nSize
dll kernel32 #WriteProfileSection $lpAppName $lpString
dll kernel32 #GetPrivateProfileInt $lpApplicationName $lpKeyName nDefault $lpFileName
dll kernel32 #GetPrivateProfileString $lpApplicationName !*lpKeyName $lpDefault $lpReturnedString nSize $lpFileName
dll kernel32 #WritePrivateProfileString $lpApplicationName !*lpKeyName !*lpString $lpFileName
dll kernel32 #GetPrivateProfileSection $lpAppName $lpReturnedString nSize $lpFileName
dll kernel32 #WritePrivateProfileSection $lpAppName $lpString $lpFileName
dll kernel32 #GetWindowsDirectory $lpBuffer nSize
dll kernel32 #GetSystemDirectory $lpBuffer nSize
dll kernel32 #GetTempPath nBufferLength $lpBuffer
dll kernel32 #SetCurrentDirectory $lpPathName
dll kernel32 #GetCurrentDirectory nBufferLength $lpBuffer
dll kernel32 #GetDiskFreeSpace $lpRootPathName *lpSectorsPerCluster *lpBytesPerSector *lpNumberOfFreeClusters *lpTotalNumberOfClusters
dll kernel32 #CreateDirectory $lpPathName SECURITY_ATTRIBUTES*lpSecurityAttributes
dll kernel32 #CreateDirectoryEx $lpTemplateDirectory $lpNewDirectory SECURITY_ATTRIBUTES*lpSecurityAttributes
dll kernel32 #RemoveDirectory $lpPathName
dll kernel32 #GetFullPathName $lpFileName nBufferLength $lpBuffer $lpFilePart
def DDD_RAW_TARGET_PATH  0x1
def DDD_REMOVE_DEFINITION  0x2
def DDD_EXACT_MATCH_ON_REMOVE  0x4
def MAX_PATH         260
dll kernel32 #DefineDosDevice dwFlags $lpDeviceName $lpTargetPath
dll kernel32 #QueryDosDevice $lpDeviceName $lpTargetPath ucchMax
dll kernel32 #CreateFile $lpFileName dwDesiredAccess dwShareMode SECURITY_ATTRIBUTES*lpSecurityAttributes dwCreationDisposition dwFlagsAndAttributes hTemplateFile
dll kernel32 #SetFileAttributes $lpFileName dwFileAttributes
dll kernel32 #GetFileAttributes $lpFileName
dll kernel32 #GetFileAttributesEx $lpFileName fInfoLevelId !*lpFileInformation
dll kernel32 #DeleteFile $lpFileName
dll kernel32 #FindFirstFile $lpFileName WIN32_FIND_DATA*lpFindFileData
dll kernel32 #FindNextFile hFindFile WIN32_FIND_DATA*lpFindFileData
dll kernel32 #SearchPath $lpPath $lpFileName $lpExtension nBufferLength $lpBuffer $lpFilePart
dll kernel32 #CopyFile $lpExistingFileName $lpNewFileName bFailIfExists
dll kernel32 #MoveFile $lpExistingFileName $lpNewFileName
dll kernel32 #MoveFileEx $lpExistingFileName $lpNewFileName dwFlags
def MOVEFILE_REPLACE_EXISTING  0x1
def MOVEFILE_COPY_ALLOWED  0x2
def MOVEFILE_DELAY_UNTIL_REBOOT  0x4
type EVENTLOGRECORD Length Reserved RecordNumber TimeGenerated TimeWritten EventID @EventType @NumStrings @EventCategory @ReservedFlags ClosingRecordNumber StringOffset UserSidLength UserSidOffset DataLength DataOffset
dll kernel32 #CreateNamedPipe $lpName dwOpenMode dwPipeMode nMaxInstances nOutBufferSize nInBufferSize nDefaultTimeOut SECURITY_ATTRIBUTES*lpSecurityAttributes
dll kernel32 #GetNamedPipeHandleState hNamedPipe *lpState *lpCurInstances *lpMaxCollectionCount *lpCollectDataTimeout $lpUserName nMaxUserNameSize
dll kernel32 #CallNamedPipe $lpNamedPipeName !*lpInBuffer nInBufferSize !*lpOutBuffer nOutBufferSize *lpBytesRead nTimeOut
dll kernel32 #WaitNamedPipe $lpNamedPipeName nTimeOut
dll kernel32 #SetVolumeLabel $lpRootPathName $lpVolumeName
dll kernel32 SetFileApisToOEM
dll kernel32 #GetVolumeInformation $lpRootPathName $lpVolumeNameBuffer nVolumeNameSize *lpVolumeSerialNumber *lpMaximumComponentLength *lpFileSystemFlags $lpFileSystemNameBuffer nFileSystemNameSize
dll advapi32.dll #ClearEventLog hEventLog $lpBackupFileName
dll advapi32.dll #BackupEventLog hEventLog $lpBackupFileName
dll advapi32.dll #CloseEventLog hEventLog
dll advapi32.dll #DeregisterEventSource hEventLog
dll advapi32.dll #GetNumberOfEventLogRecords hEventLog *NumberOfRecords
dll advapi32.dll #GetOldestEventLogRecord hEventLog *OldestRecord
dll advapi32.dll #OpenEventLog $lpUNCServerName $lpSourceName
dll advapi32.dll #RegisterEventSource $lpUNCServerName $lpSourceName
dll advapi32.dll #OpenBackupEventLog $lpUNCServerName $lpFileName
dll advapi32.dll #ReadEventLog hEventLog dwReadFlags dwRecordOffset EVENTLOGRECORD*lpBuffer nNumberOfBytesToRead *pnBytesRead *pnMinNumberOfBytesNeeded
dll advapi32.dll #ReportEvent hEventLog wType wCategory dwEventID !*lpUserSid wNumStrings dwDataSize lpStrings !*lpRawData
def TokenUser        1
def TokenGroups      2
def TokenPrivileges  3
def TokenOwner       4
def TokenPrimaryGroup  5
def TokenDefaultDacl  6
def TokenSource      7
def TokenType        8
def TokenImpersonationLevel  9
def TokenStatistics  10
type TOKEN_GROUPS GroupCount SID_AND_ATTRIBUTES'Groups[ANYSIZE_ARRAY]
dll advapi32.dll #DuplicateToken ExistingTokenHandle @*ImpersonationLevel *DuplicateTokenHandle
dll advapi32.dll #GetKernelObjectSecurity Handle RequestedInformation SECURITY_DESCRIPTOR*pSecurityDescriptor nLength *lpnLengthNeeded
dll advapi32.dll #ImpersonateNamedPipeClient hNamedPipe
dll advapi32.dll #ImpersonateSelf @*ImpersonationLevel
dll advapi32.dll #RevertToSelf
dll advapi32.dll #AccessCheck SECURITY_DESCRIPTOR*pSecurityDescriptor ClientToken DesiredAccess GENERIC_MAPPING*GenericMapping PRIVILEGE_SET*PrivilegeSet *PrivilegeSetLength *GrantedAccess Status
type TOKEN_PRIVILEGES PrivilegeCount LUID_AND_ATTRIBUTES'Privileges[ANYSIZE_ARRAY]
dll advapi32.dll #OpenProcessToken ProcessHandle DesiredAccess *TokenHandle
dll advapi32.dll #OpenThreadToken ThreadHandle DesiredAccess OpenAsSelf *TokenHandle
dll advapi32.dll #GetTokenInformation TokenHandle @*TokenInformationClass !*TokenInformation TokenInformationLength *ReturnLength
dll advapi32.dll #SetTokenInformation TokenHandle @*TokenInformationClass !*TokenInformation TokenInformationLength
dll advapi32.dll #AdjustTokenPrivileges TokenHandle DisableAllPrivileges TOKEN_PRIVILEGES*NewState BufferLength TOKEN_PRIVILEGES*PreviousState *ReturnLength
dll advapi32.dll #AdjustTokenGroups TokenHandle ResetToDefault TOKEN_GROUPS*NewState BufferLength TOKEN_GROUPS*PreviousState *ReturnLength
dll advapi32.dll #PrivilegeCheck ClientToken PRIVILEGE_SET*RequiredPrivileges pfResult
dll advapi32.dll #AccessCheckAndAuditAlarm $SubsystemName !*HandleId $ObjectTypeName $ObjectName SECURITY_DESCRIPTOR*SecurityDescriptor DesiredAccess GENERIC_MAPPING*GenericMapping ObjectCreation *GrantedAccess AccessStatus pfGenerateOnClose
dll kernel32 #ObjectOpenAuditAlarm $SubsystemName !*HandleId $ObjectTypeName $ObjectName SECURITY_DESCRIPTOR*pSecurityDescriptor ClientToken DesiredAccess GrantedAccess PRIVILEGE_SET*Privileges ObjectCreation AccessGranted GenerateOnClose
dll advapi32.dll #ObjectPrivilegeAuditAlarm $SubsystemName !*HandleId ClientToken DesiredAccess PRIVILEGE_SET*Privileges AccessGranted
dll advapi32.dll #ObjectCloseAuditAlarm $SubsystemName !*HandleId GenerateOnClose
dll advapi32.dll #PrivilegedServiceAuditAlarm $SubsystemName $ServiceName ClientToken PRIVILEGE_SET*Privileges AccessGranted
dll advapi32.dll #IsValidSid !*pSid
dll advapi32.dll #EqualSid !*pSid1 !*pSid2
dll advapi32.dll #EqualPrefixSid !*pSid1 !*pSid2
dll advapi32.dll #GetSidLengthRequired !nSubAuthorityCount
dll advapi32.dll #AllocateAndInitializeSid SID_IDENTIFIER_AUTHORITY*pIdentifierAuthority !nSubAuthorityCount nSubAuthority0 nSubAuthority1 nSubAuthority2 nSubAuthority3 nSubAuthority4 nSubAuthority5 nSubAuthority6 nSubAuthority7 *lpPSid
dll advapi32.dll FreeSid !*pSid
dll advapi32.dll #InitializeSid !*Sid SID_IDENTIFIER_AUTHORITY*pIdentifierAuthority !nSubAuthorityCount
dll advapi32.dll #GetSidIdentifierAuthority !*pSid
dll advapi32.dll #GetSidSubAuthority !*pSid nSubAuthority
dll advapi32.dll #GetSidSubAuthorityCount !*pSid
dll advapi32.dll #GetLengthSid !*pSid
dll advapi32.dll #CopySid nDestinationSidLength !*pDestinationSid !*pSourceSid
dll advapi32.dll #AreAllAccessesGranted GrantedAccess DesiredAccess
dll advapi32.dll #AreAnyAccessesGranted GrantedAccess DesiredAccess
dll advapi32.dll MapGenericMask *AccessMask GENERIC_MAPPING*GenericMapping
dll advapi32.dll #IsValidAcl ACL*pAcl
dll advapi32.dll #InitializeAcl ACL*pAcl nAclLength dwAclRevision
dll advapi32.dll #GetAclInformation ACL*pAcl !*pAclInformation nAclInformationLength @dwAclInformationClass
dll advapi32.dll #SetAclInformation ACL*pAcl !*pAclInformation nAclInformationLength @dwAclInformationClass
dll advapi32.dll #AddAce ACL*pAcl dwAceRevision dwStartingAceIndex !*pAceList nAceListLength
dll advapi32.dll #DeleteAce ACL*pAcl dwAceIndex
dll advapi32.dll #GetAce ACL*pAcl dwAceIndex !*pAce
dll advapi32.dll #AddAccessAllowedAce ACL*pAcl dwAceRevision AccessMask !*pSid
dll advapi32.dll #AddAccessDeniedAce ACL*pAcl dwAceRevision AccessMask !*pSid
dll advapi32.dll #AddAuditAccessAce ACL*pAcl dwAceRevision dwAccessMask !*pSid bAuditSuccess bAuditFailure
dll advapi32.dll #FindFirstFreeAce ACL*pAcl *pAce
dll advapi32.dll #InitializeSecurityDescriptor SECURITY_DESCRIPTOR*pSecurityDescriptor dwRevision
dll advapi32.dll #IsValidSecurityDescriptor SECURITY_DESCRIPTOR*pSecurityDescriptor
dll advapi32.dll #GetSecurityDescriptorLength SECURITY_DESCRIPTOR*pSecurityDescriptor
dll advapi32.dll #GetSecurityDescriptorControl SECURITY_DESCRIPTOR*pSecurityDescriptor @*pControl *lpdwRevision
dll advapi32.dll #SetSecurityDescriptorDacl SECURITY_DESCRIPTOR*pSecurityDescriptor bDaclPresent ACL*pDacl bDaclDefaulted
dll advapi32.dll #GetSecurityDescriptorDacl SECURITY_DESCRIPTOR*pSecurityDescriptor *lpbDaclPresent ACL*pDacl *lpbDaclDefaulted
dll advapi32.dll #SetSecurityDescriptorSacl SECURITY_DESCRIPTOR*pSecurityDescriptor bSaclPresent ACL*pSacl bSaclDefaulted
dll advapi32.dll #GetSecurityDescriptorSacl SECURITY_DESCRIPTOR*pSecurityDescriptor lpbSaclPresent ACL*pSacl lpbSaclDefaulted
dll advapi32.dll #SetSecurityDescriptorOwner SECURITY_DESCRIPTOR*pSecurityDescriptor !*pOwner bOwnerDefaulted
dll advapi32.dll #GetSecurityDescriptorOwner SECURITY_DESCRIPTOR*pSecurityDescriptor !*pOwner lpbOwnerDefaulted
dll advapi32.dll #SetSecurityDescriptorGroup SECURITY_DESCRIPTOR*pSecurityDescriptor !*pGroup bGroupDefaulted
dll advapi32.dll #GetSecurityDescriptorGroup SECURITY_DESCRIPTOR*pSecurityDescriptor !*pGroup lpbGroupDefaulted
dll advapi32.dll #CreatePrivateObjectSecurity SECURITY_DESCRIPTOR*ParentDescriptor SECURITY_DESCRIPTOR*CreatorDescriptor SECURITY_DESCRIPTOR*NewDescriptor IsDirectoryObject Token GENERIC_MAPPING*GenericMapping
dll advapi32.dll #SetPrivateObjectSecurity SecurityInformation SECURITY_DESCRIPTOR*ModificationDescriptor SECURITY_DESCRIPTOR*ObjectsSecurityDescriptor GENERIC_MAPPING*GenericMapping Token
dll advapi32.dll #GetPrivateObjectSecurity SECURITY_DESCRIPTOR*ObjectDescriptor SecurityInformation SECURITY_DESCRIPTOR*ResultantDescriptor DescriptorLength *ReturnLength
dll advapi32.dll #DestroyPrivateObjectSecurity SECURITY_DESCRIPTOR*ObjectDescriptor
dll advapi32.dll #MakeSelfRelativeSD SECURITY_DESCRIPTOR*pAbsoluteSecurityDescriptor SECURITY_DESCRIPTOR*pSelfRelativeSecurityDescriptor *lpdwBufferLength
dll advapi32.dll #MakeAbsoluteSD SECURITY_DESCRIPTOR*pSelfRelativeSecurityDescriptor SECURITY_DESCRIPTOR*pAbsoluteSecurityDescriptor *lpdwAbsoluteSecurityDescriptorSize ACL*pDacl *lpdwDaclSize ACL*pSacl *lpdwSaclSize !*pOwner *lpdwOwnerSize !*pPrimaryGroup *lpdwPrimaryGroupSize
dll advapi32.dll #SetFileSecurity $lpFileName SecurityInformation SECURITY_DESCRIPTOR*pSecurityDescriptor
dll advapi32.dll #GetFileSecurity $lpFileName RequestedInformation SECURITY_DESCRIPTOR*pSecurityDescriptor nLength *lpnLengthNeeded
dll advapi32.dll #SetKernelObjectSecurity Handle SecurityInformation SECURITY_DESCRIPTOR*SecurityDescriptor
dll kernel32 #FindFirstChangeNotification $lpPathName bWatchSubtree dwNotifyFilter
dll kernel32 #FindNextChangeNotification hChangeHandle
dll kernel32 #FindCloseChangeNotification hChangeHandle
dll kernel32 #VirtualLock !*lpAddress dwSize
dll kernel32 #VirtualUnlock !*lpAddress dwSize
dll kernel32 #MapViewOfFileEx hFileMappingObject dwDesiredAccess dwFileOffsetHigh dwFileOffsetLow dwNumberOfBytesToMap !*lpBaseAddress
dll kernel32 #SetPriorityClass hProcess dwPriorityClass
dll kernel32 #GetPriorityClass hProcess
type CONTEXT ^FltF0 ^FltF1 ^FltF2 ^FltF3 ^FltF4 ^FltF5 ^FltF6 ^FltF7 ^FltF8 ^FltF9 ^FltF10 ^FltF11 ^FltF12 ^FltF13 ^FltF14 ^FltF15 ^FltF16 ^FltF17 ^FltF18 ^FltF19 ^FltF20 ^FltF21 ^FltF22 ^FltF23 ^FltF24 ^FltF25 ^FltF26 ^FltF27 ^FltF28 ^FltF29 ^FltF30 ^FltF31 ^IntV0 ^IntT0 ^IntT1 ^IntT2 ^IntT3 ^IntT4 ^IntT5 ^IntT6 ^IntT7 ^IntS0 ^IntS1 ^IntS2 ^IntS3 ^IntS4 ^IntS5 ^IntFp ^IntA0 ^IntA1 ^IntA2 ^IntA3 ^IntA4 ^IntA5 ^IntT8 ^IntT9 ^IntT10 ^IntT11 ^IntRa ^IntT12 ^IntAt ^IntGp ^IntSp ^IntZero ^Fpcr ^SoftFpcr ^Fir Psr ContextFlags Fill[4]
type EXCEPTION_POINTERS EXCEPTION_RECORD'pExceptionRecord CONTEXT'ContextRecord
type LDT_BYTES !BaseMid !Flags1 !Flags2 !BaseHi
type LDT_ENTRY @LimitLow @BaseLow HighWord
dll kernel32 FatalExit code
dll kernel32 $GetEnvironmentStrings
dll kernel32 RaiseException dwExceptionCode dwExceptionFlags nNumberOfArguments *lpArguments
dll kernel32 #UnhandledExceptionFilter EXCEPTION_POINTERS*ExceptionInfo
dll kernel32 #CreateThread SECURITY_ATTRIBUTES*lpThreadAttributes dwStackSize *lpStartAddress !*lpParameter dwCreationFlags *lpThreadId
dll kernel32 #CreateRemoteThread hProcess SECURITY_ATTRIBUTES*lpThreadAttributes dwStackSize *lpStartAddress !*lpParameter dwCreationFlags *lpThreadId
dll kernel32 #GetCurrentThread
dll kernel32 #GetCurrentThreadId
dll kernel32 #SetThreadPriority hThread nPriority
dll kernel32 #GetThreadPriority hThread
dll kernel32 #GetThreadTimes hThread FILETIME*lpCreationTime FILETIME*lpExitTime FILETIME*lpKernelTime FILETIME*lpUserTime
dll kernel32 ExitThread dwExitCode
dll kernel32 #TerminateThread hThread dwExitCode
dll kernel32 #GetExitCodeThread hThread *lpExitCode
dll kernel32 #GetThreadSelectorEntry hThread dwSelector LDT_ENTRY*lpSelectorEntry
dll kernel32 #SetCommState hCommDev DCB*lpDCB
dll kernel32 #SetCommTimeouts hFile COMMTIMEOUTS*lpCommTimeouts
dll kernel32 #GetCommState nCid DCB*lpDCB
dll kernel32 #GetCommTimeouts hFile COMMTIMEOUTS*lpCommTimeouts
dll kernel32 #PurgeComm hFile dwFlags
dll kernel32 #BuildCommDCB $lpDef DCB*lpDCB
dll kernel32 #BuildCommDCBAndTimeouts $lpDef DCB*lpDCB COMMTIMEOUTS*lpCommTimeouts
dll kernel32 #TransmitCommChar nCid !cChar
dll kernel32 #SetCommBreak nCid
dll kernel32 #SetCommMask hFile dwEvtMask
dll kernel32 #ClearCommBreak nCid
dll kernel32 #ClearCommError hFile *lpErrors COMSTAT*lpStat
dll kernel32 #SetupComm hFile dwInQueue dwOutQueue
dll kernel32 #EscapeCommFunction nCid nFunc
dll kernel32 #GetCommMask hFile *lpEvtMask
dll kernel32 #GetCommProperties hFile COMMPROP*lpCommProp
dll kernel32 #GetCommModemStatus hFile *lpModemStat
dll kernel32 #WaitCommEvent hFile *lpEvtMask OVERLAPPED*lpOverlapped
dll kernel32 #SetTapePosition hDevice dwPositionMethod dwPartition dwOffsetLow dwOffsetHigh bimmediate
dll kernel32 #GetTapePosition hDevice dwPositionType *lpdwPartition *lpdwOffsetLow *lpdwOffsetHigh
dll kernel32 #PrepareTape hDevice dwOperation bimmediate
dll kernel32 #EraseTape hDevice dwEraseType bimmediate
dll kernel32 #CreateTapePartition hDevice dwPartitionMethod dwCount dwSize
dll kernel32 #WriteTapemark hDevice dwTapemarkType dwTapemarkCount bimmediate
dll kernel32 #GetTapeStatus hDevice
dll kernel32 #GetTapeParameters hDevice dwOperation *lpdwSize !*lpTapeInformation
def GET_TAPE_MEDIA_INFORMATION  0
def GET_TAPE_DRIVE_INFORMATION  1
dll kernel32 #SetTapeParameters hDevice dwOperation !*lpTapeInformation
def SET_TAPE_MEDIA_INFORMATION  0
def SET_TAPE_DRIVE_INFORMATION  1
dll kernel32 #Beep dwFreq dwDuration
dll kernel32 #MulDiv nNumber nNumerator nDenominator
dll kernel32 GetSystemTime SYSTEMTIME*lpSystemTime
dll kernel32 #SetSystemTime SYSTEMTIME*lpSystemTime
dll kernel32 GetLocalTime SYSTEMTIME*lpSystemTime
dll kernel32 #SetLocalTime SYSTEMTIME*lpSystemTime
def PROCESSOR_INTEL_386  386
def PROCESSOR_INTEL_486  486
def PROCESSOR_INTEL_PENTIUM  586
def PROCESSOR_MIPS_R4000  4000
def PROCESSOR_ALPHA_21064  21064
def PROCESSOR_ARCHITECTURE_INTEL  0
def PROCESSOR_ARCHITECTURE_MIPS  1
def PROCESSOR_ARCHITECTURE_ALPHA  2
def PROCESSOR_ARCHITECTURE_PPC  3
def PROCESSOR_ARCHITECTURE_UNKNOWN  0xFFFF
dll kernel32 GetSystemInfo SYSTEM_INFO*lpSystemInfo
type TIME_ZONE_INFORMATION Bias !StandardName[0 To 63] SYSTEMTIME'StandardDate StandardBias !DaylightName[0 To 63] SYSTEMTIME'DaylightDate DaylightBias
dll kernel32 #GetTimeZoneInformation TIME_ZONE_INFORMATION*lpTimeZoneInformation
dll kernel32 #SetTimeZoneInformation TIME_ZONE_INFORMATION*lpTimeZoneInformation
def TIME_ZONE_ID_INVALID  0xFFFFFFFF
def TIME_ZONE_ID_UNKNOWN  0
def TIME_ZONE_ID_STANDARD  1
def TIME_ZONE_ID_DAYLIGHT  2
dll kernel32 #SystemTimeToFileTime SYSTEMTIME*lpSystemTime FILETIME*lpFileTime
dll kernel32 #FileTimeToLocalFileTime FILETIME*lpFileTime FILETIME*lpLocalFileTime
dll kernel32 #LocalFileTimeToFileTime FILETIME*lpLocalFileTime FILETIME*lpFileTime
dll kernel32 #FileTimeToSystemTime FILETIME*lpFileTime SYSTEMTIME*lpSystemTime
dll kernel32 #CompareFileTime FILETIME*lpFileTime1 FILETIME*lpFileTime2
dll kernel32 #FileTimeToDosDateTime FILETIME*lpFileTime lpFatDate lpFatTime
dll kernel32 #DosDateTimeToFileTime wFatDate wFatTime FILETIME*lpFileTime
dll kernel32 #GetTickCount
dll kernel32 #GetTickCount
dll kernel32 #FormatMessage dwFlags !*lpSource dwMessageId dwLanguageId $lpBuffer nSize *Arguments
def FORMAT_MESSAGE_ALLOCATE_BUFFER  0x100
def FORMAT_MESSAGE_IGNORE_INSERTS  0x200
def FORMAT_MESSAGE_FROM_STRING  0x400
def FORMAT_MESSAGE_FROM_HMODULE  0x800
def FORMAT_MESSAGE_FROM_SYSTEM  0x1000
def FORMAT_MESSAGE_ARGUMENT_ARRAY  0x2000
def FORMAT_MESSAGE_MAX_WIDTH_MASK  0xFF
dll kernel32 #CreatePipe *phReadPipe *phWritePipe SECURITY_ATTRIBUTES*lpPipeAttributes nSize
dll kernel32 #ConnectNamedPipe hNamedPipe OVERLAPPED*lpOverlapped
dll kernel32 #DisconnectNamedPipe hNamedPipe
dll kernel32 #SetNamedPipeHandleState hNamedPipe *lpMode *lpMaxCollectionCount *lpCollectDataTimeout
dll kernel32 #GetNamedPipeInfo hNamedPipe *lpFlags *lpOutBufferSize *lpInBufferSize *lpMaxInstances
dll kernel32 #PeekNamedPipe hNamedPipe !*lpBuffer nBufferSize *lpBytesRead *lpTotalBytesAvail *lpBytesLeftThisMessage
dll kernel32 #TransactNamedPipe hNamedPipe !*lpInBuffer nInBufferSize !*lpOutBuffer nOutBufferSize *lpBytesRead OVERLAPPED*lpOverlapped
dll kernel32 #CreateMailslot $lpName nMaxMessageSize lReadTimeout SECURITY_ATTRIBUTES*lpSecurityAttributes
dll kernel32 #GetMailslotInfo hMailslot *lpMaxMessageSize *lpNextSize *lpMessageCount *lpReadTimeout
dll kernel32 #SetMailslotInfo hMailslot lReadTimeout
dll kernel32 #MapViewOfFile hFileMappingObject dwDesiredAccess dwFileOffsetHigh dwFileOffsetLow dwNumberOfBytesToMap
dll kernel32 #FlushViewOfFile !*lpBaseAddress dwNumberOfBytesToFlush
dll kernel32 #UnmapViewOfFile !*lpBaseAddress
dll kernel32 #lstrcmp $lpString1 $lpString2
dll kernel32 #lstrcmpi $lpString1 $lpString2
dll kernel32 #lstrlen $lpString
dll kernel32 #_lopen $lpPathName iReadWrite
dll kernel32 #_lclose hFile
dll kernel32 #_lcreat $lpPathName iAttribute
dll kernel32 #_llseek hFile lOffset iOrigin
dll kernel32 #_lread hFile !*lpBuffer wBytes
dll kernel32 #_lwrite hFile $lpBuffer wBytes
dll kernel32 #_hread hFile !*lpBuffer lBytes
dll kernel32 #_hwrite hFile $lpBuffer lBytes
dll kernel32 #TlsAlloc
def TLS_OUT_OF_INDEXES  0xFFFF
dll kernel32 #TlsGetValue dwTlsIndex
dll kernel32 #TlsSetValue dwTlsIndex !*lpTlsValue
dll kernel32 #TlsFree dwTlsIndex
dll kernel32 #SleepEx dwMilliseconds bAlertable
dll kernel32 #WaitForSingleObjectEx hHandle dwMilliseconds bAlertable
dll kernel32 #WaitForMultipleObjectsEx nCount *lpHandles bWaitAll dwMilliseconds bAlertable
dll kernel32 #BackupRead hFile !*lpBuffer nNumberOfBytesToRead *lpNumberOfBytesRead bAbort bProcessSecurity !*lpContext
dll kernel32 #BackupSeek hFile dwLowBytesToSeek dwHighBytesToSeek *lpdwLowByteSeeked *lpdwHighByteSeeked *lpContext
dll kernel32 #BackupWrite hFile !*lpBuffer nNumberOfBytesToWrite *lpNumberOfBytesWritten bAbort bProcessSecurity *lpContext
type WIN32_STREAM_ID dwStreamID dwStreamAttributes dwStreamSizeLow dwStreamSizeHigh dwStreamNameSize !cStreamName
def BACKUP_DATA      0x1
def BACKUP_EA_DATA   0x2
def BACKUP_SECURITY_DATA  0x3
def BACKUP_ALTERNATE_DATA  0x4
def BACKUP_LINK      0x5
def STREAM_MODIFIED_WHEN_READ  0x1
def STREAM_CONTAINS_SECURITY  0x2
def STARTF_USESHOWWINDOW  0x1
def STARTF_USESIZE   0x2
def STARTF_USEPOSITION  0x4
def STARTF_USECOUNTCHARS  0x8
def STARTF_USEFILLATTRIBUTE  0x10
def STARTF_RUNFULLSCREEN  0x20
def STARTF_FORCEONFEEDBACK  0x40
def STARTF_FORCEOFFFEEDBACK  0x80
def STARTF_USESTDHANDLES  0x100
type STARTUPINFO cb $lpReserved $lpDesktop $lpTitle dwX dwY dwXSize dwYSize dwXCountChars dwYCountChars dwFillAttribute dwFlags @wShowWindow @cbReserved2 lpReserved2 hStdInput hStdOutput hStdError
def SHUTDOWN_NORETRY  0x1
type WIN32_FIND_DATA dwFileAttributes FILETIME'ftCreationTime FILETIME'ftLastAccessTime FILETIME'ftLastWriteTime nFileSizeHigh nFileSizeLow dwReserved0 dwReserved1 !cFileName[MAX_PATH] !cAlternate[14]
dll kernel32 #CreateMutex SECURITY_ATTRIBUTES*lpMutexAttributes bInitialOwner $lpName
dll kernel32 #OpenMutex dwDesiredAccess bInheritHandle $lpName
dll kernel32 #CreateEvent SECURITY_ATTRIBUTES*lpEventAttributes bManualReset bInitialState $lpName
dll kernel32 #OpenEvent dwDesiredAccess bInheritHandle $lpName
dll kernel32 #CreateSemaphore SECURITY_ATTRIBUTES*lpSemaphoreAttributes lInitialCount lMaximumCount $lpName
dll kernel32 #OpenSemaphore dwDesiredAccess bInheritHandle $lpName
dll kernel32 #CreateFileMapping hFile SECURITY_ATTRIBUTES*lpFileMappigAttributes flProtect dwMaximumSizeHigh dwMaximumSizeLow $lpName
dll kernel32 #OpenFileMapping dwDesiredAccess bInheritHandle $lpName
dll kernel32 #GetLogicalDriveStrings nBufferLength $lpBuffer
dll kernel32 #IsBadReadPtr !*lp ucb
dll kernel32 #IsBadWritePtr !*lp ucb
dll kernel32 #IsBadStringPtr $lpsz ucchMax
dll kernel32 #IsBadHugeReadPtr !*lp ucb
dll kernel32 #IsBadHugeWritePtr !*lp ucb
dll advapi32.dll #LookupAccountSid $lpSystemName !*Sid $name *cbName $ReferencedDomainName *cbReferencedDomainName @*peUse
dll advapi32.dll #LookupAccountName $lpSystemName $lpAccountName *Sid *cbSid $ReferencedDomainName *cbReferencedDomainName @*peUse
dll advapi32.dll #LookupPrivilegeValue $lpSystemName $lpName LARGE_INTEGER*lpLuid
dll advapi32.dll #LookupPrivilegeName $lpSystemName LARGE_INTEGER*lpLuid $lpName *cbName
dll advapi32.dll #LookupPrivilegeDisplayName $lpSystemName $lpName $lpDisplayName *cbDisplayName *lpLanguageID
dll advapi32.dll #AllocateLocallyUniqueId LARGE_INTEGER*Luid
dll kernel32 #GetComputerName $lpBuffer *nSize
dll kernel32 #SetComputerName $lpComputerName
dll advapi32.dll #GetUserName $lpBuffer *nSize
dll kernel32 #QueryPerformanceCounter LARGE_INTEGER*lpPerformanceCount
dll kernel32 #QueryPerformanceFrequency LARGE_INTEGER*lpFrequency
def TC_NORMAL        0
def TC_HARDERR       1
def TC_GP_TRAP       2
def TC_SIGNAL        3
def MAX_LEADBYTES    12
def MB_PRECOMPOSED   0x1
def MB_COMPOSITE     0x2
def MB_USEGLYPHCHARS  0x4
def WC_DEFAULTCHECK  0x100
def WC_COMPOSITECHECK  0x200
def WC_DISCARDNS     0x10
def WC_SEPCHARS      0x20
def WC_DEFAULTCHAR   0x40
def CT_CTYPE1        0x1
def CT_CTYPE2        0x2
def CT_CTYPE3        0x4
def C1_UPPER         0x1
def C1_LOWER         0x2
def C1_DIGIT         0x4
def C1_SPACE         0x8
def C1_PUNCT         0x10
def C1_CNTRL         0x20
def C1_BLANK         0x40
def C1_XDIGIT        0x80
def C1_ALPHA         0x100
def C2_LEFTTORIGHT   0x1
def C2_RIGHTTOLEFT   0x2
def C2_EUROPENUMBER  0x3
def C2_EUROPESEPARATOR  0x4
def C2_EUROPETERMINATOR  0x5
def C2_ARABICNUMBER  0x6
def C2_COMMONSEPARATOR  0x7
def C2_BLOCKSEPARATOR  0x8
def C2_SEGMENTSEPARATOR  0x9
def C2_WHITESPACE    0xA
def C2_OTHERNEUTRAL  0xB
def C2_NOTAPPLICABLE  0x0
def C3_NONSPACING    0x1
def C3_DIACRITIC     0x2
def C3_VOWELMARK     0x4
def C3_SYMBOL        0x8
def C3_NOTAPPLICABLE  0x0
def NORM_IGNORECASE  0x1
def NORM_IGNORENONSPACE  0x2
def NORM_IGNORESYMBOLS  0x4
def MAP_FOLDCZONE    0x10
def MAP_PRECOMPOSED  0x20
def MAP_COMPOSITE    0x40
def MAP_FOLDDIGITS   0x80
def LCMAP_LOWERCASE  0x100
def LCMAP_UPPERCASE  0x200
def LCMAP_SORTKEY    0x400
def LCMAP_BYTEREV    0x800
def SORT_STRINGSORT  0x1000
def CP_ACP           0
def CP_OEMCP         1
def CTRY_DEFAULT     0
def CTRY_AUSTRALIA   61
def CTRY_AUSTRIA     43
def CTRY_BELGIUM     32
def CTRY_BRAZIL      55
def CTRY_CANADA      2
def CTRY_DENMARK     45
def CTRY_FINLAND     358
def CTRY_FRANCE      33
def CTRY_GERMANY     49
def CTRY_ICELAND     354
def CTRY_IRELAND     353
def CTRY_ITALY       39
def CTRY_JAPAN       81
def CTRY_MEXICO      52
def CTRY_NETHERLANDS  31
def CTRY_NEW_ZEALAND  64
def CTRY_NORWAY      47
def CTRY_PORTUGAL    351
def CTRY_PRCHINA     86
def CTRY_SOUTH_KOREA  82
def CTRY_SPAIN       34
def CTRY_SWEDEN      46
def CTRY_SWITZERLAND  41
def CTRY_TAIWAN      886
def CTRY_UNITED_KINGDOM  44
def CTRY_UNITED_STATES  1
def LOCALE_NOUSEROVERRIDE  0x80000000
def LOCALE_ILANGUAGE  0x1
def LOCALE_SLANGUAGE  0x2
def LOCALE_SENGLANGUAGE  0x1001
def LOCALE_SABBREVLANGNAME  0x3
def LOCALE_SNATIVELANGNAME  0x4
def LOCALE_ICOUNTRY  0x5
def LOCALE_SCOUNTRY  0x6
def LOCALE_SENGCOUNTRY  0x1002
def LOCALE_SABBREVCTRYNAME  0x7
def LOCALE_SNATIVECTRYNAME  0x8
def LOCALE_IDEFAULTLANGUAGE  0x9
def LOCALE_IDEFAULTCOUNTRY  0xA
def LOCALE_IDEFAULTCODEPAGE  0xB
def LOCALE_SLIST     0xC
def LOCALE_IMEASURE  0xD
def LOCALE_SDECIMAL  0xE
def LOCALE_STHOUSAND  0xF
def LOCALE_SGROUPING  0x10
def LOCALE_IDIGITS   0x11
def LOCALE_ILZERO    0x12
def LOCALE_SNATIVEDIGITS  0x13
def LOCALE_SCURRENCY  0x14
def LOCALE_SINTLSYMBOL  0x15
def LOCALE_SMONDECIMALSEP  0x16
def LOCALE_SMONTHOUSANDSEP  0x17
def LOCALE_SMONGROUPING  0x18
def LOCALE_ICURRDIGITS  0x19
def LOCALE_IINTLCURRDIGITS  0x1A
def LOCALE_ICURRENCY  0x1B
def LOCALE_INEGCURR  0x1C
def LOCALE_SDATE     0x1D
def LOCALE_STIME     0x1E
def LOCALE_SSHORTDATE  0x1F
def LOCALE_SLONGDATE  0x20
def LOCALE_STIMEFORMAT  0x1003
def LOCALE_IDATE     0x21
def LOCALE_ILDATE    0x22
def LOCALE_ITIME     0x23
def LOCALE_ICENTURY  0x24
def LOCALE_ITLZERO   0x25
def LOCALE_IDAYLZERO  0x26
def LOCALE_IMONLZERO  0x27
def LOCALE_S1159     0x28
def LOCALE_S2359     0x29
def LOCALE_SDAYNAME1  0x2A
def LOCALE_SDAYNAME2  0x2B
def LOCALE_SDAYNAME3  0x2C
def LOCALE_SDAYNAME4  0x2D
def LOCALE_SDAYNAME5  0x2E
def LOCALE_SDAYNAME6  0x2F
def LOCALE_SDAYNAME7  0x30
def LOCALE_SABBREVDAYNAME1  0x31
def LOCALE_SABBREVDAYNAME2  0x32
def LOCALE_SABBREVDAYNAME3  0x33
def LOCALE_SABBREVDAYNAME4  0x34
def LOCALE_SABBREVDAYNAME5  0x35
def LOCALE_SABBREVDAYNAME6  0x36
def LOCALE_SABBREVDAYNAME7  0x37
def LOCALE_SMONTHNAME1  0x38
def LOCALE_SMONTHNAME2  0x39
def LOCALE_SMONTHNAME3  0x3A
def LOCALE_SMONTHNAME4  0x3B
def LOCALE_SMONTHNAME5  0x3C
def LOCALE_SMONTHNAME6  0x3D
def LOCALE_SMONTHNAME7  0x3E
def LOCALE_SMONTHNAME8  0x3F
def LOCALE_SMONTHNAME9  0x40
def LOCALE_SMONTHNAME10  0x41
def LOCALE_SMONTHNAME11  0x42
def LOCALE_SMONTHNAME12  0x43
def LOCALE_SABBREVMONTHNAME1  0x44
def LOCALE_SABBREVMONTHNAME2  0x45
def LOCALE_SABBREVMONTHNAME3  0x46
def LOCALE_SABBREVMONTHNAME4  0x47
def LOCALE_SABBREVMONTHNAME5  0x48
def LOCALE_SABBREVMONTHNAME6  0x49
def LOCALE_SABBREVMONTHNAME7  0x4A
def LOCALE_SABBREVMONTHNAME8  0x4B
def LOCALE_SABBREVMONTHNAME9  0x4C
def LOCALE_SABBREVMONTHNAME10  0x4D
def LOCALE_SABBREVMONTHNAME11  0x4E
def LOCALE_SABBREVMONTHNAME12  0x4F
def LOCALE_SABBREVMONTHNAME13  0x100F
def LOCALE_SPOSITIVESIGN  0x50
def LOCALE_SNEGATIVESIGN  0x51
def LOCALE_IPOSSIGNPOSN  0x52
def LOCALE_INEGSIGNPOSN  0x53
def LOCALE_IPOSSYMPRECEDES  0x54
def LOCALE_IPOSSEPBYSPACE  0x55
def LOCALE_INEGSYMPRECEDES  0x56
def LOCALE_INEGSEPBYSPACE  0x57
def TIME_NOMINUTESORSECONDS  0x1
def TIME_NOSECONDS   0x2
def TIME_NOTIMEMARKER  0x4
def TIME_FORCE24HOURFORMAT  0x8
def DATE_SHORTDATE   0x1
def DATE_LONGDATE    0x2
dll kernel32 #IsValidCodePage CodePage
dll kernel32 #GetACP
dll kernel32 #GetOEMCP
dll kernel32 #GetCPInfo CodePage CPINFO*lpCPInfo
dll kernel32 #IsDBCSLeadByte !bTestChar
dll kernel32 #MultiByteToWideChar CodePage dwFlags $lpMultiByteStr cchMultiByte $lpWideCharStr cchWideChar
dll kernel32 #WideCharToMultiByte CodePage dwFlags $lpWideCharStr cchWideChar $lpMultiByteStr cchMultiByte $lpDefaultChar lpUsedDefaultChar
dll kernel32 #CompareString Locale dwCmpFlags $lpString1 cchCount1 $lpString2 cchCount2
dll kernel32 #LCMapString Locale dwMapFlags $lpSrcStr cchSrc $lpDestStr cchDest
dll kernel32 #GetLocaleInfo Locale LCType $lpLCData cchData
dll kernel32 #GetTimeFormat Locale dwFlags SYSTEMTIME*lpTime $lpFormat $lpTimeStr cchTime
dll kernel32 #GetDateFormat Locale dwFlags SYSTEMTIME*lpDate $lpFormat $lpDateStr cchDate
dll kernel32 #SetThreadLocale Locale
dll kernel32 #GetSystemDefaultLangID
dll kernel32 #GetUserDefaultLangID
dll kernel32 #GetSystemDefaultLCID
dll kernel32 #GetUserDefaultLCID
dll kernel32 #GetStringTypeA lcid dwInfoType $lpSrcStr cchSrc *lpCharType
dll kernel32 #FoldString dwMapFlags $lpSrcStr cchSrc $lpDestStr cchDest
def MAX_DEFAULTCHAR  2
def CAL_ICALINTVALUE  0x1
def CAL_SCALNAME     0x2
def CAL_IYEAROFFSETRANGE  0x3
def CAL_SERASTRING   0x4
def CAL_SSHORTDATE   0x5
def CAL_SLONGDATE    0x6
def CAL_SDAYNAME1    0x7
def CAL_SDAYNAME2    0x8
def CAL_SDAYNAME3    0x9
def CAL_SDAYNAME4    0xA
def CAL_SDAYNAME5    0xB
def CAL_SDAYNAME6    0xC
def CAL_SDAYNAME7    0xD
def CAL_SABBREVDAYNAME1  0xE
def CAL_SABBREVDAYNAME2  0xF
def CAL_SABBREVDAYNAME3  0x10
def CAL_SABBREVDAYNAME4  0x11
def CAL_SABBREVDAYNAME5  0x12
def CAL_SABBREVDAYNAME6  0x13
def CAL_SABBREVDAYNAME7  0x14
def CAL_SMONTHNAME1  0x15
def CAL_SMONTHNAME2  0x16
def CAL_SMONTHNAME3  0x17
def CAL_SMONTHNAME4  0x18
def CAL_SMONTHNAME5  0x19
def CAL_SMONTHNAME6  0x1A
def CAL_SMONTHNAME7  0x1B
def CAL_SMONTHNAME8  0x1C
def CAL_SMONTHNAME9  0x1D
def CAL_SMONTHNAME10  0x1E
def CAL_SMONTHNAME11  0x1F
def CAL_SMONTHNAME12  0x20
def CAL_SMONTHNAME13  0x21
def CAL_SABBREVMONTHNAME1  0x22
def CAL_SABBREVMONTHNAME2  0x23
def CAL_SABBREVMONTHNAME3  0x24
def CAL_SABBREVMONTHNAME4  0x25
def CAL_SABBREVMONTHNAME5  0x26
def CAL_SABBREVMONTHNAME6  0x27
def CAL_SABBREVMONTHNAME7  0x28
def CAL_SABBREVMONTHNAME8  0x29
def CAL_SABBREVMONTHNAME9  0x2A
def CAL_SABBREVMONTHNAME10  0x2B
def CAL_SABBREVMONTHNAME11  0x2C
def CAL_SABBREVMONTHNAME12  0x2D
def CAL_SABBREVMONTHNAME13  0x2E
def ENUM_ALL_CALENDARS  0xFFFF
def CAL_GREGORIAN    1
def CAL_GREGORIAN_US  2
def CAL_JAPAN        3
def CAL_TAIWAN       4
def CAL_KOREA        5
type CPINFO MaxCharSize !DefaultChar[MAX_DEFAULTCHAR] !LeadByte[MAX_LEADBYTES]
type NUMBERFMT NumDigits LeadingZero Grouping $lpDecimalSep $lpThousandSep NegativeOrder
type CURRENCYFMT NumDigits LeadingZero Grouping $lpDecimalSep $lpThousandSep NegativeOrder PositiveOrder $lpCurrencySymbol
dll KERNEL32 #EnumTimeFormats lpTimeFmtEnumProc Locale dwFlags
dll KERNEL32 #EnumDateFormats lpDateFmtEnumProc Locale dwFlags
dll KERNEL32 #IsValidLocale Locale dwFlags
dll KERNEL32 #ConvertDefaultLocale Locale
dll KERNEL32 #GetThreadLocale
dll KERNEL32 #EnumSystemLocales lpLocaleEnumProc dwFlags
dll KERNEL32 #EnumSystemCodePages lpCodePageEnumProc dwFlags
type COORD @x @y
type SMALL_RECT @Left @Top @Right @Bottom
type KEY_EVENT_RECORD bKeyDown @wRepeatCount @wVirtualKeyCode @wVirtualScanCode !uChar dwControlKeyState
def RIGHT_ALT_PRESSED  0x1
def LEFT_ALT_PRESSED  0x2
def RIGHT_CTRL_PRESSED  0x4
def LEFT_CTRL_PRESSED  0x8
def SHIFT_PRESSED    0x10
def NUMLOCK_ON       0x20
def SCROLLLOCK_ON    0x40
def CAPSLOCK_ON      0x80
def ENHANCED_KEY     0x100
type MOUSE_EVENT_RECORD COORD'dwMousePosition dwButtonState dwControlKeyState dwEventFlags
def FROM_LEFT_1ST_BUTTON_PRESSED  0x1
def RIGHTMOST_BUTTON_PRESSED  0x2
def FROM_LEFT_2ND_BUTTON_PRESSED  0x4
def FROM_LEFT_3RD_BUTTON_PRESSED  0x8
def FROM_LEFT_4TH_BUTTON_PRESSED  0x10
def MOUSE_MOVED      0x1
def DOUBLE_CLICK     0x2
type WINDOW_BUFFER_SIZE_RECORD COORD'dwSize
type MENU_EVENT_RECORD dwCommandId
type FOCUS_EVENT_RECORD bSetFocus
def KEY_EVENT        0x1
def mouse_eventC     0x2
def WINDOW_BUFFER_SIZE_EVENT  0x4
def MENU_EVENT       0x8
def FOCUS_EVENT      0x10
type CHAR_INFO @Char @Attributes
def FOREGROUND_BLUE  0x1
def FOREGROUND_GREEN  0x2
def FOREGROUND_RED   0x4
def FOREGROUND_INTENSITY  0x8
def BACKGROUND_BLUE  0x10
def BACKGROUND_GREEN  0x20
def BACKGROUND_RED   0x40
def BACKGROUND_INTENSITY  0x80
type CONSOLE_SCREEN_BUFFER_INFO COORD'dwSize COORD'dwCursorPosition @wAttributes SMALL_RECT'srWindow COORD'dwMaximumWindowSize
type CONSOLE_CURSOR_INFO dwSize bVisible
def CTRL_C_EVENT     0
def CTRL_BREAK_EVENT  1
def CTRL_CLOSE_EVENT  2
def CTRL_LOGOFF_EVENT  5
def CTRL_SHUTDOWN_EVENT  6
def ENABLE_PROCESSED_INPUT  0x1
def ENABLE_LINE_INPUT  0x2
def ENABLE_ECHO_INPUT  0x4
def ENABLE_WINDOW_INPUT  0x8
def ENABLE_MOUSE_INPUT  0x10
def ENABLE_PROCESSED_OUTPUT  0x1
def ENABLE_WRAP_AT_EOL_OUTPUT  0x2
dll kernel32 #ReadConsoleOutput hConsoleOutput CHAR_INFO*lpBuffer COORD*dwBufferSize COORD*dwBufferCoord SMALL_RECT*lpReadRegion
dll kernel32 #WriteConsoleOutput hConsoleOutput CHAR_INFO*lpBuffer COORD*dwBufferSize COORD*dwBufferCoord SMALL_RECT*lpWriteRegion
dll kernel32 #ReadConsoleOutputCharacter hConsoleOutput $lpCharacter nLength COORD*dwReadCoord *lpNumberOfCharsRead
dll kernel32 #ReadConsoleOutputAttribute hConsoleOutput *lpAttribute nLength COORD*dwReadCoord *lpNumberOfAttrsRead
dll kernel32 #WriteConsoleOutputCharacter hConsoleOutput $lpCharacter nLength COORD*dwWriteCoord *lpNumberOfCharsWritten
dll kernel32 #WriteConsoleOutputAttribute hConsoleOutput @*lpAttribute nLength COORD*dwWriteCoord *lpNumberOfAttrsWritten
dll kernel32 #FillConsoleOutputCharacter hConsoleOutput !cCharacter nLength COORD*dwWriteCoord *lpNumberOfCharsWritten
dll kernel32 #FillConsoleOutputAttribute hConsoleOutput wAttribute nLength COORD*dwWriteCoord *lpNumberOfAttrsWritten
dll kernel32 #GetConsoleMode hConsoleHandle *lpMode
dll kernel32 #GetNumberOfConsoleInputEvents hConsoleInput *lpNumberOfEvents
dll kernel32 #GetConsoleScreenBufferInfo hConsoleOutput CONSOLE_SCREEN_BUFFER_INFO*lpConsoleScreenBufferInfo
dll kernel32 #GetLargestConsoleWindowSize hConsoleOutput
dll kernel32 #GetConsoleCursorInfo hConsoleOutput CONSOLE_CURSOR_INFO*lpConsoleCursorInfo
dll kernel32 #GetNumberOfConsoleMouseButtons *lpNumberOfMouseButtons
dll kernel32 #SetConsoleMode hConsoleHandle dwMode
dll kernel32 #SetConsoleActiveScreenBuffer hConsoleOutput
dll kernel32 #FlushConsoleInputBuffer hConsoleInput
dll kernel32 #SetConsoleScreenBufferSize hConsoleOutput COORD*dwSize
dll kernel32 #SetConsoleCursorPosition hConsoleOutput COORD*dwCursorPosition
dll kernel32 #SetConsoleCursorInfo hConsoleOutput CONSOLE_CURSOR_INFO*lpConsoleCursorInfo
dll kernel32 #ScrollConsoleScreenBuffer hConsoleOutput SMALL_RECT*lpScrollRectangle SMALL_RECT*lpClipRectangle COORD*dwDestinationOrigin CHAR_INFO*lpFill
dll kernel32 #SetConsoleWindowInfo hConsoleOutput bAbsolute SMALL_RECT*lpConsoleWindow
dll kernel32 #SetConsoleTextAttribute hConsoleOutput wAttributes
dll kernel32 #SetConsoleCtrlHandler HandlerRoutine Add
dll kernel32 #GenerateConsoleCtrlEvent dwCtrlEvent dwProcessGroupId
dll kernel32 #AllocConsole
dll kernel32 #FreeConsole
dll kernel32 #GetConsoleTitle $lpConsoleTitle nSize
dll kernel32 #SetConsoleTitle $lpConsoleTitle
dll kernel32 #ReadConsole hConsoleInput !*lpBuffer nNumberOfCharsToRead *lpNumberOfCharsRead !*lpReserved
dll kernel32 #WriteConsole hConsoleOutput !*lpBuffer nNumberOfCharsToWrite *lpNumberOfCharsWritten !*lpReserved
def CONSOLE_TEXTMODE_BUFFER  1
dll kernel32 #CreateConsoleScreenBuffer dwDesiredAccess dwShareMode SECURITY_ATTRIBUTES*lpSecurityAttributes dwFlags !*lpScreenBufferData
dll kernel32 #GetConsoleCP
dll kernel32 #SetConsoleCP wCodePageID
dll kernel32 #GetConsoleOutputCP
dll kernel32 #SetConsoleOutputCP wCodePageID
def R2_BLACK         1
def R2_NOTMERGEPEN   2
def R2_MASKNOTPEN    3
def R2_NOTCOPYPEN    4
def R2_MASKPENNOT    5
def R2_NOT           6
def R2_XORPEN        7
def R2_NOTMASKPEN    8
def R2_MASKPEN       9
def R2_NOTXORPEN     10
def R2_NOP           11
def R2_MERGENOTPEN   12
def R2_COPYPEN       13
def R2_MERGEPENNOT   14
def R2_MERGEPEN      15
def R2_WHITE         16
def R2_LAST          16
def SRCCOPY          0xCC0020
def SRCPAINT         0xEE0086
def SRCAND           0x8800C6
def SRCINVERT        0x660046
def SRCERASE         0x440328
def NOTSRCCOPY       0x330008
def NOTSRCERASE      0x1100A6
def MERGECOPY        0xC000CA
def MERGEPAINT       0xBB0226
def PATCOPY          0xF00021
def PATPAINT         0xFB0A09
def PATINVERT        0x5A0049
def DSTINVERT        0x550009
def BLACKNESS        0x42
def WHITENESS        0xFF0062
def GDI_ERROR        0xFFFF
def HGDI_ERROR       0xFFFF
def ERRORAPI         0
def NULLREGION       1
def SIMPLEREGION     2
def COMPLEXREGION    3
def RGN_AND          1
def RGN_OR           2
def RGN_XOR          3
def RGN_DIFF         4
def RGN_COPY         5
def RGN_MIN          RGN_AND
def RGN_MAX          RGN_COPY
def BLACKONWHITE     1
def WHITEONBLACK     2
def COLORONCOLOR     3
def HALFTONE         4
def MAXSTRETCHBLTMODE  4
def ALTERNATE        1
def WINDING          2
def POLYFILL_LAST    2
def TA_NOUPDATECP    0
def TA_UPDATECP      1
def TA_LEFT          0
def TA_RIGHT         2
def TA_CENTER        6
def TA_TOP           0
def TA_BOTTOM        8
def TA_BASELINE      24
def TA_MASK          (TA_BASELINE + TA_CENTER + TA_UPDATECP)
def VTA_BASELINE     TA_BASELINE
def VTA_LEFT         TA_BOTTOM
def VTA_RIGHT        TA_TOP
def VTA_CENTER       TA_CENTER
def VTA_BOTTOM       TA_RIGHT
def VTA_TOP          TA_LEFT
def ETO_GRAYED       1
def ETO_OPAQUE       2
def ETO_CLIPPED      4
def ASPECT_FILTERING  0x1
def DCB_RESET        0x1
def DCB_ACCUMULATE   0x2
def DCB_DIRTY        DCB_ACCUMULATE
def DCB_SET          (DCB_RESET |  DCB_ACCUMULATE)
def DCB_ENABLE       0x4
def DCB_DISABLE      0x8
def META_SETBKCOLOR  0x201
def META_SETBKMODE   0x102
def META_SETMAPMODE  0x103
def META_SETROP2     0x104
def META_SETRELABS   0x105
def META_SETPOLYFILLMODE  0x106
def META_SETSTRETCHBLTMODE  0x107
def META_SETTEXTCHAREXTRA  0x108
def META_SETTEXTCOLOR  0x209
def META_SETTEXTJUSTIFICATION  0x20A
def META_SETWINDOWORG  0x20B
def META_SETWINDOWEXT  0x20C
def META_SETVIEWPORTORG  0x20D
def META_SETVIEWPORTEXT  0x20E
def META_OFFSETWINDOWORG  0x20F
def META_SCALEWINDOWEXT  0x410
def META_OFFSETVIEWPORTORG  0x211
def META_SCALEVIEWPORTEXT  0x412
def META_LINETO      0x213
def META_MOVETO      0x214
def META_EXCLUDECLIPRECT  0x415
def META_INTERSECTCLIPRECT  0x416
def META_ARC         0x817
def META_ELLIPSE     0x418
def META_FLOODFILL   0x419
def META_PIE         0x81A
def META_RECTANGLE   0x41B
def META_ROUNDRECT   0x61C
def META_PATBLT      0x61D
def META_SAVEDC      0x1E
def META_SETPIXEL    0x41F
def META_OFFSETCLIPRGN  0x220
def META_TEXTOUT     0x521
def META_BITBLT      0x922
def META_STRETCHBLT  0xB23
def META_POLYGON     0x324
def META_POLYLINE    0x325
def META_ESCAPE      0x626
def META_RESTOREDC   0x127
def META_FILLREGION  0x228
def META_FRAMEREGION  0x429
def META_INVERTREGION  0x12A
def META_PAINTREGION  0x12B
def META_SELECTCLIPREGION  0x12C
def META_SELECTOBJECT  0x12D
def META_SETTEXTALIGN  0x12E
def META_CHORD       0x830
def META_SETMAPPERFLAGS  0x231
def META_EXTTEXTOUT  0xA32
def META_SETDIBTODEV  0xD33
def META_SELECTPALETTE  0x234
def META_REALIZEPALETTE  0x35
def META_ANIMATEPALETTE  0x436
def META_SETPALENTRIES  0x37
def META_POLYPOLYGON  0x538
def META_RESIZEPALETTE  0x139
def META_DIBBITBLT   0x940
def META_DIBSTRETCHBLT  0xB41
def META_DIBCREATEPATTERNBRUSH  0x142
def META_STRETCHDIB  0xF43
def META_EXTFLOODFILL  0x548
def META_DELETEOBJECT  0x1F0
def META_CREATEPALETTE  0xF7
def META_CREATEPATTERNBRUSH  0x1F9
def META_CREATEPENINDIRECT  0x2FA
def META_CREATEFONTINDIRECT  0x2FB
def META_CREATEBRUSHINDIRECT  0x2FC
def META_CREATEREGION  0x6FF
def NEWFRAME         1
def AbortDocC        2
def NEXTBAND         3
def SETCOLORTABLE    4
def GETCOLORTABLE    5
def FLUSHOUTPUT      6
def DRAFTMODE        7
def QUERYESCSUPPORT  8
def SETABORTPROC     9
def StartDocC        10
def EndDocC          11
def GETPHYSPAGESIZE  12
def GETPRINTINGOFFSET  13
def GETSCALINGFACTOR  14
def MFCOMMENT        15
def GETPENWIDTH      16
def SETCOPYCOUNT     17
def SELECTPAPERSOURCE  18
def DEVICEDATA       19
def PASSTHROUGH      19
def GETTECHNOLGY     20
def GETTECHNOLOGY    20
def SETLINECAP       21
def SETLINEJOIN      22
def SetMiterLimitC   23
def BANDINFO         24
def DRAWPATTERNRECT  25
def GETVECTORPENSIZE  26
def GETVECTORBRUSHSIZE  27
def ENABLEDUPLEX     28
def GETSETPAPERBINS  29
def GETSETPRINTORIENT  30
def ENUMPAPERBINS    31
def SETDIBSCALING    32
def EPSPRINTING      33
def ENUMPAPERMETRICS  34
def GETSETPAPERMETRICS  35
def POSTSCRIPT_DATA  37
def POSTSCRIPT_IGNORE  38
def MOUSETRAILS      39
def GETDEVICEUNITS   42
def GETEXTENDEDTEXTMETRICS  256
def GETEXTENTTABLE   257
def GETPAIRKERNTABLE  258
def GETTRACKKERNTABLE  259
def ExtTextOutC      512
def GETFACENAME      513
def DOWNLOADFACE     514
def ENABLERELATIVEWIDTHS  768
def ENABLEPAIRKERNING  769
def SETKERNTRACK     770
def SETALLJUSTVALUES  771
def SETCHARSET       772
def StretchBltC      2048
def GETSETSCREENPARAMS  3072
def BEGIN_PATH       4096
def CLIP_TO_PATH     4097
def END_PATH         4098
def EXT_DEVICE_CAPS  4099
def RESTORE_CTM      4100
def SAVE_CTM         4101
def SET_ARC_DIRECTION  4102
def SET_BACKGROUND_COLOR  4103
def SET_POLY_MODE    4104
def SET_SCREEN_ANGLE  4105
def SET_SPREAD       4106
def TRANSFORM_CTM    4107
def SET_CLIP_BOX     4108
def SET_BOUNDS       4109
def SET_MIRROR_MODE  4110
def OPENCHANNEL      4110
def DOWNLOADHEADER   4111
def CLOSECHANNEL     4112
def POSTSCRIPT_PASSTHROUGH  4115
def ENCAPSULATED_POSTSCRIPT  4116
def SP_NOTREPORTED   0x4000
def SP_ERROR         (-1)
def SP_APPABORT      (-2)
def SP_USERABORT     (-3)
def SP_OUTOFDISK     (-4)
def SP_OUTOFMEMORY   (-5)
def PR_JOBSTATUS     0x0
def OBJ_PEN          1
def OBJ_BRUSH        2
def OBJ_DC           3
def OBJ_METADC       4
def OBJ_PAL          5
def OBJ_FONT         6
def OBJ_BITMAP       7
def OBJ_REGION       8
def OBJ_METAFILE     9
def OBJ_MEMDC        10
def OBJ_EXTPEN       11
def OBJ_ENHMETADC    12
def OBJ_ENHMETAFILE  13
def MWT_IDENTITY     1
def MWT_LEFTMULTIPLY  2
def MWT_RIGHTMULTIPLY  3
def MWT_MIN          MWT_IDENTITY
def MWT_MAX          MWT_RIGHTMULTIPLY
type XFORM ^eM11 ^eM12 ^eM21 ^eM22 ^eDx ^eDy
type BITMAP bmType bmWidth bmHeight bmWidthBytes @bmPlanes @bmBitsPixel bmBits
type RGBTRIPLE !rgbtBlue !rgbtGreen !rgbtRed
type RGBQUAD !rgbBlue !rgbGreen !rgbRed !rgbReserved
type BITMAPCOREHEADER bcSize @bcWidth @bcHeight @bcPlanes @bcBitCount
type BITMAPINFOHEADER biSize biWidth biHeight @biPlanes @biBitCount biCompression biSizeImage biXPelsPerMeter biYPelsPerMeter biClrUsed biClrImportant
def BI_RGB           0
def BI_RLE8          1
def BI_RLE4          2
def BI_bitfields     3
type BITMAPINFO BITMAPINFOHEADER'bmiHeader RGBQUAD'bmiColors
type BITMAPCOREINFO BITMAPCOREHEADER'bmciHeader RGBTRIPLE'bmciColors
type BITMAPFILEHEADER @bfType bfSize @bfReserved1 @bfReserved2 bfOffBits
type HANDLETABLE objectHandle[1]
type METARECORD rdSize @rdFunction @rdParm[1]
type METAFILEPICT mm xExt yExt hMF
type METAHEADER @mtType @mtHeaderSize @mtVersion mtSize @mtNoObjects mtMaxRecord @mtNoParameters
type ENHMETARECORD iType nSize dParm[1]
type SIZEL cx cy
type ENHMETAHEADER iType nSize RECTL'rclBounds RECTL'rclFrame dSignature nVersion nBytes nRecords @nHandles @sReserved nDescription offDescription nPalEntries SIZEL'szlDevice SIZEL'szlMillimeters
type TEXTMETRIC tmHeight tmAscent tmDescent tmInternalLeading tmExternalLeading tmAveCharWidth tmMaxCharWidth tmWeight tmOverhang tmDigitizedAspectX tmDigitizedAspectY !tmFirstChar !tmLastChar !tmDefaultChar !tmBreakChar !tmItalic !tmUnderlined !tmStruckOut !tmPitchAndFamily !tmCharSet
def NTM_REGULAR      0x40
def NTM_BOLD         0x20
def NTM_ITALIC       0x1
type NEWTEXTMETRIC tmHeight tmAscent tmDescent tmInternalLeading tmExternalLeading tmAveCharWidth tmMaxCharWidth tmWeight tmOverhang tmDigitizedAspectX tmDigitizedAspectY !tmFirstChar !tmLastChar !tmDefaultChar !tmBreakChar !tmItalic !tmUnderlined !tmStruckOut !tmPitchAndFamily !tmCharSet ntmFlags ntmSizeEM ntmCellHeight ntmAveWidth
def TMPF_FIXED_PITCH  0x1
def TMPF_VECTOR      0x2
def TMPF_DEVICE      0x8
def TMPF_TRUETYPE    0x4
type PELARRAY paXCount paYCount paXExt paYExt @paRGBs
type LOGBRUSH lbStyle lbColor lbHatch
type LOGPEN lopnStyle POINT'lopnWidth lopnColor
type EXTLOGPEN elpPenStyle elpWidth elpBrushStyle elpColor elpHatch elpNumEntries elpStyleEntry[1]
type PALETTEENTRY !peRed !peGreen !peBlue !peFlags
type LOGPALETTE @palVersion @palNumEntries PALETTEENTRY'palPalEntry[1]
def LF_FACESIZE      32
def LF_FULLFACESIZE  64
type LOGFONT lfHeight lfWidth lfEscapement lfOrientation lfWeight !lfItalic !lfUnderline !lfStrikeOut !lfCharSet !lfOutPrecision !lfClipPrecision !lfQuality !lfPitchAndFamily !lfFaceName[LF_FACESIZE]
type NONCLIENTMETRICS cbSize iBorderWidth iScrollWidth iScrollHeight iCaptionWidth iCaptionHeight LOGFONT'lfCaptionFont iSMCaptionWidth iSMCaptionHeight LOGFONT'lfSMCaptionFont iMenuWidth iMenuHeight LOGFONT'lfMenuFont LOGFONT'lfStatusFont LOGFONT'lfMessageFont
type ENUMLOGFONT LOGFONT'elfLogFont !elfFullName[LF_FULLFACESIZE] !elfStyle[LF_FACESIZE]
def OUT_DEFAULT_PRECIS  0
def OUT_STRING_PRECIS  1
def OUT_CHARACTER_PRECIS  2
def OUT_STROKE_PRECIS  3
def OUT_TT_PRECIS    4
def OUT_DEVICE_PRECIS  5
def OUT_RASTER_PRECIS  6
def OUT_TT_ONLY_PRECIS  7
def OUT_OUTLINE_PRECIS  8
def CLIP_DEFAULT_PRECIS  0
def CLIP_CHARACTER_PRECIS  1
def CLIP_STROKE_PRECIS  2
def CLIP_MASK        0xF
def CLIP_LH_ANGLES   16
def CLIP_TT_ALWAYS   32
def CLIP_EMBEDDED    128
def DEFAULT_QUALITY  0
def DRAFT_QUALITY    1
def PROOF_QUALITY    2
def DEFAULT_PITCH    0
def FIXED_PITCH      1
def VARIABLE_PITCH   2
def ANSI_CHARSET     0
def DEFAULT_CHARSET  1
def SYMBOL_CHARSET   2
def SHIFTJIS_CHARSET  128
def HANGEUL_CHARSET  129
def CHINESEBIG5_CHARSET  136
def OEM_CHARSET      255
def FF_DONTCARE      0
def FF_ROMAN         16
def FF_SWISS         32
def FF_MODERN        48
def FF_SCRIPT        64
def FF_DECORATIVE    80
def FW_DONTCARE      0
def FW_THIN          100
def FW_EXTRALIGHT    200
def FW_LIGHT         300
def FW_NORMAL        400
def FW_MEDIUM        500
def FW_SEMIBOLD      600
def FW_BOLD          700
def FW_EXTRABOLD     800
def FW_HEAVY         900
def FW_ULTRALIGHT    FW_EXTRALIGHT
def FW_REGULAR       FW_NORMAL
def FW_DEMIBOLD      FW_SEMIBOLD
def FW_ULTRABOLD     FW_EXTRABOLD
def FW_BLACK         FW_HEAVY
def PANOSE_COUNT     10
def PAN_FAMILYTYPE_INDEX  0
def PAN_SERIFSTYLE_INDEX  1
def PAN_WEIGHT_INDEX  2
def PAN_PROPORTION_INDEX  3
def PAN_CONTRAST_INDEX  4
def PAN_STROKEVARIATION_INDEX  5
def PAN_ARMSTYLE_INDEX  6
def PAN_LETTERFORM_INDEX  7
def PAN_MIDLINE_INDEX  8
def PAN_XHEIGHT_INDEX  9
def PAN_CULTURE_LATIN  0
type PANOSE ulculture !bFamilyType !bSerifStyle !bWeight !bProportion !bContrast !bStrokeVariation !bArmStyle !bLetterform !bMidline !bXHeight
def PAN_ANY          0
def PAN_NO_FIT       1
def PAN_FAMILY_TEXT_DISPLAY  2
def PAN_FAMILY_SCRIPT  3
def PAN_FAMILY_DECORATIVE  4
def PAN_FAMILY_PICTORIAL  5
def PAN_SERIF_COVE   2
def PAN_SERIF_OBTUSE_COVE  3
def PAN_SERIF_SQUARE_COVE  4
def PAN_SERIF_OBTUSE_SQUARE_COVE  5
def PAN_SERIF_SQUARE  6
def PAN_SERIF_THIN   7
def PAN_SERIF_BONE   8
def PAN_SERIF_EXAGGERATED  9
def PAN_SERIF_TRIANGLE  10
def PAN_SERIF_NORMAL_SANS  11
def PAN_SERIF_OBTUSE_SANS  12
def PAN_SERIF_PERP_SANS  13
def PAN_SERIF_FLARED  14
def PAN_SERIF_ROUNDED  15
def PAN_WEIGHT_VERY_LIGHT  2
def PAN_WEIGHT_LIGHT  3
def PAN_WEIGHT_THIN  4
def PAN_WEIGHT_BOOK  5
def PAN_WEIGHT_MEDIUM  6
def PAN_WEIGHT_DEMI  7
def PAN_WEIGHT_BOLD  8
def PAN_WEIGHT_HEAVY  9
def PAN_WEIGHT_BLACK  10
def PAN_WEIGHT_NORD  11
def PAN_PROP_OLD_STYLE  2
def PAN_PROP_MODERN  3
def PAN_PROP_EVEN_WIDTH  4
def PAN_PROP_EXPANDED  5
def PAN_PROP_CONDENSED  6
def PAN_PROP_VERY_EXPANDED  7
def PAN_PROP_VERY_CONDENSED  8
def PAN_PROP_MONOSPACED  9
def PAN_CONTRAST_NONE  2
def PAN_CONTRAST_VERY_LOW  3
def PAN_CONTRAST_LOW  4
def PAN_CONTRAST_MEDIUM_LOW  5
def PAN_CONTRAST_MEDIUM  6
def PAN_CONTRAST_MEDIUM_HIGH  7
def PAN_CONTRAST_HIGH  8
def PAN_CONTRAST_VERY_HIGH  9
def PAN_STROKE_GRADUAL_DIAG  2
def PAN_STROKE_GRADUAL_TRAN  3
def PAN_STROKE_GRADUAL_VERT  4
def PAN_STROKE_GRADUAL_HORZ  5
def PAN_STROKE_RAPID_VERT  6
def PAN_STROKE_RAPID_HORZ  7
def PAN_STROKE_INSTANT_VERT  8
def PAN_STRAIGHT_ARMS_HORZ  2
def PAN_STRAIGHT_ARMS_WEDGE  3
def PAN_STRAIGHT_ARMS_VERT  4
def PAN_STRAIGHT_ARMS_SINGLE_SERIF  5
def PAN_STRAIGHT_ARMS_DOUBLE_SERIF  6
def PAN_BENT_ARMS_HORZ  7
def PAN_BENT_ARMS_WEDGE  8
def PAN_BENT_ARMS_VERT  9
def PAN_BENT_ARMS_SINGLE_SERIF  10
def PAN_BENT_ARMS_DOUBLE_SERIF  11
def PAN_LETT_NORMAL_CONTACT  2
def PAN_LETT_NORMAL_WEIGHTED  3
def PAN_LETT_NORMAL_BOXED  4
def PAN_LETT_NORMAL_FLATTENED  5
def PAN_LETT_NORMAL_ROUNDED  6
def PAN_LETT_NORMAL_OFF_CENTER  7
def PAN_LETT_NORMAL_SQUARE  8
def PAN_LETT_OBLIQUE_CONTACT  9
def PAN_LETT_OBLIQUE_WEIGHTED  10
def PAN_LETT_OBLIQUE_BOXED  11
def PAN_LETT_OBLIQUE_FLATTENED  12
def PAN_LETT_OBLIQUE_ROUNDED  13
def PAN_LETT_OBLIQUE_OFF_CENTER  14
def PAN_LETT_OBLIQUE_SQUARE  15
def PAN_MIDLINE_STANDARD_TRIMMED  2
def PAN_MIDLINE_STANDARD_POINTED  3
def PAN_MIDLINE_STANDARD_SERIFED  4
def PAN_MIDLINE_HIGH_TRIMMED  5
def PAN_MIDLINE_HIGH_POINTED  6
def PAN_MIDLINE_HIGH_SERIFED  7
def PAN_MIDLINE_CONSTANT_TRIMMED  8
def PAN_MIDLINE_CONSTANT_POINTED  9
def PAN_MIDLINE_CONSTANT_SERIFED  10
def PAN_MIDLINE_LOW_TRIMMED  11
def PAN_MIDLINE_LOW_POINTED  12
def PAN_MIDLINE_LOW_SERIFED  13
def PAN_XHEIGHT_CONSTANT_SMALL  2
def PAN_XHEIGHT_CONSTANT_STD  3
def PAN_XHEIGHT_CONSTANT_LARGE  4
def PAN_XHEIGHT_DUCKING_SMALL  5
def PAN_XHEIGHT_DUCKING_STD  6
def PAN_XHEIGHT_DUCKING_LARGE  7
def ELF_VENDOR_SIZE  4
type EXTLOGFONT LOGFONT'elfLogFont !elfFullName[LF_FULLFACESIZE] !elfStyle[LF_FACESIZE] elfVersion elfStyleSize elfMatch elfReserved !elfVendorId[ELF_VENDOR_SIZE] elfCulture PANOSE'elfPanose
def ELF_VERSION      0
def ELF_CULTURE_LATIN  0
def RASTER_FONTTYPE  0x1
def DEVICE_FONTTYPE  0x2
def TRUETYPE_FONTTYPE  0x4
def PC_RESERVED      0x1
def PC_EXPLICIT      0x2
def PC_NOCOLLAPSE    0x4
def TRANSPARENT      1
def OPAQUE           2
def BKMODE_LAST      2
def GM_COMPATIBLE    1
def GM_ADVANCED      2
def GM_LAST          2
def PT_CLOSEFIGURE   0x1
def PT_LINETO        0x2
def PT_BEZIERTO      0x4
def PT_MOVETO        0x6
def MM_TEXT          1
def MM_LOMETRIC      2
def MM_HIMETRIC      3
def MM_LOENGLISH     4
def MM_HIENGLISH     5
def MM_TWIPS         6
def MM_ISOTROPIC     7
def MM_ANISOTROPIC   8
def MM_MIN           MM_TEXT
def MM_MAX           MM_ANISOTROPIC
def MM_MAX_FIXEDSCALE  MM_TWIPS
def ABSOLUTE         1
def RELATIVE         2
def WHITE_BRUSH      0
def LTGRAY_BRUSH     1
def GRAY_BRUSH       2
def DKGRAY_BRUSH     3
def BLACK_BRUSH      4
def NULL_BRUSH       5
def HOLLOW_BRUSH     NULL_BRUSH
def WHITE_PEN        6
def BLACK_PEN        7
def NULL_PEN         8
def OEM_FIXED_FONT   10
def ANSI_FIXED_FONT  11
def ANSI_VAR_FONT    12
def SYSTEM_FONT      13
def DEVICE_DEFAULT_FONT  14
def DEFAULT_PALETTE  15
def SYSTEM_FIXED_FONT  16
def STOCK_LAST       16
def CLR_INVALID      0xFFFFFFFF
def BS_SOLID         0
def BS_NULL          1
def BS_HOLLOW        BS_NULL
def BS_HATCHED       2
def BS_PATTERN       3
def BS_INDEXED       4
def BS_DIBPATTERN    5
def BS_DIBPATTERNPT  6
def BS_PATTERN8X8    7
def BS_DIBPATTERN8X8  8
def HS_HORIZONTAL    0
def HS_VERTICAL      1
def HS_FDIAGONAL     2
def HS_BDIAGONAL     3
def HS_CROSS         4
def HS_DIAGCROSS     5
def HS_FDIAGONAL1    6
def HS_BDIAGONAL1    7
def HS_SOLID         8
def HS_DENSE1        9
def HS_DENSE2        10
def HS_DENSE3        11
def HS_DENSE4        12
def HS_DENSE5        13
def HS_DENSE6        14
def HS_DENSE7        15
def HS_DENSE8        16
def HS_NOSHADE       17
def HS_HALFTONE      18
def HS_SOLIDCLR      19
def HS_DITHEREDCLR   20
def HS_SOLIDTEXTCLR  21
def HS_DITHEREDTEXTCLR  22
def HS_SOLIDBKCLR    23
def HS_DITHEREDBKCLR  24
def HS_API_MAX       25
def PS_SOLID         0
def PS_DASH          1
def PS_DOT           2
def PS_DASHDOT       3
def PS_DASHDOTDOT    4
def PS_NULL          5
def PS_INSIDEFRAME   6
def PS_USERSTYLE     7
def PS_ALTERNATE     8
def PS_STYLE_MASK    0xF
def PS_ENDCAP_ROUND  0x0
def PS_ENDCAP_SQUARE  0x100
def PS_ENDCAP_FLAT   0x200
def PS_ENDCAP_MASK   0xF00
def PS_JOIN_ROUND    0x0
def PS_JOIN_BEVEL    0x1000
def PS_JOIN_MITER    0x2000
def PS_JOIN_MASK     0xF000
def PS_COSMETIC      0x0
def PS_GEOMETRIC     0x10000
def PS_TYPE_MASK     0xF0000
def AD_COUNTERCLOCKWISE  1
def AD_CLOCKWISE     2
def DRIVERVERSION    0
def TECHNOLOGY       2
def HORZSIZE         4
def VERTSIZE         6
def HORZRES          8
def VERTRES          10
def BITSPIXEL        12
def PLANES           14
def NUMBRUSHES       16
def NUMPENS          18
def NUMMARKERS       20
def NUMFONTS         22
def NUMCOLORS        24
def PDEVICESIZE      26
def CURVECAPS        28
def LINECAPS         30
def POLYGONALCAPS    32
def TEXTCAPS         34
def CLIPCAPS         36
def RASTERCAPS       38
def ASPECTX          40
def ASPECTY          42
def ASPECTXY         44
def LOGPIXELSX       88
def LOGPIXELSY       90
def SIZEPALETTE      104
def NUMRESERVED      106
def COLORRES         108
def PHYSICALWIDTH    110
def PHYSICALHEIGHT   111
def PHYSICALOFFSETX  112
def PHYSICALOFFSETY  113
def SCALINGFACTORX   114
def SCALINGFACTORY   115
def DT_PLOTTER       0
def DT_RASDISPLAY    1
def DT_RASPRINTER    2
def DT_RASCAMERA     3
def DT_CHARSTREAM    4
def DT_METAFILE      5
def DT_DISPFILE      6
def CC_NONE          0
def CC_CIRCLES       1
def CC_PIE           2
def CC_CHORD         4
def CC_ELLIPSES      8
def CC_WIDE          16
def CC_STYLED        32
def CC_WIDESTYLED    64
def CC_INTERIORS     128
def CC_ROUNDRECT     256
def LC_NONE          0
def LC_POLYLINE      2
def LC_MARKER        4
def LC_POLYMARKER    8
def LC_WIDE          16
def LC_STYLED        32
def LC_WIDESTYLED    64
def LC_INTERIORS     128
def PC_NONE          0
def PC_POLYGON       1
def PC_RECTANGLE     2
def PC_WINDPOLYGON   4
def PC_TRAPEZOID     4
def PC_SCANLINE      8
def PC_WIDE          16
def PC_STYLED        32
def PC_WIDESTYLED    64
def PC_INTERIORS     128
def CP_NONE          0
def CP_RECTANGLE     1
def CP_REGION        2
def TC_OP_CHARACTER  0x1
def TC_OP_STROKE     0x2
def TC_CP_STROKE     0x4
def TC_CR_90         0x8
def TC_CR_ANY        0x10
def TC_SF_X_YINDEP   0x20
def TC_SA_DOUBLE     0x40
def TC_SA_INTEGER    0x80
def TC_SA_CONTIN     0x100
def TC_EA_DOUBLE     0x200
def TC_IA_ABLE       0x400
def TC_UA_ABLE       0x800
def TC_SO_ABLE       0x1000
def TC_RA_ABLE       0x2000
def TC_VA_ABLE       0x4000
def TC_RESERVED      0x8000
def TC_SCROLLBLT     0x10000
def RC_NONE          0
def RC_BITBLT        1
def RC_BANDING       2
def RC_SCALING       4
def RC_BITMAP64      8
def RC_GDI20_OUTPUT  0x10
def RC_GDI20_STATE   0x20
def RC_SAVEBITMAP    0x40
def RC_DI_BITMAP     0x80
def RC_PALETTE       0x100
def RC_DIBTODEV      0x200
def RC_BIGFONT       0x400
def RC_STRETCHBLT    0x800
def RC_FLOODFILL     0x1000
def RC_STRETCHDIB    0x2000
def RC_OP_DX_OUTPUT  0x4000
def RC_DEVBITS       0x8000
def DIB_RGB_COLORS   0
def DIB_PAL_COLORS   1
def DIB_PAL_INDICES  2
def DIB_PAL_PHYSINDICES  2
def DIB_PAL_LOGINDICES  4
def SYSPAL_ERROR     0
def SYSPAL_STATIC    1
def SYSPAL_NOSTATIC  2
def CBM_CREATEDIB    0x2
def CBM_INIT         0x4
def FLOODFILLBORDER  0
def FLOODFILLSURFACE  1
def CCHDEVICENAME    32
def CCHFORMNAME      32
type DEVMODE !dmDeviceName[CCHDEVICENAME] @dmSpecVersion @dmDriverVersion @dmSize @dmDriverExtra dmFields @dmOrientation @dmPaperSize @dmPaperLength @dmPaperWidth @dmScale @dmCopies @dmDefaultSource @dmPrintQuality @dmColor @dmDuplex @dmYResolution @dmTTOption @dmCollate !dmFormName[CCHFORMNAME] @dmUnusedPadding @dmBitsPerPel dmPelsWidth dmPelsHeight dmDisplayFlags dmDisplayFrequency
def DM_SPECVERSION   0x320
def DM_ORIENTATION   0x1
def DM_PAPERSIZE     0x2
def DM_PAPERLENGTH   0x4
def DM_PAPERWIDTH    0x8
def DM_SCALE         0x10
def DM_COPIES        0x100
def DM_DEFAULTSOURCE  0x200
def DM_PRINTQUALITY  0x400
def DM_COLOR         0x800
def DM_DUPLEX        0x1000
def DM_YRESOLUTION   0x2000
def DM_TTOPTION      0x4000
def DM_COLLATE       0x8000
def DM_FORMNAME      0x10000
def DMORIENT_PORTRAIT  1
def DMORIENT_LANDSCAPE  2
def DMPAPER_LETTER   1
def DMPAPER_FIRST    DMPAPER_LETTER
def DMPAPER_LETTERSMALL  2
def DMPAPER_TABLOID  3
def DMPAPER_LEDGER   4
def DMPAPER_LEGAL    5
def DMPAPER_STATEMENT  6
def DMPAPER_EXECUTIVE  7
def DMPAPER_A3       8
def DMPAPER_A4       9
def DMPAPER_A4SMALL  10
def DMPAPER_A5       11
def DMPAPER_B4       12
def DMPAPER_B5       13
def DMPAPER_FOLIO    14
def DMPAPER_QUARTO   15
def DMPAPER_10X14    16
def DMPAPER_11X17    17
def DMPAPER_NOTE     18
def DMPAPER_ENV_9    19
def DMPAPER_ENV_10   20
def DMPAPER_ENV_11   21
def DMPAPER_ENV_12   22
def DMPAPER_ENV_14   23
def DMPAPER_CSHEET   24
def DMPAPER_DSHEET   25
def DMPAPER_ESHEET   26
def DMPAPER_ENV_DL   27
def DMPAPER_ENV_C5   28
def DMPAPER_ENV_C3   29
def DMPAPER_ENV_C4   30
def DMPAPER_ENV_C6   31
def DMPAPER_ENV_C65  32
def DMPAPER_ENV_B4   33
def DMPAPER_ENV_B5   34
def DMPAPER_ENV_B6   35
def DMPAPER_ENV_ITALY  36
def DMPAPER_ENV_MONARCH  37
def DMPAPER_ENV_PERSONAL  38
def DMPAPER_FANFOLD_US  39
def DMPAPER_FANFOLD_STD_GERMAN  40
def DMPAPER_FANFOLD_LGL_GERMAN  41
def DMPAPER_LAST     DMPAPER_FANFOLD_LGL_GERMAN
def DMPAPER_USER     256
def DMBIN_UPPER      1
def DMBIN_FIRST      DMBIN_UPPER
def DMBIN_ONLYONE    1
def DMBIN_LOWER      2
def DMBIN_MIDDLE     3
def DMBIN_MANUAL     4
def DMBIN_ENVELOPE   5
def DMBIN_ENVMANUAL  6
def DMBIN_AUTO       7
def DMBIN_TRACTOR    8
def DMBIN_SMALLFMT   9
def DMBIN_LARGEFMT   10
def DMBIN_LARGECAPACITY  11
def DMBIN_CASSETTE   14
def DMBIN_LAST       DMBIN_CASSETTE
def DMBIN_USER       256
def DMRES_DRAFT      (-1)
def DMRES_LOW        (-2)
def DMRES_MEDIUM     (-3)
def DMRES_HIGH       (-4)
def DMCOLOR_MONOCHROME  1
def DMCOLOR_COLOR    2
def DMDUP_SIMPLEX    1
def DMDUP_VERTICAL   2
def DMDUP_HORIZONTAL  3
def DMTT_BITMAP      1
def DMTT_DOWNLOAD    2
def DMTT_SUBDEV      3
def DMCOLLATE_FALSE  0
def DMCOLLATE_TRUE   1
def DM_GRAYSCALE     0x1
def DM_INTERLACED    0x2
def RDH_RECTANGLES   1
type RGNDATAHEADER dwSize iType nCount nRgnSize RECT'rcBound
type RGNDATA RGNDATAHEADER'rdh !Buffer
type ABC abcA abcB abcC
type ABCFLOAT ^abcfA ^abcfB ^abcfC
type OUTLINETEXTMETRIC otmSize TEXTMETRIC'otmTextMetrics !otmFiller PANOSE'otmPanoseNumber otmfsSelection otmfsType otmsCharSlopeRise otmsCharSlopeRun otmItalicAngle otmEMSquare otmAscent otmDescent otmLineGap otmsCapEmHeight otmsXHeight RECT'otmrcFontBox otmMacAscent otmMacDescent otmMacLineGap otmusMinimumPPEM POINT'otmptSubscriptSize POINT'otmptSubscriptOffset POINT'otmptSuperscriptSize POINT'otmptSuperscriptOffset otmsStrikeoutSize otmsStrikeoutPosition otmsUnderscorePosition otmsUnderscoreSize $otmpFamilyName $otmpFaceName $otmpStyleName $otmpFullName
type POLYTEXT x y n $lpStr uiFlags RECT'rcl pdx
type FIXED @fract @Value
type MAT2 FIXED'eM11 FIXED'eM12 FIXED'eM21 FIXED'eM22
type GLYPHMETRICS gmBlackBoxX gmBlackBoxY POINT'gmptGlyphOrigin @gmCellIncX @gmCellIncY
def GGO_METRICS      0
def GGO_BITMAP       1
def GGO_NATIVE       2
def TT_POLYGON_TYPE  24
def TT_PRIM_LINE     1
def TT_PRIM_QSPLINE  2
type POINTFX FIXED'x FIXED'y
type TTPOLYCURVE @wType @cpfx POINTFX'apfx
type TTPOLYGONHEADER cb dwType POINTFX'pfxStart
type RASTERIZER_STATUS @nSize @wFlags @nLanguageID
def TT_AVAILABLE     0x1
def TT_ENABLED       0x2
dll gdi32 #AddFontResource $lpFileName
dll gdi32 #AnimatePalette hPalette wStartIndex wNumEntries PALETTEENTRY*lpPaletteColors
dll gdi32 #Arc hDC X1 Y1 X2 Y2 X3 Y3 X4 Y4
dll gdi32 #BitBlt hDestDC x y nWidth nHeight hSrcDC xSrc ySrc dwRop
dll gdi32 #CancelDC hDC
dll gdi32 #Chord hDC X1 Y1 X2 Y2 X3 Y3 X4 Y4
dll gdi32 #CloseMetaFile hMF
dll gdi32 #CombineRgn hDestRgn hSrcRgn1 hSrcRgn2 nCombineMode
dll gdi32 #CopyMetaFile hMF $lpFileName
dll gdi32 #CreateBitmap nWidth nHeight nPlanes nBitCount !*lpBits
dll gdi32 #CreateBitmapIndirect BITMAP*lpBitmap
dll gdi32 #CreateBrushIndirect LOGBRUSH*lpLogBrush
dll gdi32 #CreateCompatibleBitmap hDC nWidth nHeight
dll gdi32 #CreateDiscardableBitmap hDC nWidth nHeight
dll gdi32 #CreateCompatibleDC hDC
dll gdi32 #CreateDC $lpDriverName $lpDeviceName $lpOutput DEVMODE*lpInitData
dll gdi32 #CreateDIBitmap hDC BITMAPINFOHEADER*lpInfoHeader dwUsage !*lpInitBits BITMAPINFO*lpInitInfo wUsage
dll gdi32 #CreateDIBPatternBrush hPackedDIB wUsage
dll gdi32 #CreateDIBPatternBrushPt !*lpPackedDIB iUsage
dll gdi32 #CreateEllipticRgnIndirect RECT*lpRect
dll gdi32 #CreateEllipticRgn X1 Y1 X2 Y2
dll gdi32 #CreateFontIndirect LOGFONT*lpLogFont
dll gdi32 #CreateFont H W E O W I u S C OP CP Q PAF $F
dll gdi32 #CreateHatchBrush nIndex crColor
dll gdi32 #CreateIC $lpDriverName $lpDeviceName $lpOutput DEVMODE*lpInitData
dll gdi32 #CreateMetaFile $lpString
dll gdi32 #CreatePalette LOGPALETTE*lpLogPalette
dll gdi32 #CreatePen nPenStyle nWidth crColor
dll gdi32 #CreatePenIndirect LOGPEN*lpLogPen
dll gdi32 #CreateRectRgn X1 Y1 X2 Y2
dll gdi32 #CreateRectRgnIndirect RECT*lpRect
dll gdi32 #CreatePolyPolygonRgn POINT*lpPoint *lpPolyCounts nCount nPolyFillMode
dll gdi32 #CreatePatternBrush hBitmap
dll gdi32 #CreateRoundRectRgn X1 Y1 X2 Y2 X3 Y3
dll gdi32 #CreateScalableFontResource fHidden $lpszResourceFile $lpszFontFile $lpszCurrentPath
dll gdi32 #CreateSolidBrush crColor
dll gdi32 #DeleteDC hDC
dll gdi32 #DeleteObject hObject
dll gdi32 #DeleteMetaFile hMF
def DM_UPDATE        1
def DM_COPY          2
def DM_PROMPT        4
def DM_MODIFY        8
def DM_IN_BUFFER     DM_MODIFY
def DM_IN_PROMPT     DM_PROMPT
def DM_OUT_BUFFER    DM_COPY
def DM_OUT_DEFAULT   DM_UPDATE
def DC_FIELDS        1
def DC_PAPERS        2
def DC_PAPERSIZE     3
def DC_MINEXTENT     4
def DC_MAXEXTENT     5
def DC_BINS          6
def DC_DUPLEX        7
def DC_SIZE          8
def DC_EXTRA         9
def DC_VERSION       10
def DC_DRIVER        11
def DC_BINNAMES      12
def DC_ENUMRESOLUTIONS  13
def DC_FILEDEPENDENCIES  14
def DC_TRUETYPE      15
def DC_PAPERNAMES    16
def DC_ORIENTATION   17
def DC_COPIES        18
def DCTT_BITMAP      0x1
def DCTT_DOWNLOAD    0x2
def DCTT_SUBDEV      0x4
dll winspool.drv #DeviceCapabilities $lpDeviceName $lpPort iIndex $lpOutput DEVMODE*lpDevMode
dll gdi32 #Ellipse hDC X1 Y1 X2 Y2
dll gdi32 #EqualRgn hSrcRgn1 hSrcRgn2
dll gdi32 #Escape hDC nEscape nCount $lpInData !*lpOutData
dll gdi32 #ExtEscape hDC nEscape cbInput $lpszInData cbOutput $lpszOutData
dll gdi32 #DrawEscape hDC nEscape cbInput $lpszInData
dll gdi32 #ExcludeClipRect hDC X1 Y1 X2 Y2
dll gdi32 #ExtCreateRegion XFORM*lpXform nCount RGNDATA*lpRgnData
dll gdi32 #ExtFloodFill hDC x y crColor wFillType
dll gdi32 #FillRgn hDC hRgn hBrush
dll gdi32 #FrameRgn hDC hRgn hBrush nWidth nHeight
dll gdi32 #FloodFill hDC x y crColor
dll gdi32 #GetROP2 hDC
dll gdi32 #GetAspectRatioFilterEx hDC SIZE*lpAspectRatio
dll gdi32 #GetBkColor hDC
dll gdi32 #GetBkMode hDC
dll gdi32 #GetBitmapBits hBitmap dwCount !*lpBits
dll gdi32 #GetBitmapDimensionEx hBitmap SIZE*lpDimension
dll gdi32 #GetBoundsRect hDC RECT*lprcBounds flags
dll gdi32 #GetCharWidth hDC wFirstChar wLastChar *lpBuffer
dll gdi32 #GetCharWidth32 hDC iFirstChar iLastChar *lpBuffer
dll gdi32 #GetCharWidthFloat hDC iFirstChar iLastChar ^*pxBuffer
dll gdi32 #GetCharABCWidths hDC uFirstChar uLastChar ABC*lpabc
dll gdi32 #GetCharABCWidthsFloat hDC iFirstChar iLastChar ABCFLOAT*lpABCF
dll gdi32 #GetClipBox hDC RECT*lpRect
dll gdi32 #GetClipRgn hDC hRgn
dll gdi32 #GetMetaRgn hDC hRgn
dll gdi32 #GetCurrentObject hDC uObjectType
dll gdi32 #GetCurrentPositionEx hDC POINT*lpPoint
dll gdi32 #GetDeviceCaps hDC nIndex
dll gdi32 #GetDIBits ahDC hBitmap nStartScan nNumScans !*lpBits BITMAPINFO*lpBI wUsage
dll gdi32 #GetFontData hDC dwTable dwOffset !*lpvBuffer cbData
dll gdi32 #GetGlyphOutline hDC uChar fuFormat GLYPHMETRICS*lpgm cbBuffer !*lpBuffer MAT2*lpmat2
dll gdi32 #GetGraphicsMode hDC
dll gdi32 #GetMapMode hDC
dll gdi32 #GetMetaFileBitsEx hMF nSize !*lpvData
dll gdi32 #GetMetaFile $lpFileName
dll gdi32 #GetNearestColor hDC crColor
dll gdi32 #GetNearestPaletteIndex hPalette crColor
dll gdi32 #GetObjectType hgdiobj
dll gdi32 #GetOutlineTextMetrics hDC cbData OUTLINETEXTMETRIC*lpotm
dll gdi32 #GetPaletteEntries hPalette wStartIndex wNumEntries PALETTEENTRY*lpPaletteEntries
dll gdi32 #GetPixel hDC x y
dll gdi32 #GetPolyFillMode hDC
dll gdi32 #GetRasterizerCaps RASTERIZER_STATUS*lpraststat cb
dll gdi32 #GetRegionData hRgn dwCount RGNDATA*lpRgnData
dll gdi32 #GetRgnBox hRgn RECT*lpRect
dll gdi32 #GetStockObject nIndex
dll gdi32 #GetStretchBltMode hDC
dll gdi32 #GetSystemPaletteEntries hDC wStartIndex wNumEntries PALETTEENTRY*lpPaletteEntries
dll gdi32 #GetSystemPaletteUse hDC
dll gdi32 #GetTextCharacterExtra hDC
dll gdi32 #GetTextAlign hDC
dll gdi32 #GetTextColor hDC
dll gdi32 #GetTextExtentPoint hDC $lpszString cbString SIZE*lpSize
dll gdi32 #GetTextExtentPoint32 hDC $lpsz cbString SIZE*lpSize
dll gdi32 #GetTextExtentExPoint hDC $lpszStr cchString nMaxExtent *lpnFit *alpDx SIZE*lpSize
dll gdi32 #GetViewportExtEx hDC SIZE*lpSize
dll gdi32 #GetViewportOrgEx hDC POINT*lpPoint
dll gdi32 #GetWindowExtEx hDC SIZE*lpSize
dll gdi32 #GetWindowOrgEx hDC POINT*lpPoint
dll gdi32 #IntersectClipRect hDC X1 Y1 X2 Y2
dll gdi32 #InvertRgn hDC hRgn
dll gdi32 #LineTo hDC x y
dll gdi32 #MaskBlt hDCDest nXDest nYDest nWidth nHeight hDCSrc nXSrc nYSrc hbmMask xMask yMask dwRop
dll gdi32 #PlgBlt hDCDest POINT*lpPoint hDCSrc nXSrc nYSrc nWidth nHeight hbmMask xMask yMask
dll gdi32 #OffsetClipRgn hDC x y
dll gdi32 #OffsetRgn hRgn x y
dll gdi32 #PatBlt hDC x y nWidth nHeight dwRop
dll gdi32 #Pie hDC X1 Y1 X2 Y2 X3 Y3 X4 Y4
dll gdi32 #PlayMetaFile hDC hMF
dll gdi32 #PaintRgn hDC hRgn
dll gdi32 #PolyPolygon hDC POINT*lpPoint *lpPolyCounts nCount
dll gdi32 #PtInRegion hRgn x y
dll gdi32 #PtVisible hDC x y
dll gdi32 #RectVisible hDC RECT*lpRect
dll gdi32 #RectInRegion hRgn RECT*lpRect
dll gdi32 #Rectangle hDC X1 Y1 X2 Y2
dll gdi32 #RestoreDC hDC nSavedDC
dll gdi32 #ResetDC hDC DEVMODE*lpInitData
dll gdi32 #RealizePalette hDC
dll gdi32 #RemoveFontResource $lpFileName
dll gdi32 #RoundRect hDC X1 Y1 X2 Y2 X3 Y3
dll gdi32 #ResizePalette hPalette nNumEntries
dll gdi32 #SaveDC hDC
dll gdi32 #SelectClipRgn hDC hRgn
dll gdi32 #ExtSelectClipRgn hDC hRgn fnMode
dll gdi32 #SetMetaRgn hDC
dll gdi32 #SelectObject hDC hObject
dll gdi32 #SelectPalette hDC hPalette bForceBackground
dll gdi32 #SetBkColor hDC crColor
dll gdi32 #SetBkMode hDC nBkMode
dll gdi32 #SetBitmapBits hBitmap dwCount !*lpBits
dll gdi32 #SetBoundsRect hDC RECT*lprcBounds flags
dll gdi32 #SetDIBits hDC hBitmap nStartScan nNumScans !*lpBits BITMAPINFO*lpBI wUsage
dll gdi32 #SetDIBitsToDevice hDC x y dx dy SrcX SrcY Scan NumScans !*Bits BITMAPINFO*BitsInfo wUsage
dll gdi32 #SetMapperFlags hDC dwFlag
dll gdi32 #SetGraphicsMode hDC iMode
dll gdi32 #SetMapMode hDC nMapMode
dll gdi32 #SetMetaFileBitsEx nSize !*lpData
dll gdi32 #SetPaletteEntries hPalette wStartIndex wNumEntries PALETTEENTRY*lpPaletteEntries
dll gdi32 #SetPixel hDC x y crColor
dll gdi32 #SetPixelV hDC x y crColor
dll gdi32 #SetPolyFillMode hDC nPolyFillMode
dll gdi32 #StretchBlt hDC x y nWidth nHeight hSrcDC xSrc ySrc nSrcWidth nSrcHeight dwRop
dll gdi32 #SetRectRgn hRgn X1 Y1 X2 Y2
dll gdi32 #StretchDIBits hDC x y dx dy SrcX SrcY wSrcWidth wSrcHeight !*lpBits BITMAPINFO*lpBitsInfo wUsage dwRop
dll gdi32 #SetROP2 hDC nDrawMode
dll gdi32 #SetStretchBltMode hDC nStretchMode
dll gdi32 #SetSystemPaletteUse hDC wUsage
dll gdi32 #SetTextCharacterExtra hDC nCharExtra
dll gdi32 #SetTextColor hDC crColor
dll gdi32 #SetTextAlign hDC wFlags
dll gdi32 #SetTextJustification hDC nBreakExtra nBreakCount
dll gdi32 #UpdateColors hDC
dll kernel32 #GetProcAddress hModule $lpProcName
dll gdi32 #PlayMetaFileRecord hDC HANDLETABLE*lpHandletable METARECORD*lpMetaRecord nHandles
dll gdi32 #CloseEnhMetaFile hDC
dll gdi32 #CopyEnhMetaFile hemfSrc $lpszFile
dll gdi32 #CreateEnhMetaFile hDCRef $lpFileName RECT*lpRect $lpDescription
dll gdi32 #DeleteEnhMetaFile hemf
dll gdi32 #EnumEnhMetaFile hDC hemf lpEnhMetaFunc !*lpData RECT*lpRect
dll gdi32 #GetEnhMetaFile $lpszMetaFile
dll gdi32 #GetEnhMetaFileBits hemf cbBuffer !*lpbBuffer
dll gdi32 #GetEnhMetaFileDescription hemf cchBuffer $lpszDescription
dll gdi32 #GetEnhMetaFileHeader hemf cbBuffer ENHMETAHEADER*lpemh
dll gdi32 #GetEnhMetaFilePaletteEntries hemf cEntries PALETTEENTRY*lppe
dll gdi32 #GetWinMetaFileBits hemf cbBuffer !*lpbBuffer fnMapMode hDCRef
dll gdi32 #PlayEnhMetaFile hDC hemf RECT*lpRect
dll gdi32 #PlayEnhMetaFileRecord hDC HANDLETABLE*lpHandletable ENHMETARECORD*lpEnhMetaRecord nHandles
dll gdi32 #SetEnhMetaFileBits cbBuffer !*lpData
dll gdi32 #SetWinMetaFileBits cbBuffer !*lpbBuffer hDCRef METAFILEPICT*lpmfp
dll gdi32 #GdiComment hDC cbSize !*lpData
dll gdi32 #GetTextMetrics hDC TEXTMETRIC*lpMetrics
dll gdi32 #AngleArc hDC x y dwRadius ^eStartAngle ^eSweepAngle
dll gdi32 #PolyPolyline hDC POINT*lppt *lpdwPolyPoints cCount
dll gdi32 #GetWorldTransform hDC XFORM*lpXform
dll gdi32 #SetWorldTransform hDC XFORM*lpXform
dll gdi32 #ModifyWorldTransform hDC XFORM*lpXform iMode
dll gdi32 #CombineTransform XFORM*lpxformResult XFORM*lpxform1 XFORM*lpxform2
def CA_NEGATIVE      0x1
def CA_LOG_FILTER    0x2
def ILLUMINANT_DEVICE_DEFAULT  0
def ILLUMINANT_A     1
def ILLUMINANT_B     2
def ILLUMINANT_C     3
def ILLUMINANT_D50   4
def ILLUMINANT_D55   5
def ILLUMINANT_D65   6
def ILLUMINANT_D75   7
def ILLUMINANT_F2    8
def ILLUMINANT_MAX_INDEX  ILLUMINANT_F2
def ILLUMINANT_TUNGSTEN  ILLUMINANT_A
def ILLUMINANT_DAYLIGHT  ILLUMINANT_C
def ILLUMINANT_FLUORESCENT  ILLUMINANT_F2
def ILLUMINANT_NTSC  ILLUMINANT_C
def RGB_GAMMA_MIN    2500
def RGB_GAMMA_MAX    65000
def REFERENCE_WHITE_MIN  6000
def REFERENCE_WHITE_MAX  10000
def REFERENCE_BLACK_MIN  0
def REFERENCE_BLACK_MAX  4000
def COLOR_ADJ_MIN    -100
def COLOR_ADJ_MAX    100
type COLORADJUSTMENT @caSize @caFlags @caIlluminantIndex @caRedGamma @caGreenGamma @caBlueGamma @caReferenceBlack @caReferenceWhite @caContrast @caBrightness @caColorfulness @caRedGreenTint
dll gdi32 #SetColorAdjustment hDC COLORADJUSTMENT*lpca
dll gdi32 #GetColorAdjustment hDC COLORADJUSTMENT*lpca
dll gdi32 #CreateHalftonePalette hDC
type DOCINFO cbSize $lpszDocName $lpszOutput
dll gdi32 #StartDoc hDC DOCINFO*lpdi
dll gdi32 #StartPage hDC
dll gdi32 #EndPage hDC
dll gdi32 #EndDoc hDC
dll gdi32 #AbortDoc hDC
dll gdi32 #AbortPath hDC
dll gdi32 #ArcTo hDC X1 Y1 X2 Y2 X3 Y3 X4 Y4
dll gdi32 #BeginPath hDC
dll gdi32 #CloseFigure hDC
dll gdi32 #EndPath hDC
dll gdi32 #FillPath hDC
dll gdi32 #FlattenPath hDC
dll gdi32 #GetPath hDC POINT*lpPoint !*lpTypes nSize
dll gdi32 #PathToRegion hDC
dll gdi32 #PolyDraw hDC POINT*lppt !*lpbTypes cCount
dll gdi32 #SelectClipPath hDC iMode
dll gdi32 #SetArcDirection hDC ArcDirection
dll gdi32 #SetMiterLimit hDC ^eNewLimit ^*peOldLimit
dll gdi32 #StrokeAndFillPath hDC
dll gdi32 #StrokePath hDC
dll gdi32 #WidenPath hDC
dll gdi32 #ExtCreatePen dwPenStyle dwWidth LOGBRUSH*lplb dwStyleCount *lpStyle
dll gdi32 #GetMiterLimit hDC ^*peLimit
dll gdi32 #GetArcDirection hDC
dll gdi32 #GetObjectA hObject nCount !*lpObject
dll gdi32 #MoveToEx hDC x y POINT*lpPoint
dll gdi32 #TextOut hDC x y $lpString nCount
dll gdi32 #ExtTextOut hDC x y wOptions RECT*lpRect $lpString nCount *lpDx
dll gdi32 #PolyTextOut hDC POLYTEXT*pptxt *cStrings
dll gdi32 #CreatePolygonRgn POINT*lpPoint nCount nPolyFillMode
dll gdi32 #DPtoLP hDC POINT*lpPoint nCount
dll gdi32 #LPtoDP hDC POINT*lpPoint nCount
dll gdi32 #Polyline hDC POINT*lpPoint nCount
dll gdi32 #Polygon hDC POINT*lpPoint nCount
dll gdi32 #PolyBezier hDC POINT*lppt cPoints
dll gdi32 #PolyBezierTo hDC POINT*lppt cCount
dll gdi32 #PolylineTo hDC POINT*lppt cCount
dll gdi32 #SetViewportExtEx hDC nX nY SIZE*lpSize
dll gdi32 #SetViewportOrgEx hDC nX nY POINT*lpPoint
dll gdi32 #SetWindowOrgEx hDC nX nY POINT*lpPoint
dll gdi32 #SetWindowExtEx hDC nX nY SIZE*lpSize
dll gdi32 #OffsetViewportOrgEx hDC nX nY POINT*lpPoint
dll gdi32 #OffsetWindowOrgEx hDC nX nY POINT*lpPoint
dll gdi32 #ScaleWindowExtEx hDC nXnum nXdenom nYnum nYdenom SIZE*lpSize
dll gdi32 #ScaleViewportExtEx hDC nXnum nXdenom nYnum nYdenom SIZE*lpSize
dll gdi32 #SetBitmapDimensionEx hbm nX nY SIZE*lpSize
dll gdi32 #SetBrushOrgEx hDC nXOrg nYOrg POINT*lppt
dll gdi32 #GetTextFace hDC nCount $lpFacename
def FONTMAPPER_MAX   10
type KERNINGPAIR @wFirst @wSecond iKernAmount
dll gdi32 #GetKerningPairs hDC cPairs KERNINGPAIR*lpkrnpair
dll gdi32 #GetDCOrgEx hDC POINT*lpPoint
dll gdi32 #UnrealizeObject hObject
dll gdi32 #GdiFlush
dll gdi32 #GdiSetBatchLimit dwLimit
dll gdi32 #GdiGetBatchLimit
def ENHMETA_SIGNATURE  0x464D4520
def ENHMETA_STOCK_OBJECT  0x80000000
def EMR_HEADER       1
def EMR_POLYBEZIER   2
def EMR_POLYGON      3
def EMR_POLYLINE     4
def EMR_POLYBEZIERTO  5
def EMR_POLYLINETO   6
def EMR_POLYPOLYLINE  7
def EMR_POLYPOLYGON  8
def EMR_SETWINDOWEXTEX  9
def EMR_SETWINDOWORGEX  10
def EMR_SETVIEWPORTEXTEX  11
def EMR_SETVIEWPORTORGEX  12
def EMR_SETBRUSHORGEX  13
def EMR_EOF          14
def EMR_SETPIXELV    15
def EMR_SETMAPPERFLAGS  16
def EMR_SETMAPMODE   17
def EMR_SETBKMODE    18
def EMR_SETPOLYFILLMODE  19
def EMR_SETROP2      20
def EMR_SETSTRETCHBLTMODE  21
def EMR_SETTEXTALIGN  22
def EMR_SETCOLORADJUSTMENT  23
def EMR_SETTEXTCOLOR  24
def EMR_SETBKCOLOR   25
def EMR_OFFSETCLIPRGN  26
def EMR_MOVETOEX     27
def EMR_SETMETARGN   28
def EMR_EXCLUDECLIPRECT  29
def EMR_INTERSECTCLIPRECT  30
def EMR_SCALEVIEWPORTEXTEX  31
def EMR_SCALEWINDOWEXTEX  32
def EMR_SAVEDC       33
def EMR_RESTOREDC    34
def EMR_SETWORLDTRANSFORM  35
def EMR_MODIFYWORLDTRANSFORM  36
def EMR_SELECTOBJECT  37
def EMR_CREATEPEN    38
def EMR_CREATEBRUSHINDIRECT  39
def EMR_DELETEOBJECT  40
def EMR_ANGLEARC     41
def EMR_ELLIPSE      42
def EMR_RECTANGLE    43
def EMR_ROUNDRECT    44
def EMR_ARC          45
def EMR_CHORD        46
def EMR_PIE          47
def EMR_SELECTPALETTE  48
def EMR_CREATEPALETTE  49
def EMR_SETPALETTEENTRIES  50
def EMR_RESIZEPALETTE  51
def EMR_REALIZEPALETTE  52
def EMR_EXTFLOODFILL  53
def EMR_LINETO       54
def EMR_ARCTO        55
def EMR_POLYDRAW     56
def EMR_SETARCDIRECTION  57
def EMR_SETMITERLIMIT  58
def EMR_BEGINPATH    59
def EMR_ENDPATH      60
def EMR_CLOSEFIGURE  61
def EMR_FILLPATH     62
def EMR_STROKEANDFILLPATH  63
def EMR_STROKEPATH   64
def EMR_FLATTENPATH  65
def EMR_WIDENPATH    66
def EMR_SELECTCLIPPATH  67
def EMR_ABORTPATH    68
def EMR_GDICOMMENT   70
def EMR_FILLRGN      71
def EMR_FRAMERGN     72
def EMR_INVERTRGN    73
def EMR_PAINTRGN     74
def EMR_EXTSELECTCLIPRGN  75
def EMR_BITBLT       76
def EMR_STRETCHBLT   77
def EMR_MASKBLT      78
def EMR_PLGBLT       79
def EMR_SETDIBITSTODEVICE  80
def EMR_STRETCHDIBITS  81
def EMR_EXTCREATEFONTINDIRECTW  82
def EMR_EXTTEXTOUTA  83
def EMR_EXTTEXTOUTW  84
def EMR_POLYBEZIER16  85
def EMR_POLYGON16    86
def EMR_POLYLINE16   87
def EMR_POLYBEZIERTO16  88
def EMR_POLYLINETO16  89
def EMR_POLYPOLYLINE16  90
def EMR_POLYPOLYGON16  91
def EMR_POLYDRAW16   92
def EMR_CREATEMONOBRUSH  93
def EMR_CREATEDIBPATTERNBRUSHPT  94
def EMR_EXTCREATEPEN  95
def EMR_POLYTEXTOUTA  96
def EMR_POLYTEXTOUTW  97
def EMR_MIN          1
def EMR_MAX          97
type emr iType nSize
type emrtext POINTL'ptlReference nchars offString fOptions RECTL'rcl offDx
type EMRABORTPATH emr'pEmr
type EMRBEGINPATH emr'pEmr
type EMRENDPATH emr'pEmr
type EMRCLOSEFIGURE emr'pEmr
type EMRFLATTENPATH emr'pEmr
type EMRWIDENPATH emr'pEmr
type EMRSETMETARGN emr'pEmr
type EMREMRSAVEDC emr'pEmr
type EMRREALIZEPALETTE emr'pEmr
type EMRSELECTCLIPPATH emr'pEmr iMode
type EMRSETBKMODE emr'pEmr iMode
type EMRSETMAPMODE emr'pEmr iMode
type EMRSETPOLYFILLMODE emr'pEmr iMode
type EMRSETROP2 emr'pEmr iMode
type EMRSETSTRETCHBLTMODE emr'pEmr iMode
type EMRSETTEXTALIGN emr'pEmr iMode
type EMRSETMITERLIMIT emr'pEmr ^eMiterLimit
type EMRRESTOREDC emr'pEmr iRelative
type EMRSETARCDIRECTION emr'pEmr iArcDirection
type EMRSETMAPPERFLAGS emr'pEmr dwFlags
type EMRSETTEXTCOLOR emr'pEmr crColor
type EMRSETBKCOLOR emr'pEmr crColor
type EMRSELECTOBJECT emr'pEmr ihObject
type EMRDELETEOBJECT emr'pEmr ihObject
type EMRSELECTPALETTE emr'pEmr ihPal
type EMRRESIZEPALETTE emr'pEmr ihPal cEntries
type EMRSETPALETTEENTRIES emr'pEmr ihPal iStart cEntries PALETTEENTRY'aPalEntries[1]
type EMRSETCOLORADJUSTMENT emr'pEmr COLORADJUSTMENT'ColorAdjustment
type EMRGDICOMMENT emr'pEmr cbData @Data[1]
type EMREOF emr'pEmr nPalEntries offPalEntries nSizeLast
type EMRLINETO emr'pEmr POINTL'ptl
type EMRMOVETOEX emr'pEmr POINTL'ptl
type EMROFFSETCLIPRGN emr'pEmr POINTL'ptlOffset
type EMRFILLPATH emr'pEmr RECTL'rclBounds
type EMRSTROKEANDFILLPATH emr'pEmr RECTL'rclBounds
type EMRSTROKEPATH emr'pEmr RECTL'rclBounds
type EMREXCLUDECLIPRECT emr'pEmr RECTL'rclClip
type EMRINTERSECTCLIPRECT emr'pEmr RECTL'rclClip
type EMRSETVIEWPORTORGEX emr'pEmr POINTL'ptlOrigin
type EMRSETWINDOWORGEX emr'pEmr POINTL'ptlOrigin
type EMRSETBRUSHORGEX emr'pEmr POINTL'ptlOrigin
type EMRSETVIEWPORTEXTEX emr'pEmr SIZEL'szlExtent
type EMRSETWINDOWEXTEX emr'pEmr SIZEL'szlExtent
type EMRSCALEVIEWPORTEXTEX emr'pEmr xNum xDenom yNum yDemon
type EMRSCALEWINDOWEXTEX emr'pEmr xNum xDenom yNum yDemon
type EMRSETWORLDTRANSFORM emr'pEmr XFORM'xform
type EMRMODIFYWORLDTRANSFORM emr'pEmr XFORM'xform iMode
type EMRSETPIXELV emr'pEmr POINTL'ptlPixel crColor
type EMREXTFLOODFILL emr'pEmr POINTL'ptlStart crColor iMode
type EMRELLIPSE emr'pEmr RECTL'rclBox
type EMRRECTANGLE emr'pEmr RECTL'rclBox
type EMRROUNDRECT emr'pEmr RECTL'rclBox SIZEL'szlCorner
type EMRARC emr'pEmr RECTL'rclBox POINTL'ptlStart POINTL'ptlEnd
type EMRARCTO emr'pEmr RECTL'rclBox POINTL'ptlStart POINTL'ptlEnd
type EMRCHORD emr'pEmr RECTL'rclBox POINTL'ptlStart POINTL'ptlEnd
type EMRPIE emr'pEmr RECTL'rclBox POINTL'ptlStart POINTL'ptlEnd
type EMRANGLEARC emr'pEmr POINTL'ptlCenter nRadius ^eStartAngle ^eSweepAngle
type EMRPOLYLINE emr'pEmr RECTL'rclBounds cptl POINTL'aptl[1]
type EMRPOLYBEZIER emr'pEmr RECTL'rclBounds cptl POINTL'aptl[1]
type EMRPOLYGON emr'pEmr RECTL'rclBounds cptl POINTL'aptl[1]
type EMRPOLYBEZIERTO emr'pEmr RECTL'rclBounds cptl POINTL'aptl[1]
type EMRPOLYLINE16 emr'pEmr RECTL'rclBounds cpts POINTS'apts[1]
type EMRPOLYBEZIER16 emr'pEmr RECTL'rclBounds cpts POINTS'apts[1]
type EMRPOLYGON16 emr'pEmr RECTL'rclBounds cpts POINTS'apts[1]
type EMRPLOYBEZIERTO16 emr'pEmr RECTL'rclBounds cpts POINTS'apts[1]
type EMRPOLYLINETO16 emr'pEmr RECTL'rclBounds cpts POINTS'apts[1]
type EMRPOLYDRAW emr'pEmr RECTL'rclBounds cptl POINTL'aptl[1] @abTypes[1]
type EMRPOLYDRAW16 emr'pEmr RECTL'rclBounds cpts POINTS'apts[1] @abTypes[1]
type EMRPOLYPOLYLINE emr'pEmr RECTL'rclBounds nPolys cptl aPolyCounts[1] POINTL'aptl[1]
type EMRPOLYPOLYGON emr'pEmr RECTL'rclBounds nPolys cptl aPolyCounts[1] POINTL'aptl[1]
type EMRPOLYPOLYLINE16 emr'pEmr RECTL'rclBounds nPolys cpts aPolyCounts[1] POINTS'apts[1]
type EMRPOLYPOLYGON16 emr'pEmr RECTL'rclBounds nPolys cpts aPolyCounts[1] POINTS'apts[1]
type EMRINVERTRGN emr'pEmr RECTL'rclBounds cbRgnData @RgnData[1]
type EMRPAINTRGN emr'pEmr RECTL'rclBounds cbRgnData @RgnData[1]
type EMRFILLRGN emr'pEmr RECTL'rclBounds cbRgnData ihBrush @RgnData[1]
type EMRFRAMERGN emr'pEmr RECTL'rclBounds cbRgnData ihBrush SIZEL'szlStroke @RgnData[1]
type EMREXTSELECTCLIPRGN emr'pEmr cbRgnData iMode @RgnData[1]
type EMREXTTEXTOUT emr'pEmr RECTL'rclBounds iGraphicsMode ^exScale ^eyScale emrtext'emrtext
type EMRBITBLT emr'pEmr RECTL'rclBounds xDest yDest cxDest cyDest dwRop xSrc ySrc XFORM'xformSrc crBkColorSrc iUsageSrc offBmiSrc cbBmiSrc offBitsSrc cbBitsSrc
type EMRSTRETCHBLT emr'pEmr RECTL'rclBounds xDest yDest cxDest cyDest dwRop xSrc ySrc XFORM'xformSrc crBkColorSrc iUsageSrc offBmiSrc cbBmiSrc offBitsSrc cbBitsSrc cxSrc cySrc
type EMRMASKBLT emr'pEmr RECTL'rclBounds xDest yDest cxDest cyDest dwRop xSrc2 cyDest2 dwRop2 xSrc ySrc XFORM'xformSrc crBkColorSrc iUsageSrc offBmiSrc cbBmiSrc offBitsSrc cbBitsSrc xMask yMask iUsageMask offBmiMask cbBmiMask offBitsMask cbBitsMask
type EMRPLGBLT emr'pEmr RECTL'rclBounds POINTL'aptlDest[3] xSrc ySrc cxSrc cySrc XFORM'xformSrc crBkColorSrc iUsageSrc offBmiSrc cbBmiSrc offBitsSrc cbBitsSrc xMask yMask iUsageMask offBmiMask cbBmiMask offBitsMask cbBitsMask
type EMRSETDIBITSTODEVICE emr'pEmr RECTL'rclBounds xDest yDest xSrc ySrc cxSrc cySrc offBmiSrc cbBmiSrc offBitsSrc cbBitsSrc iUsageSrc iStartScan cScans
type EMRSTRETCHDIBITS emr'pEmr RECTL'rclBounds xDest yDest xSrc ySrc cxSrc cySrc offBmiSrc cbBmiSrc offBitsSrc cbBitsSrc iUsageSrc dwRop cxDest cyDest
type EMREXTCREATEFONTINDIRECT emr'pEmr ihFont EXTLOGFONT'elfw
type EMRCREATEPALETTE emr'pEmr ihPal LOGPALETTE'lgpl
type EMRCREATEPEN emr'pEmr ihPen LOGPEN'lopn
type EMREXTCREATEPEN emr'pEmr ihPen offBmi cbBmi offBits cbBits EXTLOGPEN'elp
type EMRCREATEBRUSHINDIRECT emr'pEmr ihBrush LOGBRUSH'lb
type EMRCREATEMONOBRUSH emr'pEmr ihBrush iUsage offBmi cbBmi offBits cbBits
type EMRCREATEDIBPATTERNBRUSHPT emr'pEmr ihBursh iUsage offBmi cbBmi offBits cbBits
def STRETCH_ANDSCANS  1
def STRETCH_ORSCANS  2
def STRETCH_DELETESCANS  3
def STRETCH_HALFTONE  4
type BITMAPV4HEADER bV4Size bV4Width bV4Height @bV4Planes @bV4BitCount bV4V4Compression bV4SizeImage bV4XPelsPerMeter bV4YPelsPerMeter bV4ClrUsed bV4ClrImportant bV4RedMask bV4GreenMask bV4BlueMask bV4AlphaMask bV4CSType bV4Endpoints bV4GammaRed bV4GammaGreen bV4GammaBlue
type FONTSIGNATURE fsUsb[4] fsCsb[2]
type CHARSETINFO ciCharset ciACP FONTSIGNATURE'fs
def TCI_SRCCHARSET   1
def TCI_SRCCODEPAGE  2
def TCI_SRCFONTSIG   3
type LOCALESIGNATURE lsUsb[4] lsCsbDefault[2] lsCsbSupported[2]
type NEWTEXTMETRICEX NEWTEXTMETRIC'ntmTm FONTSIGNATURE'ntmFontSig
type ENUMLOGFONTEX LOGFONT'elfLogFont !elfFullName[LF_FULLFACESIZE] !elfStyle[LF_FACESIZE] !elfScript[LF_FACESIZE]
def MONO_FONT        8
def JOHAB_CHARSET    130
def HEBREW_CHARSET   177
def ARABIC_CHARSET   178
def GREEK_CHARSET    161
def TURKISH_CHARSET  162
def THAI_CHARSET     222
def EASTEUROPE_CHARSET  238
def RUSSIAN_CHARSET  204
def MAC_CHARSET      77
def BALTIC_CHARSET   186
def FS_LATIN1        0x1
def FS_LATIN2        0x2
def FS_CYRILLIC      0x4
def FS_GREEK         0x8
def FS_TURKISH       0x10
def FS_HEBREW        0x20
def FS_ARABIC        0x40
def FS_BALTIC        0x80
def FS_THAI          0x10000
def FS_JISJAPAN      0x20000
def FS_CHINESESIMP   0x40000
def FS_WANSUNG       0x80000
def FS_CHINESETRAD   0x100000
def FS_JOHAB         0x200000
def FS_SYMBOL        0x80000000
def DEFAULT_GUI_FONT  17
def DM_RESERVED1     0x800000
def DM_RESERVED2     0x1000000
def DM_ICMMETHOD     0x2000000
def DM_ICMINTENT     0x4000000
def DM_MEDIATYPE     0x8000000
def DM_DITHERTYPE    0x10000000
def DMPAPER_ISO_B4   42
def DMPAPER_JAPANESE_POSTCARD  43
def DMPAPER_9X11     44
def DMPAPER_10X11    45
def DMPAPER_15X11    46
def DMPAPER_ENV_INVITE  47
def DMPAPER_RESERVED_48  48
def DMPAPER_RESERVED_49  49
def DMPAPER_LETTER_EXTRA  50
def DMPAPER_LEGAL_EXTRA  51
def DMPAPER_TABLOID_EXTRA  52
def DMPAPER_A4_EXTRA  53
def DMPAPER_LETTER_TRANSVERSE  54
def DMPAPER_A4_TRANSVERSE  55
def DMPAPER_LETTER_EXTRA_TRANSVERSE  56
def DMPAPER_A_PLUS   57
def DMPAPER_B_PLUS   58
def DMPAPER_LETTER_PLUS  59
def DMPAPER_A4_PLUS  60
def DMPAPER_A5_TRANSVERSE  61
def DMPAPER_B5_TRANSVERSE  62
def DMPAPER_A3_EXTRA  63
def DMPAPER_A5_EXTRA  64
def DMPAPER_B5_EXTRA  65
def DMPAPER_A2       66
def DMPAPER_A3_TRANSVERSE  67
def DMPAPER_A3_EXTRA_TRANSVERSE  68
def DMTT_DOWNLOAD_OUTLINE  4
def DMICMMETHOD_NONE  1
def DMICMMETHOD_SYSTEM  2
def DMICMMETHOD_DRIVER  3
def DMICMMETHOD_DEVICE  4
def DMICMMETHOD_USER  256
def DMICM_SATURATE   1
def DMICM_CONTRAST   2
def DMICM_COLORMETRIC  3
def DMICM_USER       256
def DMMEDIA_STANDARD  1
def DMMEDIA_GLOSSY   2
def DMMEDIA_TRANSPARENCY  3
def DMMEDIA_USER     256
def DMDITHER_NONE    1
def DMDITHER_COARSE  2
def DMDITHER_FINE    3
def DMDITHER_LINEART  4
def DMDITHER_GRAYSCALE  5
def DMDITHER_USER    256
def GGO_GRAY2_BITMAP  4
def GGO_GRAY4_BITMAP  5
def GGO_GRAY8_BITMAP  6
def GGO_GLYPH_INDEX  0x80
def GCP_DBCS         0x1
def GCP_REORDER      0x2
def GCP_USEKERNING   0x8
def GCP_GLYPHSHAPE   0x10
def GCP_LIGATE       0x20
def GCP_DIACRITIC    0x100
def GCP_KASHIDA      0x400
def GCP_ERROR        0x8000
def FLI_MASK         0x103B
def GCP_JUSTIFY      0x10000
def GCP_NODIACRITICS  0x20000
def FLI_GLYPHS       0x40000
def GCP_CLASSIN      0x80000
def GCP_MAXEXTENT    0x100000
def GCP_JUSTIFYIN    0x200000
def GCP_DISPLAYZWG   0x400000
def GCP_SYMSWAPOFF   0x800000
def GCP_NUMERICOVERRIDE  0x1000000
def GCP_NEUTRALOVERRIDE  0x2000000
def GCP_NUMERICSLATIN  0x4000000
def GCP_NUMERICSLOCAL  0x8000000
def GCPCLASS_LATIN   1
def GCPCLASS_HEBREW  2
def GCPCLASS_ARABIC  2
def GCPCLASS_NEUTRAL  3
def GCPCLASS_LOCALNUMBER  4
def GCPCLASS_LATINNUMBER  5
def GCPCLASS_LATINNUMERICTERMINATOR  6
def GCPCLASS_LATINNUMERICSEPARATOR  7
def GCPCLASS_NUMERICSEPARATOR  8
def GCPCLASS_PREBOUNDRTL  0x80
def GCPCLASS_PREBOUNDLTR  0x40
type GCP_RESULTS lStructSize $lpOutString lpOrder lpDX lpCaretPos $lpClass $lpGlyphs nGlyphs nMaxFit
def DC_BINADJUST     19
def DC_EMF_COMPLIANT  20
def DC_DATATYPE_PRODUCED  21
def DC_COLLATE       22
def DCTT_DOWNLOAD_OUTLINE  0x8
def DCBA_FACEUPNONE  0x0
def DCBA_FACEUPCENTER  0x1
def DCBA_FACEUPLEFT  0x2
def DCBA_FACEUPRIGHT  0x3
def DCBA_FACEDOWNNONE  0x100
def DCBA_FACEDOWNCENTER  0x101
def DCBA_FACEDOWNLEFT  0x102
def DCBA_FACEDOWNRIGHT  0x103
dll gdi32 #EnumFontFamilies hDC $lpszFamily lpEnumFontFamProc lParam
dll gdi32 #EnumFontFamiliesEx hDC LOGFONT*lpLogFont lpEnumFontProc lParam dw
dll gdi32 #GetTextCharset hDC
dll gdi32 #GetTextCharsetInfo hDC FONTSIGNATURE*lpSig dwFlags
dll gdi32 #TranslateCharsetInfo *lpSrc CHARSETINFO*lpcs dwFlags
dll gdi32 #GetFontLanguageInfo hDC
dll gdi32 #GetCharacterPlacement hDC $lpsz n1 n2 GCP_RESULTS*lpGcpResults dw
def ICM_OFF          1
def ICM_ON           2
def ICM_QUERY        3
type CIEXYZ ciexyzX ciexyzY ciexyzZ
type CIEXYZTRIPLE CIEXYZ'ciexyzRed CIEXYZ'ciexyzGreen CIEXYZ'ciexyBlue
type LOGCOLORSPACE lcsSignature lcsVersion lcsSize lcsCSType lcsIntent CIEXYZTRIPLE'lcsEndPoints lcsGammaRed lcsGammaGreen lcsGammaBlue !lcsFileName[MAX_PATH]
dll gdi32 #SetICMMode hDC n
dll gdi32 #CheckColorsInGamut hDC !*lpv !*lpv2 dw
dll gdi32 #GetLogColorSpace hcolorspace LOGCOLORSPACE'lplogcolorspace dw
dll gdi32 #GetColorSpace hDC
dll gdi32 #CreateColorSpace LOGCOLORSPACE*lplogcolorspace
dll gdi32 #SetColorSpace hDC hcolorspace
dll gdi32 #DeleteColorSpace hcolorspace
dll gdi32 #GetICMProfile hDC dw $lpStr
dll gdi32 #SetICMProfile hDC $lpStr
dll gdi32 #GetDeviceGammaRamp hDC !*lpv
dll gdi32 #SetDeviceGammaRamp hDC !*lpv
dll gdi32 #ColorMatchToTarget hDC hDC2 dw
dll gdi32 #EnumICMProfiles hDC icmEnumProc lParam
def EMR_SETICMMODE   98
def EMR_CREATECOLORSPACE  99
def EMR_SETCOLORSPACE  100
def EMR_DELETECOLORSPACE  101
type EMRSELECTCOLORSPACE emr'pEmr ihCS
type EMRCREATECOLORSPACE emr'pEmr ihCS LOGCOLORSPACE'lcs
def SB_HORZ          0
def SB_VERT          1
def SB_CTL           2
def SB_BOTH          3
def SB_LINEUP        0
def SB_LINELEFT      0
def SB_LINEDOWN      1
def SB_LINERIGHT     1
def SB_PAGEUP        2
def SB_PAGELEFT      2
def SB_PAGEDOWN      3
def SB_PAGERIGHT     3
def SB_THUMBPOSITION  4
def SB_THUMBTRACK    5
def SB_TOP           6
def SB_LEFT          6
def SB_BOTTOM        7
def SB_RIGHT         7
def SB_ENDSCROLL     8
def SW_HIDE          0
def SW_SHOWNORMAL    1
def SW_NORMAL        1
def SW_SHOWMINIMIZED  2
def SW_SHOWMAXIMIZED  3
def SW_MAXIMIZE      3
def SW_SHOWNOACTIVATE  4
def SW_SHOW          5
def SW_MINIMIZE      6
def SW_SHOWMINNOACTIVE  7
def SW_SHOWNA        8
def SW_RESTORE       9
def SW_SHOWDEFAULT   10
def SW_MAX           10
def HIDE_WINDOW      0
def SHOW_OPENWINDOW  1
def SHOW_ICONWINDOW  2
def SHOW_FULLSCREEN  3
def SHOW_OPENNOACTIVATE  4
def SW_PARENTCLOSING  1
def SW_OTHERZOOM     2
def SW_PARENTOPENING  3
def SW_OTHERUNZOOM   4
def KF_EXTENDED      0x100
def KF_DLGMODE       0x800
def KF_MENUMODE      0x1000
def KF_ALTDOWN       0x2000
def KF_REPEAT        0x4000
def KF_UP            0x8000
def VK_LBUTTON       0x1
def VK_RBUTTON       0x2
def VK_CANCEL        0x3
def VK_MBUTTON       0x4
def VK_BACK          0x8
def VK_TAB           0x9
def VK_CLEAR         0xC
def VK_RETURN        0xD
def VK_SHIFT         0x10
def VK_CONTROL       0x11
def VK_MENU          0x12
def VK_PAUSE         0x13
def VK_CAPITAL       0x14
def VK_ESCAPE        0x1B
def VK_SPACE         0x20
def VK_PRIOR         0x21
def VK_NEXT          0x22
def VK_END           0x23
def VK_HOME          0x24
def VK_LEFT          0x25
def VK_UP            0x26
def VK_RIGHT         0x27
def VK_DOWN          0x28
def VK_SELECT        0x29
def VK_PRINT         0x2A
def VK_EXECUTE       0x2B
def VK_SNAPSHOT      0x2C
def VK_INSERT        0x2D
def VK_DELETE        0x2E
def VK_HELP          0x2F
def VK_NUMPAD0       0x60
def VK_NUMPAD1       0x61
def VK_NUMPAD2       0x62
def VK_NUMPAD3       0x63
def VK_NUMPAD4       0x64
def VK_NUMPAD5       0x65
def VK_NUMPAD6       0x66
def VK_NUMPAD7       0x67
def VK_NUMPAD8       0x68
def VK_NUMPAD9       0x69
def VK_MULTIPLY      0x6A
def VK_ADD           0x6B
def VK_SEPARATOR     0x6C
def VK_SUBTRACT      0x6D
def VK_DECIMAL       0x6E
def VK_DIVIDE        0x6F
def VK_F1            0x70
def VK_F2            0x71
def VK_F3            0x72
def VK_F4            0x73
def VK_F5            0x74
def VK_F6            0x75
def VK_F7            0x76
def VK_F8            0x77
def VK_F9            0x78
def VK_F10           0x79
def VK_F11           0x7A
def VK_F12           0x7B
def VK_F13           0x7C
def VK_F14           0x7D
def VK_F15           0x7E
def VK_F16           0x7F
def VK_F17           0x80
def VK_F18           0x81
def VK_F19           0x82
def VK_F20           0x83
def VK_F21           0x84
def VK_F22           0x85
def VK_F23           0x86
def VK_F24           0x87
def VK_NUMLOCK       0x90
def VK_SCROLL        0x91
def VK_LSHIFT        0xA0
def VK_RSHIFT        0xA1
def VK_LCONTROL      0xA2
def VK_RCONTROL      0xA3
def VK_LMENU         0xA4
def VK_RMENU         0xA5
def VK_ATTN          0xF6
def VK_CRSEL         0xF7
def VK_EXSEL         0xF8
def VK_EREOF         0xF9
def VK_PLAY          0xFA
def VK_ZOOM          0xFB
def VK_NONAME        0xFC
def VK_PA1           0xFD
def VK_OEM_CLEAR     0xFE
def WH_MIN           (-1)
def WH_MSGFILTER     (-1)
def WH_JOURNALRECORD  0
def WH_JOURNALPLAYBACK  1
def WH_KEYBOARD      2
def WH_GETMESSAGE    3
def WH_CALLWNDPROC   4
def WH_CBT           5
def WH_SYSMSGFILTER  6
def WH_MOUSE         7
def WH_HARDWARE      8
def WH_DEBUG         9
def WH_SHELL         10
def WH_FOREGROUNDIDLE  11
def WH_MAX           11
def HC_ACTION        0
def HC_GETNEXT       1
def HC_SKIP          2
def HC_NOREMOVE      3
def HC_NOREM         HC_NOREMOVE
def HC_SYSMODALON    4
def HC_SYSMODALOFF   5
def HCBT_MOVESIZE    0
def HCBT_MINMAX      1
def HCBT_QS          2
def HCBT_CREATEWND   3
def HCBT_DESTROYWND  4
def HCBT_ACTIVATE    5
def HCBT_CLICKSKIPPED  6
def HCBT_KEYSKIPPED  7
def HCBT_SYSCOMMAND  8
def HCBT_SETFOCUS    9
type CBTACTIVATESTRUCT fMouse hWndActive
def MSGF_DIALOGBOX   0
def MSGF_MESSAGEBOX  1
def MSGF_MENU        2
def MSGF_MOVE        3
def MSGF_SIZE        4
def MSGF_SCROLLBAR   5
def MSGF_NEXTWINDOW  6
def MSGF_MAINLOOP    8
def MSGF_MAX         8
def MSGF_USER        4096
def HSHELL_WINDOWCREATED  1
def HSHELL_WINDOWDESTROYED  2
def HSHELL_ACTIVATESHELLWINDOW  3
type EVENTMSG message paramL paramH time hWnd
type CWPSTRUCT lParam wParam message hWnd
type DEBUGHOOKINFO hModuleHook Reserved lParam wParam code
type MOUSEHOOKSTRUCT POINT'pt hWnd wHitTestCode dwExtraInfo
def HKL_PREV         0
def HKL_NEXT         1
def KLF_ACTIVATE     0x1
def KLF_SUBSTITUTE_OK  0x2
def KLF_UNLOADPREVIOUS  0x4
def KLF_REORDER      0x8
def KL_NAMELENGTH    9
dll user32 #LoadKeyboardLayout $pwszKLID flags
dll user32 #ActivateKeyboardLayout HKL flags
dll user32 #UnloadKeyboardLayout HKL
dll user32 #GetKeyboardLayoutName $pwszKLID
def DESKTOP_READOBJECTS  0x1
def DESKTOP_CREATEWINDOW  0x2
def DESKTOP_CREATEMENU  0x4
def DESKTOP_HOOKCONTROL  0x8
def DESKTOP_JOURNALRECORD  0x10
def DESKTOP_JOURNALPLAYBACK  0x20
def DESKTOP_ENUMERATE  0x40
def DESKTOP_WRITEOBJECTS  0x80
dll user32 #GetThreadDesktop dwThread
def WINSTA_ENUMDESKTOPS  0x1
def WINSTA_READATTRIBUTES  0x2
def WINSTA_ACCESSCLIPBOARD  0x4
def WINSTA_CREATEDESKTOP  0x8
def WINSTA_WRITEATTRIBUTES  0x10
def WINSTA_ACCESSPUBLICATOMS  0x20
def WINSTA_EXITWINDOWS  0x40
def WINSTA_ENUMERATE  0x100
def WINSTA_READSCREEN  0x200
dll user32 #GetProcessWindowStation
dll user32 #SetUserObjectSecurity hObj *pSIRequested SECURITY_DESCRIPTOR*pSd
dll user32 #GetUserObjectSecurity hObj *pSIRequested SECURITY_DESCRIPTOR*pSd nLength *lpnLengthNeeded
def GWL_WNDPROC      (-4)
def GWL_HINSTANCE    (-6)
def GWL_HWNDPARENT   (-8)
def GWL_STYLE        (-16)
def GWL_EXSTYLE      (-20)
def GWL_USERDATA     (-21)
def GWL_ID           (-12)
def GCL_MENUNAME     (-8)
def GCL_HBRBACKGROUND  (-10)
def GCL_HCURSOR      (-12)
def GCL_HICON        (-14)
def GCL_HMODULE      (-16)
def GCL_CBWNDEXTRA   (-18)
def GCL_CBCLSEXTRA   (-20)
def GCL_WNDPROC      (-24)
def GCL_STYLE        (-26)
def GCW_ATOM         (-32)
def WM_NULL          0x0
def WM_CREATE        0x1
def WM_DESTROY       0x2
def WM_MOVE          0x3
def WM_SIZE          0x5
def WM_ACTIVATE      0x6
def WA_INACTIVE      0
def WA_ACTIVE        1
def WA_CLICKACTIVE   2
def WM_SETFOCUS      0x7
def WM_KILLFOCUS     0x8
def WM_ENABLE        0xA
def WM_SETREDRAW     0xB
def WM_SETTEXT       0xC
def WM_GETTEXT       0xD
def WM_GETTEXTLENGTH  0xE
def WM_PAINT         0xF
def WM_CLOSE         0x10
def WM_QUERYENDSESSION  0x11
def WM_QUIT          0x12
def WM_QUERYOPEN     0x13
def WM_ERASEBKGND    0x14
def WM_SYSCOLORCHANGE  0x15
def WM_ENDSESSION    0x16
def WM_SHOWWINDOW    0x18
def WM_WININICHANGE  0x1A
def WM_DEVMODECHANGE  0x1B
def WM_ACTIVATEAPP   0x1C
def WM_FONTCHANGE    0x1D
def WM_TIMECHANGE    0x1E
def WM_CANCELMODE    0x1F
def WM_SETCURSOR     0x20
def WM_MOUSEACTIVATE  0x21
def WM_CHILDACTIVATE  0x22
def WM_QUEUESYNC     0x23
def WM_GETMINMAXINFO  0x24
type MINMAXINFO POINT'ptReserved POINT'ptMaxSize POINT'ptMaxPosition POINT'ptMinTrackSize POINT'ptMaxTrackSize
def WM_PAINTICON     0x26
def WM_ICONERASEBKGND  0x27
def WM_NEXTDLGCTL    0x28
def WM_SPOOLERSTATUS  0x2A
def WM_DRAWITEM      0x2B
def WM_MEASUREITEM   0x2C
def WM_DELETEITEM    0x2D
def WM_VKEYTOITEM    0x2E
def WM_CHARTOITEM    0x2F
def WM_SETFONT       0x30
def WM_GETFONT       0x31
def WM_SETHOTKEY     0x32
def WM_GETHOTKEY     0x33
def WM_QUERYDRAGICON  0x37
def WM_COMPAREITEM   0x39
def WM_COMPACTING    0x41
def WM_OTHERWINDOWCREATED  0x42
def WM_OTHERWINDOWDESTROYED  0x43
def WM_COMMNOTIFY    0x44
def CN_RECEIVE       0x1
def CN_TRANSMIT      0x2
def CN_EVENT         0x4
def WM_WINDOWPOSCHANGING  0x46
def WM_WINDOWPOSCHANGED  0x47
def WM_POWER         0x48
def PWR_OK           1
def PWR_FAIL         (-1)
def PWR_SUSPENDREQUEST  1
def PWR_SUSPENDRESUME  2
def PWR_CRITICALRESUME  3
def WM_COPYDATA      0x4A
def WM_CANCELJOURNAL  0x4B
def WM_NOTIFY        0x4E
def WM_CONTEXTMENU   0x7B
type COPYDATASTRUCT dwData cbData lpData
def WM_NCCREATE      0x81
def WM_NCDESTROY     0x82
def WM_NCCALCSIZE    0x83
def WM_NCHITTEST     0x84
def WM_NCPAINT       0x85
def WM_NCACTIVATE    0x86
def WM_GETDLGCODE    0x87
def WM_NCMOUSEMOVE   0xA0
def WM_NCLBUTTONDOWN  0xA1
def WM_NCLBUTTONUP   0xA2
def WM_NCLBUTTONDBLCLK  0xA3
def WM_NCRBUTTONDOWN  0xA4
def WM_NCRBUTTONUP   0xA5
def WM_NCRBUTTONDBLCLK  0xA6
def WM_NCMBUTTONDOWN  0xA7
def WM_NCMBUTTONUP   0xA8
def WM_NCMBUTTONDBLCLK  0xA9
def WM_KEYFIRST      0x100
def WM_KEYDOWN       0x100
def WM_KEYUP         0x101
def WM_CHAR          0x102
def WM_DEADCHAR      0x103
def WM_SYSKEYDOWN    0x104
def WM_SYSKEYUP      0x105
def WM_SYSCHAR       0x106
def WM_SYSDEADCHAR   0x107
def WM_KEYLAST       0x108
def WM_INITDIALOG    0x110
def WM_COMMAND       0x111
def WM_SYSCOMMAND    0x112
def WM_TIMER         0x113
def WM_HSCROLL       0x114
def WM_VSCROLL       0x115
def WM_INITMENU      0x116
def WM_INITMENUPOPUP  0x117
def WM_MENUSELECT    0x11F
def WM_MENUCHAR      0x120
def WM_ENTERIDLE     0x121
def WM_CTLCOLORMSGBOX  0x132
def WM_CTLCOLOREDIT  0x133
def WM_CTLCOLORLISTBOX  0x134
def WM_CTLCOLORBTN   0x135
def WM_CTLCOLORDLG   0x136
def WM_CTLCOLORSCROLLBAR  0x137
def WM_CTLCOLORSTATIC  0x138
def WM_MOUSEFIRST    0x200
def WM_MOUSEMOVE     0x200
def WM_LBUTTONDOWN   0x201
def WM_LBUTTONUP     0x202
def WM_LBUTTONDBLCLK  0x203
def WM_RBUTTONDOWN   0x204
def WM_RBUTTONUP     0x205
def WM_RBUTTONDBLCLK  0x206
def WM_MBUTTONDOWN   0x207
def WM_MBUTTONUP     0x208
def WM_MBUTTONDBLCLK  0x209
def WM_MOUSELAST     0x209
def WM_PARENTNOTIFY  0x210
def WM_ENTERMENULOOP  0x211
def WM_EXITMENULOOP  0x212
def WM_NEXTMENU      0x213
def WM_SIZING        0x214
def WM_CAPTURECHANGED  0x215
def WM_MOVING        0x216
def WM_POWERBROADCAST  0x218
def WM_DEVICECHANGE  0x219
def WM_MDICREATE     0x220
def WM_MDIDESTROY    0x221
def WM_MDIACTIVATE   0x222
def WM_MDIRESTORE    0x223
def WM_MDINEXT       0x224
def WM_MDIMAXIMIZE   0x225
def WM_MDITILE       0x226
def WM_MDICASCADE    0x227
def WM_MDIICONARRANGE  0x228
def WM_MDIGETACTIVE  0x229
def WM_MDISETMENU    0x230
def WM_ENTERSIZEMOVE  0x231
def WM_EXITSIZEMOVE  0x232
def WM_DROPFILES     0x233
def WM_MDIREFRESHMENU  0x234
def WM_CUT           0x300
def WM_COPY          0x301
def WM_PASTE         0x302
def WM_CLEAR         0x303
def WM_UNDO          0x304
def WM_RENDERFORMAT  0x305
def WM_RENDERALLFORMATS  0x306
def WM_DESTROYCLIPBOARD  0x307
def WM_DRAWCLIPBOARD  0x308
def WM_PAINTCLIPBOARD  0x309
def WM_VSCROLLCLIPBOARD  0x30A
def WM_SIZECLIPBOARD  0x30B
def WM_ASKCBFORMATNAME  0x30C
def WM_CHANGECBCHAIN  0x30D
def WM_HSCROLLCLIPBOARD  0x30E
def WM_QUERYNEWPALETTE  0x30F
def WM_PALETTEISCHANGING  0x310
def WM_PALETTECHANGED  0x311
def WM_HOTKEY        0x312
def WM_PENWINFIRST   0x380
def WM_PENWINLAST    0x38F
def WM_USER          0x400
def ST_BEGINSWP      0
def ST_ENDSWP        1
def HTERROR          (-2)
def HTTRANSPARENT    (-1)
def HTNOWHERE        0
def HTCLIENT         1
def HTCAPTION        2
def HTSYSMENU        3
def HTGROWBOX        4
def HTSIZE           HTGROWBOX
def HTMENU           5
def HTHSCROLL        6
def HTVSCROLL        7
def HTMINBUTTON      8
def HTMAXBUTTON      9
def HTLEFT           10
def HTRIGHT          11
def HTTOP            12
def HTTOPLEFT        13
def HTTOPRIGHT       14
def HTBOTTOM         15
def HTBOTTOMLEFT     16
def HTBOTTOMRIGHT    17
def HTBORDER         18
def HTREDUCE         HTMINBUTTON
def HTZOOM           HTMAXBUTTON
def HTSIZEFIRST      HTLEFT
def HTSIZELAST       HTBOTTOMRIGHT
def SMTO_NORMAL      0x0
def SMTO_BLOCK       0x1
def SMTO_ABORTIFHUNG  0x2
def MA_ACTIVATE      1
def MA_ACTIVATEANDEAT  2
def MA_NOACTIVATE    3
def MA_NOACTIVATEANDEAT  4
dll user32 #RegisterWindowMessage $lpString
def SIZE_RESTORED    0
def SIZE_MINIMIZED   1
def SIZE_MAXIMIZED   2
def SIZE_MAXSHOW     3
def SIZE_MAXHIDE     4
def SIZENORMAL       SIZE_RESTORED
def SIZEICONIC       SIZE_MINIMIZED
def SIZEFULLSCREEN   SIZE_MAXIMIZED
def SIZEZOOMSHOW     SIZE_MAXSHOW
def SIZEZOOMHIDE     SIZE_MAXHIDE
type WINDOWPOS hWnd hWndInsertAfter x y cx cy flags
def WVR_ALIGNTOP     0x10
def WVR_ALIGNLEFT    0x20
def WVR_ALIGNBOTTOM  0x40
def WVR_ALIGNRIGHT   0x80
def WVR_HREDRAW      0x100
def WVR_VREDRAW      0x200
def WVR_REDRAW       (WVR_HREDRAW |  WVR_VREDRAW)
def WVR_VALIDRECTS   0x400
def MK_LBUTTON       0x1
def MK_RBUTTON       0x2
def MK_SHIFT         0x4
def MK_CONTROL       0x8
def MK_MBUTTON       0x10
def WS_OVERLAPPED    0x0
def WS_POPUP         0x80000000
def WS_CHILD         0x40000000
def WS_MINIMIZE      0x20000000
def WS_VISIBLE       0x10000000
def WS_DISABLED      0x8000000
def WS_CLIPSIBLINGS  0x4000000
def WS_CLIPCHILDREN  0x2000000
def WS_MAXIMIZE      0x1000000
def WS_CAPTION       0xC00000
def WS_BORDER        0x800000
def WS_DLGFRAME      0x400000
def WS_VSCROLL       0x200000
def WS_HSCROLL       0x100000
def WS_SYSMENU       0x80000
def WS_THICKFRAME    0x40000
def WS_GROUP         0x20000
def WS_TABSTOP       0x10000
def WS_MINIMIZEBOX   0x20000
def WS_MAXIMIZEBOX   0x10000
def WS_TILED         WS_OVERLAPPED
def WS_ICONIC        WS_MINIMIZE
def WS_SIZEBOX       WS_THICKFRAME
def WS_OVERLAPPEDWINDOW  (WS_OVERLAPPED |  WS_CAPTION |  WS_SYSMENU |  WS_THICKFRAME |  WS_MINIMIZEBOX |  WS_MAXIMIZEBOX)
def WS_TILEDWINDOW   WS_OVERLAPPEDWINDOW
def WS_POPUPWINDOW   (WS_POPUP |  WS_BORDER |  WS_SYSMENU)
def WS_CHILDWINDOW   WS_CHILD
def WS_EX_DLGMODALFRAME  0x1
def WS_EX_NOPARENTNOTIFY  0x4
def WS_EX_TOPMOST    0x8
def WS_EX_ACCEPTFILES  0x10
def WS_EX_TRANSPARENT  0x20
def WS_EX_MDICHILD   0x40
def WS_EX_TOOLWINDOW  0x80
def WS_EX_WINDOWEDGE  0x100
def WS_EX_CLIENTEDGE  0x200
def WS_EX_CONTEXTHELP  0x400
def WS_EX_RIGHT      0x1000
def WS_EX_LEFT       0x0
def WS_EX_RTLREADING  0x2000
def WS_EX_LTRREADING  0x0
def WS_EX_LEFTSCROLLBAR  0x4000
def WS_EX_RIGHTSCROLLBAR  0x0
def WS_EX_CONTROLPARENT  0x10000
def WS_EX_STATICEDGE  0x20000
def WS_EX_APPWINDOW  0x40000
def WS_EX_OVERLAPPEDWINDOW  (WS_EX_WINDOWEDGE |  WS_EX_CLIENTEDGE)
def WS_EX_PALETTEWINDOW  (WS_EX_WINDOWEDGE |  WS_EX_TOOLWINDOW |  WS_EX_TOPMOST)
def CS_VREDRAW       0x1
def CS_HREDRAW       0x2
def CS_KEYCVTWINDOW  0x4
def CS_DBLCLKS       0x8
def CS_OWNDC         0x20
def CS_CLASSDC       0x40
def CS_PARENTDC      0x80
def CS_NOKEYCVT      0x100
def CS_NOCLOSE       0x200
def CS_SAVEBITS      0x800
def CS_BYTEALIGNCLIENT  0x1000
def CS_BYTEALIGNWINDOW  0x2000
def CS_PUBLICCLASS   0x4000
def CS_GLOBALCLASS   CS_PUBLICCLASS
def CF_TEXT          1
def CF_BITMAP        2
def CF_METAFILEPICT  3
def CF_SYLK          4
def CF_DIF           5
def CF_TIFF          6
def CF_OEMTEXT       7
def CF_DIB           8
def CF_PALETTE       9
def CF_PENDATA       10
def CF_RIFF          11
def CF_WAVE          12
def CF_UNICODETEXT   13
def CF_ENHMETAFILE   14
def CF_OWNERDISPLAY  0x80
def CF_DSPTEXT       0x81
def CF_DSPBITMAP     0x82
def CF_DSPMETAFILEPICT  0x83
def CF_DSPENHMETAFILE  0x8E
def CF_PRIVATEFIRST  0x200
def CF_PRIVATELAST   0x2FF
def CF_GDIOBJFIRST   0x300
def CF_GDIOBJLAST    0x3FF
def FVIRTKEY         True
def FNOINVERT        0x2
def FSHIFT           0x4
def FCONTROL         0x8
def FALT             0x10
type ACCEL !fVirt @key @cmd
type PAINTSTRUCT hDC fErase RECT'rcPaint fRestore fIncUpdate !rgbReserved[32]
type CREATESTRUCT lpCreateParams hInstance hMenu hWndParent cy cx y x style $lpszName $lpszClass ExStyle
type CBT_CREATEWND CREATESTRUCT'lpcs hWndInsertAfter
type WINDOWPLACEMENT Length flags showCmd POINT'ptMinPosition POINT'ptMaxPosition RECT'rcNormalPosition
def WPF_SETMINPOSITION  0x1
def WPF_RESTORETOMAXIMIZED  0x2
def ODT_MENU         1
def ODT_LISTBOX      2
def ODT_COMBOBOX     3
def ODT_BUTTON       4
def ODA_DRAWENTIRE   0x1
def ODA_SELECT       0x2
def ODA_FOCUS        0x4
def ODS_SELECTED     0x1
def ODS_GRAYED       0x2
def ODS_DISABLED     0x4
def ODS_CHECKED      0x8
def ODS_FOCUS        0x10
type MEASUREITEMSTRUCT CtlType CtlID itemID itemWidth itemHeight itemData
type DRAWITEMSTRUCT CtlType CtlID itemID itemAction itemState hWndItem hDC RECT'rcItem itemData
type DELETEITEMSTRUCT CtlType CtlID itemID hWndItem itemData
type COMPAREITEMSTRUCT CtlType CtlID hWndItem itemID1 itemData1 itemID2 itemData2
dll user32 #GetMessage MSG*lpMsg hWnd wMsgFilterMin wMsgFilterMax
dll user32 #TranslateMessage MSG*lpMsg
dll user32 #DispatchMessage MSG*lpMsg
dll user32 #PeekMessage MSG*lpMsg hWnd wMsgFilterMin wMsgFilterMax wRemoveMsg
def PM_NOREMOVE      0x0
def PM_REMOVE        0x1
def PM_NOYIELD       0x2
dll user32 #RegisterHotKey hWnd id fsModifiers vk
dll user32 #UnregisterHotKey hWnd id
def MOD_ALT          0x1
def MOD_CONTROL      0x2
def MOD_SHIFT        0x4
def IDHOT_SNAPWINDOW  (-1)
def IDHOT_SNAPDESKTOP  (-2)
def EWX_LOGOFF       0
def EWX_SHUTDOWN     1
def EWX_REBOOT       2
def EWX_FORCE        4
def READAPI          0
def WRITEAPI         1
def READ_WRITE       2
dll user32 #ExitWindows dwReserved uReturnCode
dll user32 #ExitWindowsEx uFlags dwReserved
dll user32 #SwapMouseButton bSwap
dll user32 #GetMessagePos
dll user32 #GetMessageTime
dll user32 #GetMessageExtraInfo
dll user32 #SendMessage hWnd wMsg wParam !*lParam
dll user32 #SendMessageTimeout hWnd msg wParam lParam fuFlags uTimeout *lpdwResult
dll user32 #SendNotifyMessage hWnd msg wParam lParam
dll user32 #SendMessageCallback hWnd msg wParam lParam lpResultCallBack dwData
dll user32 #PostMessage hWnd wMsg wParam lParam
dll user32 #PostThreadMessage idThread msg wParam lParam
def hWnd_BROADCAST   0xFFFF
type WNDCLASS style lpfnwndproc cbClsextra cbWndExtra2 hInstance hIcon hCursor hbrBackground $lpszMenuName $lpszClassName
type WNDCLASSEX cbSize style lpfnwndproc cbClsextra cbWndExtra2 hInstance hIcon hCursor hbrBackground $lpszMenuName $lpszClassName hIconSm
dll user32 #AttachThreadInput idAttach idAttachTo fAttach
dll user32 #ReplyMessage lReply
dll user32 #WaitMessage
dll user32 #WaitForInputIdle hProcess dwMilliseconds
dll user32 #DefWindowProc hWnd wMsg wParam lParam
dll user32 PostQuitMessage nExitCode
dll user32 #InSendMessage
dll user32 #GetDoubleClickTime
dll user32 #SetDoubleClickTime wCount
dll user32 #RegisterClass WNDCLASS*Class
dll user32 #RegisterClassEx WNDCLASSEX*pcWndClassEx
dll user32 #UnregisterClass $lpClassName hInstance
dll user32 #GetClassInfo hInstance $lpClassName WNDCLASS*lpWndClass
def CW_USEDEFAULT    0x80000000
def hWnd_DESKTOP     0
dll user32 #CreateWindow $lpClassName $lpWindowName dwStyle x y nWidth nHeight hWndParent hMenu hInstance !*lpParam
dll user32 #CreateWindowEx dwExStyle $lpClassName $lpWindowName dwStyle x y nWidth nHeight hWndParent hMenu hInstance !*lpParam
dll user32 #IsWindow hWnd
dll user32 #IsMenu hMenu
dll user32 #IsChild hWndParent hWnd
dll user32 #DestroyWindow hWnd
dll user32 #ShowWindow hWnd nCmdShow
dll user32 #FlashWindow hWnd bInvert
dll user32 #ShowOwnedPopups hWnd fShow
dll user32 #OpenIcon hWnd
dll user32 #CloseWindow hWnd
dll user32 #MoveWindow hWnd x y nWidth nHeight bRepaint
dll user32 #SetWindowPos hWnd hWndInsertAfter x y cx cy wFlags
dll user32 #GetWindowPlacement hWnd WINDOWPLACEMENT*lpwndpl
dll user32 #SetWindowPlacement hWnd WINDOWPLACEMENT*lpwndpl
dll user32 #BeginDeferWindowPos nNumWindows
dll user32 #DeferWindowPos hWinPosInfo hWnd hWndInsertAfter x y cx cy wFlags
dll user32 #EndDeferWindowPos hWinPosInfo
dll user32 #IsWindowVisible hWnd
dll user32 #IsIconic hWnd
dll user32 #AnyPopup
dll user32 #BringWindowToTop hWnd
dll user32 #IsZoomed hWnd
def SWP_NOSIZE       0x1
def SWP_NOMOVE       0x2
def SWP_NOZORDER     0x4
def SWP_NOREDRAW     0x8
def SWP_NOACTIVATE   0x10
def SWP_FRAMECHANGED  0x20
def SWP_SHOWWINDOW   0x40
def SWP_HIDEWINDOW   0x80
def SWP_NOCOPYBITS   0x100
def SWP_NOOWNERZORDER  0x200
def SWP_DRAWFRAME    SWP_FRAMECHANGED
def SWP_NOREPOSITION  SWP_NOOWNERZORDER
def HWND_TOP         0
def HWND_BOTTOM      1
def HWND_TOPMOST     -1
def HWND_NOTOPMOST   -2
type DLGTEMPLATE style dwExtendedStyle @cdit @x @y @cx @cy
type DLGITEMTEMPLATE style dwExtendedStyle @x @y @cx @cy @id
dll user32 #EndDialog hDlg nResult
dll user32 #GetDlgItem hDlg nIDDlgItem
dll user32 #SetDlgItemInt hDlg nIDDlgItem wValue bSigned
dll user32 #GetDlgItemInt hDlg nIDDlgItem lpTranslated bSigned
dll user32 #SetDlgItemText hDlg nIDDlgItem $lpString
dll user32 #GetDlgItemText hDlg nIDDlgItem $lpString nMaxCount
dll user32 #CheckDLGButtonA hDlg nIDButton wCheck
dll user32 #CheckRadioButton hDlg nIDFirstButton nIDLastButton nIDCheckButton
dll user32 #IsDlgButtonChecked hDlg nIDButton
dll user32 #SendDlgItemMessage hDlg nIDDlgItem wMsg wParam lParam
dll user32 #GetNextDlgGroupItem hDlg hCtl bPrevious
dll user32 #GetNextDlgTabItem hDlg hCtl bPrevious
dll user32 #GetDlgCtrlID hWnd
dll user32 #GetDialogBaseUnits
dll user32 #DefDlgProc hDlg wMsg wParam lParam
def DLGWINDOWEXTRA   30
dll user32 #CallMsgFilter MSG*lpMsg ncode
dll user32 #OpenClipboard hWnd
dll user32 #CloseClipboard
dll user32 #GetClipboardOwner
dll user32 #SetClipboardViewer hWnd
dll user32 #GetClipboardViewer
dll user32 #ChangeClipboardChain hWnd hWndNext
dll user32 #SetClipboardData wFormat hMem
dll user32 #GetClipboardData wFormat
dll user32 #RegisterClipboardFormat $lpString
dll user32 #CountClipboardFormats
dll user32 #EnumClipboardFormats wFormat
dll user32 #GetClipboardFormatName wFormat $lpString nMaxCount
dll user32 #EmptyClipboard
dll user32 #IsClipboardFormatAvailable wFormat
dll user32 #GetPriorityClipboardFormat *lpPriorityList nCount
dll user32 #GetOpenClipboardWindow
dll user32 #CharToOem $lpszSrc $lpszDst
dll user32 #OemToChar $lpszSrc $lpszDst
dll user32 #CharToOemBuff $lpszSrc $lpszDst cchDstLength
dll user32 #OemToCharBuff $lpszSrc $lpszDst cchDstLength
dll user32 $CharUpper $lpsz
dll user32 #CharUpperBuff $lpsz cchLength
dll user32 $CharLower $lpsz
dll user32 #CharLowerBuff $lpsz cchLength
dll user32 $CharNext $lpsz
dll user32 $CharPrev $lpszStart $lpszCurrent
dll user32 #IsCharAlpha !cChar
dll user32 #IsCharAlphaNumeric !cChar
dll user32 #IsCharUpper !cChar
dll user32 #IsCharLower !cChar
dll user32 #SetFocus hWnd
dll user32 #GetFocus
dll user32 #GetActiveWindow
dll user32 #GetKBCodePage
dll user32 #GetKeyState nVirtKey
dll user32 #GetAsyncKeyState vKey
dll user32 #GetKeyboardState !*pbKeyState
dll user32 #SetKeyboardState !*lppbKeyState
dll user32 #GetKeyboardType nTypeFlag
dll user32 #GetKeyNameText lParam $lpBuffer nSize
dll user32 #ToAscii uVirtKey uScanCode !*lpbKeyState *lpwTransKey fuState
dll user32 #ToUnicode wVirtKey wScanCode !*lpKeyState $pwszBuff cchBuff wFlags
dll user32 #OemKeyScan wOemChar
dll user32 #VkKeyScan !cChar
def KEYEVENTF_EXTENDEDKEY  0x1
def KEYEVENTF_KEYUP  0x2
dll user32 keybd_event !bVk !bScan dwFlags dwExtraInfo
def MOUSEEVENTF_MOVE  0x1
def MOUSEEVENTF_LEFTDOWN  0x2
def MOUSEEVENTF_LEFTUP  0x4
def MOUSEEVENTF_RIGHTDOWN  0x8
def MOUSEEVENTF_RIGHTUP  0x10
def MOUSEEVENTF_MIDDLEDOWN  0x20
def MOUSEEVENTF_MIDDLEUP  0x40
def MOUSEEVENTF_ABSOLUTE  0x8000
dll user32 mouse_event dwFlags dx dy cButtons dwExtraInfo
dll user32 #MapVirtualKey wCode wMapType
dll user32 #GetInputState
dll user32 #GetQueueStatus fuFlags
dll user32 #GetCapture
dll user32 #SetCapture hWnd
dll user32 #ReleaseCapture
dll user32 #MsgWaitForMultipleObjects nCount *pHandles fWaitAll dwMilliseconds dwWakeMask
def QS_KEY           0x1
def QS_MOUSEMOVE     0x2
def QS_MOUSEBUTTON   0x4
def QS_POSTMESSAGE   0x8
def QS_TIMER         0x10
def QS_PAINT         0x20
def QS_SENDMESSAGE   0x40
def QS_HOTKEY        0x80
def QS_MOUSE         (QS_MOUSEMOVE |  QS_MOUSEBUTTON)
def QS_INPUT         (QS_MOUSE |  QS_KEY)
def QS_ALLEVENTS     (QS_INPUT |  QS_POSTMESSAGE |  QS_TIMER |  QS_PAINT |  QS_HOTKEY)
def QS_ALLINPUT      (QS_SENDMESSAGE |  QS_PAINT |  QS_TIMER |  QS_POSTMESSAGE |  QS_MOUSEBUTTON |  QS_MOUSEMOVE |  QS_HOTKEY |  QS_KEY)
dll user32 #KillTimer hWnd nIDEvent
dll user32 #IsWindowUnicode hWnd
dll user32 #EnableWindow hWnd fEnable
dll user32 #IsWindowEnabled hWnd
dll user32 #LoadAccelerators hInstance $lpTableName
dll user32 #CreateAcceleratorTable ACCEL*lpaccl cEntries
dll user32 #DestroyAcceleratorTable haccel
dll user32 #CopyAcceleratorTable hAccelSrc ACCEL*lpAccelDst cAccelEntries
dll user32 #TranslateAccelerator hWnd hAccTable MSG*lpMsg
def SM_CXSCREEN      0
def SM_CYSCREEN      1
def SM_CXVSCROLL     2
def SM_CYHSCROLL     3
def SM_CYCAPTION     4
def SM_CXBORDER      5
def SM_CYBORDER      6
def SM_CXDLGFRAME    7
def SM_CYDLGFRAME    8
def SM_CYVTHUMB      9
def SM_CXHTHUMB      10
def SM_CXICON        11
def SM_CYICON        12
def SM_CXCURSOR      13
def SM_CYCURSOR      14
def SM_CYMENU        15
def SM_CXFULLSCREEN  16
def SM_CYFULLSCREEN  17
def SM_CYKANJIWINDOW  18
def SM_MOUSEPRESENT  19
def SM_CYVSCROLL     20
def SM_CXHSCROLL     21
def SM_DEBUG         22
def SM_SWAPBUTTON    23
def SM_RESERVED1     24
def SM_RESERVED2     25
def SM_RESERVED3     26
def SM_RESERVED4     27
def SM_CXMIN         28
def SM_CYMIN         29
def SM_CXSIZE        30
def SM_CYSIZE        31
def SM_CXFRAME       32
def SM_CYFRAME       33
def SM_CXMINTRACK    34
def SM_CYMINTRACK    35
def SM_CXDOUBLECLK   36
def SM_CYDOUBLECLK   37
def SM_CXICONSPACING  38
def SM_CYICONSPACING  39
def SM_MENUDROPALIGNMENT  40
def SM_PENWINDOWS    41
def SM_DBCSENABLED   42
def SM_CMOUSEBUTTONS  43
def SM_CMETRICS      44
def SM_CXSIZEFRAME   SM_CXFRAME
def SM_CYSIZEFRAME   SM_CYFRAME
def SM_CXFIXEDFRAME  SM_CXDLGFRAME
def SM_CYFIXEDFRAME  SM_CYDLGFRAME
def SM_SECURE        44
def SM_CXEDGE        45
def SM_CYEDGE        46
def SM_CXMINSPACING  47
def SM_CYMINSPACING  48
def SM_CXSMICON      49
def SM_CYSMICON      50
def SM_CYSMCAPTION   51
def SM_CXSMSIZE      52
def SM_CYSMSIZE      53
def SM_CXMENUSIZE    54
def SM_CYMENUSIZE    55
def SM_ARRANGE       56
def SM_CXMINIMIZED   57
def SM_CYMINIMIZED   58
def SM_CXMAXTRACK    59
def SM_CYMAXTRACK    60
def SM_CXMAXIMIZED   61
def SM_CYMAXIMIZED   62
def SM_NETWORK       63
def SM_CLEANBOOT     67
def SM_CXDRAG        68
def SM_CYDRAG        69
def SM_SHOWSOUNDS    70
def SM_CXMENUCHECK   71
def SM_CYMENUCHECK   72
def SM_SLOWMACHINE   73
def SM_MIDEASTENABLED  74
def SM_MOUSEWHEELPRESENT  75
def SM_CMETRICS      75
def SM_CMETRICS      76
dll user32 #GetSystemMetrics nIndex
dll user32 #LoadMenu hInstance $lpString
dll user32 #LoadMenuIndirect lpMenuTemplate
dll user32 #GetMenu hWnd
dll user32 #SetMenu hWnd hMenu
dll user32 #HiliteMenuItem hWnd hMenu wIDHiliteItem wHilite
dll user32 #GetMenuString hMenu wIDItem $lpString nMaxCount wFlag
dll user32 #GetMenuState hMenu wID wFlags
dll user32 #DrawMenuBar hWnd
dll user32 #GetSystemMenu hWnd bRevert
dll user32 #CreateMenu
dll user32 #CreatePopupMenu
dll user32 #DestroyMenu hMenu
dll user32 #CheckMenuItem hMenu wIDCheckItem wCheck
dll user32 #EnableMenuItem hMenu wIDEnableItem wEnable
dll user32 #GetSubMenu hMenu nPos
dll user32 #GetMenuItemID hMenu nPos
dll user32 #GetMenuItemCount hMenu
dll user32 #InsertMenu hMenu nPosition wFlags wIDNewItem $lpNewItem
dll user32 #AppendMenu hMenu wFlags wIDNewItem $lpNewItem
dll user32 #ModifyMenu hMenu nPosition wFlags wIDNewItem $lpString
dll user32 #RemoveMenu hMenu nPosition wFlags
dll user32 #DeleteMenu hMenu nPosition wFlags
dll user32 #SetMenuItemBitmaps hMenu nPosition wFlags hBitmapUnchecked hBitmapChecked
dll user32 #GetMenuCheckMarkDimensions
dll user32 #TrackPopupMenu hMenu wFlags x y nReserved hWnd RECT*lprc
def TPM_LEFTBUTTON   0x0
def TPM_RIGHTBUTTON  0x2
def TPM_LEFTALIGN    0x0
def TPM_CENTERALIGN  0x4
def TPM_RIGHTALIGN   0x8
dll user32 #DrawIcon hDC x y hIcon
def DT_TOP           0x0
def DT_LEFT          0x0
def DT_CENTER        0x1
def DT_RIGHT         0x2
def DT_VCENTER       0x4
def DT_BOTTOM        0x8
def DT_WORDBREAK     0x10
def DT_SINGLELINE    0x20
def DT_EXPANDTABS    0x40
def DT_TABSTOP       0x80
def DT_NOCLIP        0x100
def DT_EXTERNALLEADING  0x200
def DT_CALCRECT      0x400
def DT_NOPREFIX      0x800
def DT_INTERNAL      0x1000
dll user32 #DrawText hDC $lpStr nCount RECT*lpRect wFormat
dll user32 #TabbedTextOut hDC x y $lpString nCount nTabPositions *lpnTabStopPositions nTabOrigin
dll user32 #GetTabbedTextExtent hDC $lpString nCount nTabPositions *lpnTabStopPositions
dll user32 #UpdateWindow hWnd
dll user32 #SetActiveWindow hWnd
dll user32 #GetForegroundWindow
dll user32 #SetForegroundWindow hWnd
dll user32 #WindowFromDC hDC
dll user32 #GetDC hWnd
dll user32 #GetDCEx hWnd hrgnclip fdwOptions
def DCX_WINDOW       0x1
def DCX_CACHE        0x2
def DCX_NORESETATTRS  0x4
def DCX_CLIPCHILDREN  0x8
def DCX_CLIPSIBLINGS  0x10
def DCX_PARENTCLIP   0x20
def DCX_EXCLUDERGN   0x40
def DCX_INTERSECTRGN  0x80
def DCX_EXCLUDEUPDATE  0x100
def DCX_INTERSECTUPDATE  0x200
def DCX_LOCKWINDOWUPDATE  0x400
def DCX_NORECOMPUTE  0x100000
def DCX_VALIDATE     0x200000
dll user32 #GetWindowDC hWnd
dll user32 #ReleaseDC hWnd hDC
dll user32 #BeginPaint hWnd PAINTSTRUCT*lpPaint
dll user32 #EndPaint hWnd PAINTSTRUCT*lpPaint
dll user32 #GetUpdateRect hWnd RECT*lpRect bErase
dll user32 #GetUpdateRgn hWnd hRgn fErase
dll user32 #ExcludeUpdateRgn hDC hWnd
dll user32 #InvalidateRect hWnd RECT*lpRect bErase
dll user32 #ValidateRect hWnd RECT*lpRect
dll user32 #InvalidateRgn hWnd hRgn bErase
dll user32 #ValidateRgn hWnd hRgn
dll user32 #RedrawWindow hWnd RECT*lprcUpdate hrgnUpdate fuRedraw
def RDW_INVALIDATE   0x1
def RDW_INTERNALPAINT  0x2
def RDW_ERASE        0x4
def RDW_VALIDATE     0x8
def RDW_NOINTERNALPAINT  0x10
def RDW_NOERASE      0x20
def RDW_NOCHILDREN   0x40
def RDW_ALLCHILDREN  0x80
def RDW_UPDATENOW    0x100
def RDW_ERASENOW     0x200
def RDW_FRAME        0x400
def RDW_NOFRAME      0x800
dll user32 #LockWindowUpdate hWndLock
dll user32 #ScrollWindow hWnd XAmount YAmount RECT*lpRect RECT*lpClipRect
dll user32 #ScrollDC hDC dx dy RECT*lprcScroll RECT*lprcClip hrgnUpdate RECT*lprcUpdate
dll user32 #ScrollWindowEx hWnd dx dy RECT*lprcScroll RECT*lprcClip hrgnUpdate RECT*lprcUpdate fuScroll
def SW_SCROLLCHILDREN  0x1
def SW_INVALIDATE    0x2
def SW_ERASE         0x4
dll user32 #SetScrollPos hWnd nBar nPos bRedraw
dll user32 #GetScrollPos hWnd nBar
dll user32 #SetScrollRange hWnd nBar nMinPos nMaxPos bRedraw
dll user32 #GetScrollRange hWnd nBar *lpMinPos *lpMaxPos
dll user32 #ShowScrollBar hWnd wBar bShow
dll user32 #EnableScrollBar hWnd wSBflags wArrows
def ESB_ENABLE_BOTH  0x0
def ESB_DISABLE_BOTH  0x3
def ESB_DISABLE_LEFT  0x1
def ESB_DISABLE_RIGHT  0x2
def ESB_DISABLE_UP   0x1
def ESB_DISABLE_DOWN  0x2
def ESB_DISABLE_LTUP  ESB_DISABLE_LEFT
def ESB_DISABLE_RTDN  ESB_DISABLE_RIGHT
dll user32 #SetProp hWnd $lpString hData
dll user32 #GetProp hWnd $lpString
dll user32 #RemoveProp hWnd $lpString
dll user32 #SetWindowText hWnd $lpString
dll user32 #GetWindowText hWnd $lpString cch
dll user32 #GetWindowTextLength hWnd
dll user32 #GetClientRect hWnd RECT*lpRect
dll user32 #GetWindowRect hWnd RECT*lpRect
dll user32 #AdjustWindowRect RECT*lpRect dwStyle bMenu
dll user32 #AdjustWindowRectEx RECT*lpRect dsStyle bMenu dwEsStyle
def MB_OK            0x0
def MB_OKCANCEL      0x1
def MB_ABORTRETRYIGNORE  0x2
def MB_YESNOCANCEL   0x3
def MB_YESNO         0x4
def MB_RETRYCANCEL   0x5
def MB_ICONHAND      0x10
def MB_ICONQUESTION  0x20
def MB_ICONEXCLAMATION  0x30
def MB_ICONASTERISK  0x40
def MB_ICONINFORMATION  MB_ICONASTERISK
def MB_ICONSTOP      MB_ICONHAND
def MB_DEFBUTTON1    0x0
def MB_DEFBUTTON2    0x100
def MB_DEFBUTTON3    0x200
def MB_APPLMODAL     0x0
def MB_SYSTEMMODAL   0x1000
def MB_TASKMODAL     0x2000
def MB_NOFOCUS       0x8000
def MB_SETFOREGROUND  0x10000
def MB_DEFAULT_DESKTOP_ONLY  0x20000
def MB_TYPEMASK      0xF
def MB_ICONMASK      0xF0
def MB_DEFMASK       0xF00
def MB_MODEMASK      0x3000
def MB_MISCMASK      0xC000
dll user32 #MessageBox hWnd $lpText $lpCaption wType
dll user32 #MessageBoxEx hWnd $lpText $lpCaption uType wLanguageId
dll user32 #MessageBeep wType
dll user32 #ShowCursor bShow
dll user32 #SetCursorPos x y
dll user32 #SetCursor hCursor
dll user32 #GetCursorPos POINT*lpPoint
dll user32 #ClipCursor !*lpRect
dll user32 #GetCursor
dll user32 #GetClipCursor RECT*lprc
dll user32 #CreateCaret hWnd hBitmap nWidth nHeight
dll user32 #GetCaretBlinkTime
dll user32 #SetCaretBlinkTime wMSeconds
dll user32 #DestroyCaret
dll user32 #HideCaret hWnd
dll user32 #ShowCaret hWnd
dll user32 #SetCaretPos x y
dll user32 #GetCaretPos POINT*lpPoint
dll user32 #ClientToScreen hWnd POINT*lpPoint
dll user32 #ScreenToClient hWnd POINT*lpPoint
dll user32 #MapWindowPoints hWndFrom hWndTo !*lppt cPoints
dll user32 #WindowFromPoint xPoint yPoint
dll user32 #ChildWindowFromPoint hWnd xPoint yPoint
def CTLCOLOR_MSGBOX  0
def CTLCOLOR_EDIT    1
def CTLCOLOR_LISTBOX  2
def CTLCOLOR_BTN     3
def CTLCOLOR_DLG     4
def CTLCOLOR_SCROLLBAR  5
def CTLCOLOR_STATIC  6
def CTLCOLOR_MAX     8
def COLOR_SCROLLBAR  0
def COLOR_BACKGROUND  1
def COLOR_ACTIVECAPTION  2
def COLOR_INACTIVECAPTION  3
def COLOR_MENU       4
def COLOR_WINDOW     5
def COLOR_WINDOWFRAME  6
def COLOR_MENUTEXT   7
def COLOR_WINDOWTEXT  8
def COLOR_CAPTIONTEXT  9
def COLOR_ACTIVEBORDER  10
def COLOR_INACTIVEBORDER  11
def COLOR_APPWORKSPACE  12
def COLOR_HIGHLIGHT  13
def COLOR_HIGHLIGHTTEXT  14
def COLOR_BTNFACE    15
def COLOR_BTNSHADOW  16
def COLOR_GRAYTEXT   17
def COLOR_BTNTEXT    18
def COLOR_INACTIVECAPTIONTEXT  19
def COLOR_BTNHIGHLIGHT  20
dll user32 #GetSysColor nIndex
dll user32 #SetSysColors nChanges *lpSysColor *lpColorValues
dll user32 #DrawFocusRect hDC RECT*lpRect
dll user32 #FillRect hDC RECT*lpRect hBrush
dll user32 #FrameRect hDC RECT*lpRect hBrush
dll user32 #InvertRect hDC RECT*lpRect
dll user32 #SetRect RECT*lpRect X1 Y1 X2 Y2
dll user32 #SetRectEmpty RECT*lpRect
dll user32 #CopyRect RECT*lpDestRect RECT*lpSourceRect
dll user32 #InflateRect RECT*lpRect x y
dll user32 #IntersectRect RECT*lpDestRect RECT*lpSrc1Rect RECT*lpSrc2Rect
dll user32 #UnionRect RECT*lpDestRect RECT*lpSrc1Rect RECT*lpSrc2Rect
dll user32 #SubtractRect RECT*lprcDst RECT*lprcSrc1 RECT*lprcSrc2
dll user32 #OffsetRect RECT*lpRect x y
dll user32 #IsRectEmpty RECT*lpRect
dll user32 #EqualRect RECT*lpRect1 RECT*lpRect2
dll user32 #PtInRect RECT*lpRect ptY ptX
dll user32 #GetWindowWord hWnd nIndex
dll user32 #SetWindowWord hWnd nIndex wNewWord
dll user32 #GetWindowLong hWnd nIndex
dll user32 #SetWindowLong hWnd nIndex dwNewLong
dll user32 #GetClassWord hWnd nIndex
dll user32 #SetClassWord hWnd nIndex wNewWord
dll user32 #GetClassLong hWnd nIndex
dll user32 #SetClassLong hWnd nIndex dwNewLong
dll user32 #GetDesktopWindow
dll user32 #GetParent hWnd
dll user32 #SetParent hWndChild hWndNewParent
dll user32 #FindWindow $lpClassName $lpWindowName
dll user32 #GetClassName hWnd $lpClassName nMaxCount
dll user32 #GetTopWindow hWnd
dll user32 #GetWindow hWnd wFlag
dll user32 #GetWindowThreadProcessId hWnd *lpdwProcessId
dll user32 #GetLastActivePopup hWndOwnder
def GW_HWNDFIRST     0
def GW_HWNDLAST      1
def GW_HWNDNEXT      2
def GW_HWNDPREV      3
def GW_OWNER         4
def GW_CHILD         5
def GW_MAX           5
dll user32 #GetWindow hWnd wCmd
dll user32 #UnhookWindowsHookEx hHook
dll user32 #CallNextHookEx hHook ncode wParam !*lParam
def MF_INSERT        0x0
def MF_CHANGE        0x80
def MF_APPEND        0x100
def MF_DELETE        0x200
def MF_REMOVE        0x1000
def MF_BYCOMMAND     0x0
def MF_BYPOSITION    0x400
def MF_SEPARATOR     0x800
def MF_ENABLED       0x0
def MF_GRAYED        0x1
def MF_DISABLED      0x2
def MF_UNCHECKED     0x0
def MF_CHECKED       0x8
def MF_USECHECKBITMAPS  0x200
def MF_STRING        0x0
def MF_BITMAP        0x4
def MF_OWNERDRAW     0x100
def MF_POPUP         0x10
def MF_MENUBARBREAK  0x20
def MF_MENUBREAK     0x40
def MF_UNHILITE      0x0
def MF_HILITE        0x80
def MF_SYSMENU       0x2000
def MF_HELP          0x4000
def MF_MOUSESELECT   0x8000
type MENUITEMTEMPLATEHEADER @versionNumber @offset
type MENUITEMTEMPLATE @mtOption @mtID !mtString
def MF_END           0x80
def SC_SIZE          0xF000
def SC_MOVE          0xF010
def SC_MINIMIZE      0xF020
def SC_MAXIMIZE      0xF030
def SC_NEXTWINDOW    0xF040
def SC_PREVWINDOW    0xF050
def SC_CLOSE         0xF060
def SC_VSCROLL       0xF070
def SC_HSCROLL       0xF080
def SC_MOUSEMENU     0xF090
def SC_KEYMENU       0xF100
def SC_ARRANGE       0xF110
def SC_RESTORE       0xF120
def SC_TASKLIST      0xF130
def SC_SCREENSAVE    0xF140
def SC_HOTKEY        0xF150
def SC_ICON          SC_MINIMIZE
def SC_ZOOM          SC_MAXIMIZE
dll user32 #LoadBitmap hInstance $lpBitmapName
dll user32 #LoadCursor hInstance $lpCursorName
dll user32 #CreateCursor hInstance nXhotspot nYhotspot nWidth nHeight !*lpANDbitPlane !*lpXORbitPlane
dll user32 #DestroyCursor hCursor
dll user32 #CopyCursor hcur
def IDC_ARROW        32512
def IDC_IBEAM        32513
def IDC_WAIT         32514
def IDC_CROSS        32515
def IDC_UPARROW      32516
def IDC_SIZE         32640
def IDC_ICON         32641
def IDC_SIZENWSE     32642
def IDC_SIZENESW     32643
def IDC_SIZEWE       32644
def IDC_SIZENS       32645
def IDC_SIZEALL      32646
def IDC_NO           32648
def IDC_APPSTARTING  32650
type ICONINFO fIcon xHotspot yHotspot hbmMask hbmColor
dll user32 #LoadIcon hInstance $lpIconName
dll user32 #CreateIcon hInstance nWidth nHeight !nPlanes !nBitsPixel !*lpANDbits !*lpXORbits
dll user32 #DestroyIcon hIcon
dll user32 #LookupIconIdFromDirectory !*presbits fIcon
dll user32 #CreateIconFromResource !*presbits dwResSize fIcon dwVer
dll user32 #CreateIconIndirect ICONINFO*piconinfo
dll user32 #CopyIcon hIcon
dll user32 #GetIconInfo hIcon ICONINFO*piconinfo
def OBM_CLOSE        32754
def OBM_UPARROW      32753
def OBM_DNARROW      32752
def OBM_RGARROW      32751
def OBM_LFARROW      32750
def OBM_REDUCE       32749
def OBM_ZOOM         32748
def OBM_RESTORE      32747
def OBM_REDUCED      32746
def OBM_ZOOMD        32745
def OBM_RESTORED     32744
def OBM_UPARROWD     32743
def OBM_DNARROWD     32742
def OBM_RGARROWD     32741
def OBM_LFARROWD     32740
def OBM_MNARROW      32739
def OBM_COMBO        32738
def OBM_UPARROWI     32737
def OBM_DNARROWI     32736
def OBM_RGARROWI     32735
def OBM_LFARROWI     32734
def OBM_OLD_CLOSE    32767
def OBM_SIZE         32766
def OBM_OLD_UPARROW  32765
def OBM_OLD_DNARROW  32764
def OBM_OLD_RGARROW  32763
def OBM_OLD_LFARROW  32762
def OBM_BTSIZE       32761
def OBM_CHECK        32760
def OBM_CHECKBOXES   32759
def OBM_BTNCORNERS   32758
def OBM_OLD_REDUCE   32757
def OBM_OLD_ZOOM     32756
def OBM_OLD_RESTORE  32755
def OCR_NORMAL       32512
def OCR_IBEAM        32513
def OCR_WAIT         32514
def OCR_CROSS        32515
def OCR_UP           32516
def OCR_SIZE         32640
def OCR_ICON         32641
def OCR_SIZENWSE     32642
def OCR_SIZENESW     32643
def OCR_SIZEWE       32644
def OCR_SIZENS       32645
def OCR_SIZEALL      32646
def OCR_ICOCUR       32647
def OCR_NO           32648
def OIC_SAMPLE       32512
def OIC_HAND         32513
def OIC_QUES         32514
def OIC_BANG         32515
def OIC_NOTE         32516
def ORD_LANGDRIVER   1
def IDI_APPLICATION  32512
def IDI_HAND         32513
def IDI_QUESTION     32514
def IDI_EXCLAMATION  32515
def IDI_ASTERISK     32516
def IDI_WINLOGO      32517
dll user32 #LoadString hInstance wID $lpBuffer nBufferMax
def IDOK             1
def IDCANCEL         2
def IDABORT          3
def IDRETRY          4
def IDIGNORE         5
def IDYES            6
def IDNO             7
def ES_LEFT          0x0
def ES_CENTER        0x1
def ES_RIGHT         0x2
def ES_MULTILINE     0x4
def ES_UPPERCASE     0x8
def ES_LOWERCASE     0x10
def ES_PASSWORD      0x20
def ES_AUTOVSCROLL   0x40
def ES_AUTOHSCROLL   0x80
def ES_NOHIDESEL     0x100
def ES_OEMCONVERT    0x400
def ES_READONLY      0x800
def ES_WANTRETURN    0x1000
def EN_SETFOCUS      0x100
def EN_KILLFOCUS     0x200
def EN_CHANGE        0x300
def EN_UPDATE        0x400
def EN_ERRSPACE      0x500
def EN_MAXTEXT       0x501
def EN_HSCROLL       0x601
def EN_VSCROLL       0x602
def EM_GETSEL        0xB0
def EM_SETSEL        0xB1
def EM_GETRECT       0xB2
def EM_SETRECT       0xB3
def EM_SETRECTNP     0xB4
def EM_SCROLL        0xB5
def EM_LINESCROLL    0xB6
def EM_SCROLLCARET   0xB7
def EM_GETMODIFY     0xB8
def EM_SETMODIFY     0xB9
def EM_GETLINECOUNT  0xBA
def EM_LINEINDEX     0xBB
def EM_SETHANDLE     0xBC
def EM_GETHANDLE     0xBD
def EM_GETTHUMB      0xBE
def EM_LINELENGTH    0xC1
def EM_REPLACESEL    0xC2
def EM_GETLINE       0xC4
def EM_LIMITTEXT     0xC5
def EM_CANUNDO       0xC6
def EM_UNDO          0xC7
def EM_FMTLINES      0xC8
def EM_LINEFROMCHAR  0xC9
def EM_SETTABSTOPS   0xCB
def EM_SETPASSWORDCHAR  0xCC
def EM_EMPTYUNDOBUFFER  0xCD
def EM_GETFIRSTVISIBLELINE  0xCE
def EM_SETREADONLY   0xCF
def EM_SETWORDBREAKPROC  0xD0
def EM_GETWORDBREAKPROC  0xD1
def EM_GETPASSWORDCHAR  0xD2
def WB_LEFT          0
def WB_RIGHT         1
def WB_ISDELIMITER   2
def BS_PUSHBUTTON    0x0
def BS_DEFPUSHBUTTON  0x1
def BS_CHECKBOX      0x2
def BS_AUTOCHECKBOX  0x3
def BS_RADIOBUTTON   0x4
def BS_3STATE        0x5
def BS_AUTO3STATE    0x6
def BS_GROUPBOX      0x7
def BS_USERBUTTON    0x8
def BS_AUTORADIOBUTTON  0x9
def BS_OWNERDRAW     0xB
def BS_LEFTTEXT      0x20
def BN_CLICKED       0
def BN_PAINT         1
def BN_HILITE        2
def BN_UNHILITE      3
def BN_DISABLE       4
def BN_DOUBLECLICKED  5
def BM_GETCHECK      0xF0
def BM_SETCHECK      0xF1
def BM_GETSTATE      0xF2
def BM_SETSTATE      0xF3
def BM_SETSTYLE      0xF4
def BM_CLICK         0xF5
def BM_GETIMAGE      0xF6
def BM_SETIMAGE      0xF7
def BST_UNCHECKED    0x0
def BST_CHECKED      0x1
def BST_INDETERMINATE  0x2
def BST_PUSHED       0x4
def BST_FOCUS        0x8
def SS_LEFT          0x0
def SS_CENTER        0x1
def SS_RIGHT         0x2
def SS_ICON          0x3
def SS_BLACKRECT     0x4
def SS_GRAYRECT      0x5
def SS_WHITERECT     0x6
def SS_BLACKFRAME    0x7
def SS_GRAYFRAME     0x8
def SS_WHITEFRAME    0x9
def SS_USERITEM      0xA
def SS_SIMPLE        0xB
def SS_LEFTNOWORDWRAP  0xC
def SS_NOPREFIX      0x80
def STM_SETICON      0x170
def STM_GETICON      0x171
def STM_MSGMAX       0x172
def WC_DIALOG        8002
def DWL_MSGRESULT    0
def DWL_DLGPROC      4
def DWL_USER         8
dll user32 #IsDialogMessage hDlg MSG*lpMsg
dll user32 #MapDialogRect hDlg RECT*lpRect
dll user32 #DlgDirList hDlg $lpPathSpec nIDListBox nIDStaticPath wFileType
def DDL_READWRITE    0x0
def DDL_READONLY     0x1
def DDL_HIDDEN       0x2
def DDL_SYSTEM       0x4
def DDL_DIRECTORY    0x10
def DDL_ARCHIVE      0x20
def DDL_POSTMSGS     0x2000
def DDL_DRIVES       0x4000
def DDL_EXCLUSIVE    0x8000
dll user32 #DlgDirSelectEx hWndDlg $lpszPath cbPath idListBox
dll user32 #DlgDirListComboBox hDlg $lpPathSpec nIDComboBox nIDStaticPath wFileType
dll user32 #DlgDirSelectComboBoxEx hWndDlg $lpszPath cbPath idComboBox
def DS_ABSALIGN      0x1
def DS_SYSMODAL      0x2
def DS_LOCALEDIT     0x20
def DS_SETFONT       0x40
def DS_MODALFRAME    0x80
def DS_NOIDLEMSG     0x100
def DS_SETFOREGROUND  0x200
def DM_GETDEFID      (WM_USER + 0)
def DM_SETDEFID      (WM_USER + 1)
def DC_HASDEFID      0x534
def DLGC_WANTARROWS  0x1
def DLGC_WANTTAB     0x2
def DLGC_WANTALLKEYS  0x4
def DLGC_WANTMESSAGE  0x4
def DLGC_HASSETSEL   0x8
def DLGC_DEFPUSHBUTTON  0x10
def DLGC_UNDEFPUSHBUTTON  0x20
def DLGC_RADIOBUTTON  0x40
def DLGC_WANTCHARS   0x80
def DLGC_STATIC      0x100
def DLGC_BUTTON      0x2000
def LB_CTLCODE       0
def LB_OKAY          0
def LB_ERR           (-1)
def LB_ERRSPACE      (-2)
def LBN_ERRSPACE     (-2)
def LBN_SELCHANGE    1
def LBN_DBLCLK       2
def LBN_SELCANCEL    3
def LBN_SETFOCUS     4
def LBN_KILLFOCUS    5
def LB_ADDSTRING     0x180
def LB_INSERTSTRING  0x181
def LB_DELETESTRING  0x182
def LB_SELITEMRANGEEX  0x183
def LB_RESETCONTENT  0x184
def LB_SETSEL        0x185
def LB_SETCURSEL     0x186
def LB_GETSEL        0x187
def LB_GETCURSEL     0x188
def LB_GETTEXT       0x189
def LB_GETTEXTLEN    0x18A
def LB_GETCOUNT      0x18B
def LB_SELECTSTRING  0x18C
def LB_DIR           0x18D
def LB_GETTOPINDEX   0x18E
def LB_FINDSTRING    0x18F
def LB_GETSELCOUNT   0x190
def LB_GETSELITEMS   0x191
def LB_SETTABSTOPS   0x192
def LB_GETHORIZONTALEXTENT  0x193
def LB_SETHORIZONTALEXTENT  0x194
def LB_SETCOLUMNWIDTH  0x195
def LB_ADDFILE       0x196
def LB_SETTOPINDEX   0x197
def LB_GETITEMRECT   0x198
def LB_GETITEMDATA   0x199
def LB_SETITEMDATA   0x19A
def LB_SELITEMRANGE  0x19B
def LB_SETANCHORINDEX  0x19C
def LB_GETANCHORINDEX  0x19D
def LB_SETCARETINDEX  0x19E
def LB_GETCARETINDEX  0x19F
def LB_SETITEMHEIGHT  0x1A0
def LB_GETITEMHEIGHT  0x1A1
def LB_FINDSTRINGEXACT  0x1A2
def LB_SETLOCALE     0x1A5
def LB_GETLOCALE     0x1A6
def LB_SETCOUNT      0x1A7
def LB_INITSTORAGE   0x1A8
def LB_MSGMAX        0x1A8
def LB_ITEMFROMPOINT  0x1A9
def LBS_NOTIFY       0x1
def LBS_SORT         0x2
def LBS_NOREDRAW     0x4
def LBS_MULTIPLESEL  0x8
def LBS_OWNERDRAWFIXED  0x10
def LBS_OWNERDRAWVARIABLE  0x20
def LBS_HASSTRINGS   0x40
def LBS_USETABSTOPS  0x80
def LBS_NOINTEGRALHEIGHT  0x100
def LBS_MULTICOLUMN  0x200
def LBS_WANTKEYBOARDINPUT  0x400
def LBS_EXTENDEDSEL  0x800
def LBS_DISABLENOSCROLL  0x1000
def LBS_NODATA       0x2000
def LBS_STANDARD     (LBS_NOTIFY |  LBS_SORT |  WS_VSCROLL |  WS_BORDER)
def CB_OKAY          0
def CB_ERR           (-1)
def CB_ERRSPACE      (-2)
def CBN_ERRSPACE     (-1)
def CBN_SELCHANGE    1
def CBN_DBLCLK       2
def CBN_SETFOCUS     3
def CBN_KILLFOCUS    4
def CBN_EDITCHANGE   5
def CBN_EDITUPDATE   6
def CBN_DROPDOWN     7
def CBN_CLOSEUP      8
def CBN_SELENDOK     9
def CBN_SELENDCANCEL  10
def CBS_SIMPLE       0x1
def CBS_DROPDOWN     0x2
def CBS_DROPDOWNLIST  0x3
def CBS_OWNERDRAWFIXED  0x10
def CBS_OWNERDRAWVARIABLE  0x20
def CBS_AUTOHSCROLL  0x40
def CBS_OEMCONVERT   0x80
def CBS_SORT         0x100
def CBS_HASSTRINGS   0x200
def CBS_NOINTEGRALHEIGHT  0x400
def CBS_DISABLENOSCROLL  0x800
def CB_GETEDITSEL    0x140
def CB_LIMITTEXT     0x141
def CB_SETEDITSEL    0x142
def CB_ADDSTRING     0x143
def CB_DELETESTRING  0x144
def CB_DIR           0x145
def CB_GETCOUNT      0x146
def CB_GETCURSEL     0x147
def CB_GETLBTEXT     0x148
def CB_GETLBTEXTLEN  0x149
def CB_INSERTSTRING  0x14A
def CB_RESETCONTENT  0x14B
def CB_FINDSTRING    0x14C
def CB_SELECTSTRING  0x14D
def CB_SETCURSEL     0x14E
def CB_SHOWDROPDOWN  0x14F
def CB_GETITEMDATA   0x150
def CB_SETITEMDATA   0x151
def CB_GETDROPPEDCONTROLRECT  0x152
def CB_SETITEMHEIGHT  0x153
def CB_GETITEMHEIGHT  0x154
def CB_SETEXTENDEDUI  0x155
def CB_GETEXTENDEDUI  0x156
def CB_GETDROPPEDSTATE  0x157
def CB_FINDSTRINGEXACT  0x158
def CB_SETLOCALE     0x159
def CB_GETLOCALE     0x15A
def CB_MSGMAX        0x15B
def SBS_HORZ         0x0
def SBS_VERT         0x1
def SBS_TOPALIGN     0x2
def SBS_LEFTALIGN    0x2
def SBS_BOTTOMALIGN  0x4
def SBS_RIGHTALIGN   0x4
def SBS_SIZEBOXTOPLEFTALIGN  0x2
def SBS_SIZEBOXBOTTOMRIGHTALIGN  0x4
def SBS_SIZEBOX      0x8
def SBM_SETPOS       0xE0
def SBM_GETPOS       0xE1
def SBM_SETRANGE     0xE2
def SBM_SETRANGEREDRAW  0xE6
def SBM_GETRANGE     0xE3
def SBM_ENABLE_ARROWS  0xE4
def MDIS_ALLCHILDSTYLES  0x1
def MDITILE_VERTICAL  0x0
def MDITILE_HORIZONTAL  0x1
def MDITILE_SKIPDISABLED  0x2
type MDICREATESTRUCT $szClass $szTitle hOwner x y cx cy style lParam
type CLIENTCREATESTRUCT hWindowMenu idFirstChild
dll user32 #DefFrameProc hWnd hWndMDIClient wMsg wParam lParam
dll user32 #DefMDIChildProc hWnd wMsg wParam lParam
dll user32 #TranslateMDISysAccel hWndClient MSG*lpMsg
dll user32 #ArrangeIconicWindows hWnd
dll user32 #CreateMDIWindow $lpClassName $lpWindowName dwStyle x y nWidth nHeight hWndParent hInstance lParam
type MULTIKEYHELP mkSize !mkKeylist !szKeyphrase[253]
type HELPWININFO wStructSize x y dx dy wMax !rgchMember[2]
def HELP_CONTEXT     0x1
def HELP_QUIT        0x2
def HELP_INDEX       0x3
def HELP_CONTENTS    0x3
def HELP_HELPONHELP  0x4
def HELP_SETINDEX    0x5
def HELP_SETCONTENTS  0x5
def HELP_CONTEXTPOPUP  0x8
def HELP_FORCEFILE   0x9
def HELP_KEY         0x101
def HELP_COMMAND     0x102
def HELP_PARTIALKEY  0x105
def HELP_MULTIKEY    0x201
def HELP_SETWINPOS   0x203
def HELP_CONTEXTMENU  0xA
def HELP_FINDER      0xB
def HELP_WM_HELP     0xC
def HELP_SETPOPUP_POS  0xD
dll user32 #WinHelp hWnd $lpHelpFile wCommand dwData
def SPI_GETBEEP      1
def SPI_SETBEEP      2
def SPI_GETMOUSE     3
def SPI_SETMOUSE     4
def SPI_GETBORDER    5
def SPI_SETBORDER    6
def SPI_GETKEYBOARDSPEED  10
def SPI_SETKEYBOARDSPEED  11
def SPI_LANGDRIVER   12
def SPI_ICONHORIZONTALSPACING  13
def SPI_GETSCREENSAVETIMEOUT  14
def SPI_SETSCREENSAVETIMEOUT  15
def SPI_GETSCREENSAVEACTIVE  16
def SPI_SETSCREENSAVEACTIVE  17
def SPI_GETGRIDGRANULARITY  18
def SPI_SETGRIDGRANULARITY  19
def SPI_SETDESKWALLPAPER  20
def SPI_SETDESKPATTERN  21
def SPI_GETKEYBOARDDELAY  22
def SPI_SETKEYBOARDDELAY  23
def SPI_ICONVERTICALSPACING  24
def SPI_GETICONTITLEWRAP  25
def SPI_SETICONTITLEWRAP  26
def SPI_GETMENUDROPALIGNMENT  27
def SPI_SETMENUDROPALIGNMENT  28
def SPI_SETDOUBLECLKWIDTH  29
def SPI_SETDOUBLECLKHEIGHT  30
def SPI_GETICONTITLELOGFONT  31
def SPI_SETDOUBLECLICKTIME  32
def SPI_SETMOUSEBUTTONSWAP  33
def SPI_SETICONTITLELOGFONT  34
def SPI_GETFASTTASKSWITCH  35
def SPI_SETFASTTASKSWITCH  36
def SPI_SETDRAGFULLWINDOWS  37
def SPI_GETDRAGFULLWINDOWS  38
def SPI_GETNONCLIENTMETRICS  41
def SPI_SETNONCLIENTMETRICS  42
def SPI_GETMINIMIZEDMETRICS  43
def SPI_SETMINIMIZEDMETRICS  44
def SPI_GETICONMETRICS  45
def SPI_SETICONMETRICS  46
def SPI_SETWORKAREA  47
def SPI_GETWORKAREA  48
def SPI_SETPENWINDOWS  49
def SPI_GETFILTERKEYS  50
def SPI_SETFILTERKEYS  51
def SPI_GETTOGGLEKEYS  52
def SPI_SETTOGGLEKEYS  53
def SPI_GETMOUSEKEYS  54
def SPI_SETMOUSEKEYS  55
def SPI_GETSHOWSOUNDS  56
def SPI_SETSHOWSOUNDS  57
def SPI_GETSTICKYKEYS  58
def SPI_SETSTICKYKEYS  59
def SPI_GETACCESSTIMEOUT  60
def SPI_SETACCESSTIMEOUT  61
def SPI_GETSERIALKEYS  62
def SPI_SETSERIALKEYS  63
def SPI_GETSOUNDSENTRY  64
def SPI_SETSOUNDSENTRY  65
def SPI_GETHIGHCONTRAST  66
def SPI_SETHIGHCONTRAST  67
def SPI_GETKEYBOARDPREF  68
def SPI_SETKEYBOARDPREF  69
def SPI_GETSCREENREADER  70
def SPI_SETSCREENREADER  71
def SPI_GETANIMATION  72
def SPI_SETANIMATION  73
def SPI_GETFONTSMOOTHING  74
def SPI_SETFONTSMOOTHING  75
def SPI_SETDRAGWIDTH  76
def SPI_SETDRAGHEIGHT  77
def SPI_SETHANDHELD  78
def SPI_GETLOWPOWERTIMEOUT  79
def SPI_GETPOWEROFFTIMEOUT  80
def SPI_SETLOWPOWERTIMEOUT  81
def SPI_SETPOWEROFFTIMEOUT  82
def SPI_GETLOWPOWERACTIVE  83
def SPI_GETPOWEROFFACTIVE  84
def SPI_SETLOWPOWERACTIVE  85
def SPI_SETPOWEROFFACTIVE  86
def SPI_SETCURSORS   87
def SPI_SETICONS     88
def SPI_GETDEFAULTINPUTLANG  89
def SPI_SETDEFAULTINPUTLANG  90
def SPI_SETLANGTOGGLE  91
def SPI_GETWINDOWSEXTENSION  92
def SPI_SETMOUSETRAILS  93
def SPI_GETMOUSETRAILS  94
def SPI_SCREENSAVERRUNNING  97
def SPI_GETMOUSEHOVERWIDTH  98
def SPI_SETMOUSEHOVERWIDTH  99
def SPI_GETMOUSEHOVERHEIGHT  100
def SPI_SETMOUSEHOVERHEIGHT  101
def SPI_GETMOUSEHOVERTIME  102
def SPI_SETMOUSEHOVERTIME  103
def SPI_GETWHEELSCROLLLINES  104
def SPI_SETWHEELSCROLLLINES  105
def SPI_GETSHOWIMEUI  110
def SPI_SETSHOWIMEUI  111
def SPI_GETMOUSESPEED  112
def SPI_SETMOUSESPEED  113
def SPI_GETSCREENSAVERRUNNING  114
def SPI_GETACTIVEWINDOWTRACKING  0x1000
def SPI_SETACTIVEWINDOWTRACKING  0x1001
def SPI_GETMENUANIMATION  0x1002
def SPI_SETMENUANIMATION  0x1003
def SPI_GETCOMBOBOXANIMATION  0x1004
def SPI_SETCOMBOBOXANIMATION  0x1005
def SPI_GETLISTBOXSMOOTHSCROLLING  0x1006
def SPI_SETLISTBOXSMOOTHSCROLLING  0x1007
def SPI_GETGRADIENTCAPTIONS  0x1008
def SPI_SETGRADIENTCAPTIONS  0x1009
def SPI_GETMENUUNDERLINES  0x100A
def SPI_SETMENUUNDERLINES  0x100B
def SPI_GETACTIVEWNDTRKZORDER  0x100C
def SPI_SETACTIVEWNDTRKZORDER  0x100D
def SPI_GETHOTTRACKING  0x100E
def SPI_SETHOTTRACKING  0x100F
def SPI_GETFOREGROUNDLOCKTIMEOUT  0x2000
def SPI_SETFOREGROUNDLOCKTIMEOUT  0x2001
def SPI_GETACTIVEWNDTRKTIMEOUT  0x2002
def SPI_SETACTIVEWNDTRKTIMEOUT  0x2003
def SPI_GETFOREGROUNDFLASHCOUNT  0x2004
def SPI_SETFOREGROUNDFLASHCOUNT  0x2005
def SPIF_UPDATEINIFILE  0x1
def SPIF_SENDWININICHANGE  0x2
dll user32 #SystemParametersInfo uAction uParam !*lpvParam fuWinIni
def WM_DDE_FIRST     0x3E0
def WM_DDE_INITIATE  (WM_DDE_FIRST)
def WM_DDE_TERMINATE  (WM_DDE_FIRST + 1)
def WM_DDE_ADVISE    (WM_DDE_FIRST + 2)
def WM_DDE_UNADVISE  (WM_DDE_FIRST + 3)
def WM_DDE_ACK       (WM_DDE_FIRST + 4)
def WM_DDE_DATA      (WM_DDE_FIRST + 5)
def WM_DDE_REQUEST   (WM_DDE_FIRST + 6)
def WM_DDE_POKE      (WM_DDE_FIRST + 7)
def WM_DDE_EXECUTE   (WM_DDE_FIRST + 8)
def WM_DDE_LAST      (WM_DDE_FIRST + 8)
type DDEACK @bAppReturnCode @Reserved @fbusy @fack
type DDEADVISE @Reserved @fDeferUpd @fAckReq @cfFormat
type DDEDATA @unused @fresponse @fRelease @Reserved @fAckReq @cfFormat !Value[1]
type DDEPOKE @unused @fRelease @fReserved @cfFormat !Value[1]
type DDELN @unused @fRelease @fDeferUpd @fAckReq @cfFormat
type DDEUP @unused @fAck @fRelease @fReserved @fAckReq @cfFormat !rgb[1]
dll user32 #DdeSetQualityOfService hWndClient SECURITY_QUALITY_OF_SERVICE*pqosNew SECURITY_QUALITY_OF_SERVICE*pqosPrev
dll user32 #ImpersonateDdeClientWindow hWndClient hWndServer
dll user32 #PackDDElParam msg uiLo uiHi
dll user32 #UnpackDDElParam msg lParam *puiLo *puiHi
dll user32 #FreeDDElParam msg lParam
dll user32 #ReuseDDElParam lParam msgIn msgOut uiLo uiHi
type HSZPAIR hszSvc hszTopic
type SECURITY_QUALITY_OF_SERVICE Length @Impersonationlevel @ContextTrackingMode EffectiveOnly
type CONVCONTEXT cb wFlags wCountryID iCodePage dwLangID dwSecurity SECURITY_QUALITY_OF_SERVICE'qos
type CONVINFO cb hUser hConvPartner hszSvcPartner hszServiceReq hszTopic hszItem wFmt wType wStatus wConvst wLastError hConvList CONVCONTEXT'ConvCtxt hWnd hWndPartner
def XST_NULL         0
def XST_INCOMPLETE   1
def XST_CONNECTED    2
def XST_INIT1        3
def XST_INIT2        4
def XST_REQSENT      5
def XST_DATARCVD     6
def XST_POKESENT     7
def XST_POKEACKRCVD  8
def XST_EXECSENT     9
def XST_EXECACKRCVD  10
def XST_ADVSENT      11
def XST_UNADVSENT    12
def XST_ADVACKRCVD   13
def XST_UNADVACKRCVD  14
def XST_ADVDATASENT  15
def XST_ADVDATAACKRCVD  16
def CADV_LATEACK     0xFFFF
def ST_CONNECTED     0x1
def ST_ADVISE        0x2
def ST_ISLOCAL       0x4
def ST_BLOCKED       0x8
def ST_CLIENT        0x10
def ST_TERMINATED    0x20
def ST_INLIST        0x40
def ST_BLOCKNEXT     0x80
def ST_ISSELF        0x100
def DDE_FACK         0x8000
def DDE_FBUSY        0x4000
def DDE_FDEFERUPD    0x4000
def DDE_FACKREQ      0x8000
def DDE_FRELEASE     0x2000
def DDE_FREQUESTED   0x1000
def DDE_FAPPSTATUS   0xFF
def DDE_FNOTPROCESSED  0x0
def DDE_FACKRESERVED  (Not (DDE_FACK |  DDE_FBUSY |  DDE_FAPPSTATUS))
def DDE_FADVRESERVED  (Not (DDE_FACKREQ |  DDE_FDEFERUPD))
def DDE_FDATRESERVED  (Not (DDE_FACKREQ |  DDE_FRELEASE |  DDE_FREQUESTED))
def DDE_FPOKRESERVED  (Not (DDE_FRELEASE))
def MSGF_DDEMGR      0x8001
def CP_WINANSI       1004
def CP_WINUNICODE    1200
def XTYPF_NOBLOCK    0x2
def XTYPF_NODATA     0x4
def XTYPF_ACKREQ     0x8
def XCLASS_MASK      0xFC00
def XCLASS_BOOL      0x1000
def XCLASS_DATA      0x2000
def XCLASS_FLAGS     0x4000
def XCLASS_NOTIFICATION  0x8000
def XTYP_ERROR       (0x0 |  XCLASS_NOTIFICATION |  XTYPF_NOBLOCK)
def XTYP_ADVDATA     (0x10 |  XCLASS_FLAGS)
def XTYP_ADVREQ      (0x20 |  XCLASS_DATA |  XTYPF_NOBLOCK)
def XTYP_ADVSTART    (0x30 |  XCLASS_BOOL)
def XTYP_ADVSTOP     (0x40 |  XCLASS_NOTIFICATION)
def XTYP_EXECUTE     (0x50 |  XCLASS_FLAGS)
def XTYP_CONNECT     (0x60 |  XCLASS_BOOL |  XTYPF_NOBLOCK)
def XTYP_CONNECT_CONFIRM  (0x70 |  XCLASS_NOTIFICATION |  XTYPF_NOBLOCK)
def XTYP_XACT_COMPLETE  (0x80 |  XCLASS_NOTIFICATION)
def XTYP_POKE        (0x90 |  XCLASS_FLAGS)
def XTYP_REGISTER    (0xA0 |  XCLASS_NOTIFICATION |  XTYPF_NOBLOCK)
def XTYP_REQUEST     (0xB0 |  XCLASS_DATA)
def XTYP_DISCONNECT  (0xC0 |  XCLASS_NOTIFICATION |  XTYPF_NOBLOCK)
def XTYP_UNREGISTER  (0xD0 |  XCLASS_NOTIFICATION |  XTYPF_NOBLOCK)
def XTYP_WILDCONNECT  (0xE0 |  XCLASS_DATA |  XTYPF_NOBLOCK)
def XTYP_MASK        0xF0
def XTYP_SHIFT       4
def TIMEOUT_ASYNC    0xFFFF
def QID_SYNC         0xFFFF
def SZDDESYS_TOPIC   "System"
def SZDDESYS_ITEM_TOPICS  "Topics"
def SZDDESYS_ITEM_SYSITEMS  "SysItems"
def SZDDESYS_ITEM_RTNMSG  "ReturnMessage"
def SZDDESYS_ITEM_STATUS  "Status"
def SZDDESYS_ITEM_FORMATS  "Formats"
def SZDDESYS_ITEM_HELP  "Help"
def SZDDE_ITEM_ITEMLIST  "TopicItemList"
def CBR_BLOCK        0xFFFF
def CBF_FAIL_SELFCONNECTIONS  0x1000
def CBF_FAIL_CONNECTIONS  0x2000
def CBF_FAIL_ADVISES  0x4000
def CBF_FAIL_EXECUTES  0x8000
def CBF_FAIL_POKES   0x10000
def CBF_FAIL_REQUESTS  0x20000
def CBF_FAIL_ALLSVRXACTIONS  0x3F000
def CBF_SKIP_CONNECT_CONFIRMS  0x40000
def CBF_SKIP_REGISTRATIONS  0x80000
def CBF_SKIP_UNREGISTRATIONS  0x100000
def CBF_SKIP_DISCONNECTS  0x200000
def CBF_SKIP_ALLNOTIFICATIONS  0x3C0000
def APPCMD_CLIENTONLY  0x10
def APPCMD_FILTERINITS  0x20
def APPCMD_MASK      0xFF0
def APPCLASS_STANDARD  0x0
def APPCLASS_MASK    0xF
dll user32 #DdeUninitialize idInst
dll user32 #DdeConnectList idInst hszService hszTopic hConvList CONVCONTEXT*pCC
dll user32 #DdeQueryNextServer hConvList hConvPrev
dll user32 #DdeDisconnectList hConvList
dll user32 #DdeConnect idInst hszService hszTopic CONVCONTEXT*pCC
dll user32 #DdeDisconnect hConv
dll user32 #DdeReconnect hConv
dll user32 #DdeQueryConvInfo hConv idTransaction CONVINFO*pConvInfo
dll user32 #DdeSetUserHandle hConv id hUser
dll user32 #DdeAbandonTransaction idInst hConv idTransaction
dll user32 #DdePostAdvise idInst hszTopic hszItem
dll user32 #DdeEnableCallback idInst hConv wCmd
dll user32 #DdeImpersonateClient hConv
def EC_ENABLEALL     0
def EC_ENABLEONE     ST_BLOCKNEXT
def EC_DISABLE       ST_BLOCKED
def EC_QUERYWAITING  2
dll user32 #DdeNameService idInst hsz1 hsz2 afCmd
def DNS_REGISTER     0x1
def DNS_UNREGISTER   0x2
def DNS_FILTERON     0x4
def DNS_FILTEROFF    0x8
dll user32 #DdeClientTransaction !*pData cbData hConv hszItem wFmt wType dwTimeout *pdwResult
dll user32 #DdeCreateDataHandle idInst !*pSrc cb cbOff hszItem wFmt afCmd
dll user32 #DdeAddData hData !*pSrc cb cbOff
dll user32 #DdeGetData hData !*pDst cbMax cbOff
dll user32 #DdeAccessData hData *pcbDataSize
dll user32 #DdeUnaccessData hData
dll user32 #DdeFreeDataHandle hData
def HDATA_APPOWNED   0x1
dll user32 #DdeGetLastError idInst
def DMLERR_NO_ERROR  0
def DMLERR_FIRST     0x4000
def DMLERR_ADVACKTIMEOUT  0x4000
def DMLERR_BUSY      0x4001
def DMLERR_DATAACKTIMEOUT  0x4002
def DMLERR_DLL_NOT_INITIALIZED  0x4003
def DMLERR_DLL_USAGE  0x4004
def DMLERR_EXECACKTIMEOUT  0x4005
def DMLERR_INVALIDPARAMETER  0x4006
def DMLERR_LOW_MEMORY  0x4007
def DMLERR_MEMORY_ERROR  0x4008
def DMLERR_NOTPROCESSED  0x4009
def DMLERR_NO_CONV_ESTABLISHED  0x400A
def DMLERR_POKEACKTIMEOUT  0x400B
def DMLERR_POSTMSG_FAILED  0x400C
def DMLERR_REENTRANCY  0x400D
def DMLERR_SERVER_DIED  0x400E
def DMLERR_SYS_ERROR  0x400F
def DMLERR_UNADVACKTIMEOUT  0x4010
def DMLERR_UNFOUND_QUEUE_ID  0x4011
def DMLERR_LAST      0x4011
dll user32 #DdeCreateStringHandle idInst $psz iCodePage
dll user32 #DdeQueryString idInst hsz $psz cchMax iCodePage
dll user32 #DdeFreeStringHandle idInst hsz
dll user32 #DdeKeepStringHandle idInst hsz
dll user32 #DdeCmpStringHandles hsz1 hsz2
type DDEML_MSG_HOOK_DATA uiLo uiHi cbData Data[8]
type MONMSGSTRUCT cb hWndTo dwTime htask wMsg wParam lParam DDEML_MSG_HOOK_DATA'dmhd
type MONCBSTRUCT cb dwTime htask dwRet wType wFmt hConv hsz1 hsz2 hData dwData1 dwData2 CONVCONTEXT'cc cbData Data[8]
type MONHSZSTRUCT cb fsAction dwTime hsz htask !str
def MH_CREATE        1
def MH_KEEP          2
def MH_DELETE        3
def MH_CLEANUP       4
type MONERRSTRUCT cb wLastError dwTime htask
type MONLINKSTRUCT cb dwTime htask fEstablished fNoData hszSvc hszTopic hszItem wFmt As'fServer hConvServer hConvClient
type MONCONVSTRUCT cb fConnect dwTime htask hszSvc hszTopic hConvClient hConvServer
def MAX_MONITORS     4
def APPCLASS_MONITOR  0x1
def XTYP_MONITOR     (0xF0 |  XCLASS_NOTIFICATION |  XTYPF_NOBLOCK)
def MF_HSZ_INFO      0x1000000
def MF_SENDMSGS      0x2000000
def MF_POSTMSGS      0x4000000
def MF_CALLBACKS     0x8000000
def MF_ERRORS        0x10000000
def MF_LINKS         0x20000000
def MF_CONV          0x40000000
def MF_MASK          0xFF000000
def NO_ERROR         0
def ERROR_SUCCESS    0
def ERROR_INVALID_FUNCTION  1
def ERROR_FILE_NOT_FOUND  2
def ERROR_PATH_NOT_FOUND  3
def ERROR_TOO_MANY_OPEN_FILES  4
def ERROR_ACCESS_DENIED  5
def ERROR_INVALID_HANDLE  6
def ERROR_ARENA_TRASHED  7
def ERROR_NOT_ENOUGH_MEMORY  8
def ERROR_INVALID_BLOCK  9
def ERROR_BAD_ENVIRONMENT  10
def ERROR_BAD_FORMAT  11
def ERROR_INVALID_ACCESS  12
def ERROR_INVALID_DATA  13
def ERROR_OUTOFMEMORY  14
def ERROR_INVALID_DRIVE  15
def ERROR_CURRENT_DIRECTORY  16
def ERROR_NOT_SAME_DEVICE  17
def ERROR_NO_MORE_FILES  18
def ERROR_WRITE_PROTECT  19
def ERROR_BAD_UNIT   20
def ERROR_NOT_READY  21
def ERROR_BAD_COMMAND  22
def ERROR_CRC        23
def ERROR_BAD_LENGTH  24
def ERROR_SEEK       25
def ERROR_NOT_DOS_DISK  26
def ERROR_SECTOR_NOT_FOUND  27
def ERROR_OUT_OF_PAPER  28
def ERROR_WRITE_FAULT  29
def ERROR_READ_FAULT  30
def ERROR_GEN_FAILURE  31
def ERROR_SHARING_VIOLATION  32
def ERROR_LOCK_VIOLATION  33
def ERROR_WRONG_DISK  34
def ERROR_SHARING_BUFFER_EXCEEDED  36
def ERROR_HANDLE_EOF  38
def ERROR_HANDLE_DISK_FULL  39
def ERROR_NOT_SUPPORTED  50
def ERROR_REM_NOT_LIST  51
def ERROR_DUP_NAME   52
def ERROR_BAD_NETPATH  53
def ERROR_NETWORK_BUSY  54
def ERROR_DEV_NOT_EXIST  55
def ERROR_TOO_MANY_CMDS  56
def ERROR_ADAP_HDW_ERR  57
def ERROR_BAD_NET_RESP  58
def ERROR_UNEXP_NET_ERR  59
def ERROR_BAD_REM_ADAP  60
def ERROR_PRINTQ_FULL  61
def ERROR_NO_SPOOL_SPACE  62
def ERROR_PRINT_CANCELLED  63
def ERROR_NETNAME_DELETED  64
def ERROR_NETWORK_ACCESS_DENIED  65
def ERROR_BAD_DEV_TYPE  66
def ERROR_BAD_NET_NAME  67
def ERROR_TOO_MANY_NAMES  68
def ERROR_TOO_MANY_SESS  69
def ERROR_SHARING_PAUSED  70
def ERROR_REQ_NOT_ACCEP  71
def ERROR_REDIR_PAUSED  72
def ERROR_FILE_EXISTS  80
def ERROR_CANNOT_MAKE  82
def ERROR_FAIL_I24   83
def ERROR_OUT_OF_STRUCTURES  84
def ERROR_ALREADY_ASSIGNED  85
def ERROR_INVALID_PASSWORD  86
def ERROR_INVALID_PARAMETER  87
def ERROR_NET_WRITE_FAULT  88
def ERROR_NO_PROC_SLOTS  89
def ERROR_TOO_MANY_SEMAPHORES  100
def ERROR_EXCL_SEM_ALREADY_OWNED  101
def ERROR_SEM_IS_SET  102
def ERROR_TOO_MANY_SEM_REQUESTS  103
def ERROR_INVALID_AT_INTERRUPT_TIME  104
def ERROR_SEM_OWNER_DIED  105
def ERROR_SEM_USER_LIMIT  106
def ERROR_DISK_CHANGE  107
def ERROR_DRIVE_LOCKED  108
def ERROR_BROKEN_PIPE  109
def ERROR_OPEN_FAILED  110
def ERROR_BUFFER_OVERFLOW  111
def ERROR_DISK_FULL  112
def ERROR_NO_MORE_SEARCH_HANDLES  113
def ERROR_INVALID_TARGET_HANDLE  114
def ERROR_INVALID_CATEGORY  117
def ERROR_INVALID_VERIFY_SWITCH  118
def ERROR_BAD_DRIVER_LEVEL  119
def ERROR_CALL_NOT_IMPLEMENTED  120
def ERROR_SEM_TIMEOUT  121
def ERROR_INSUFFICIENT_BUFFER  122
def ERROR_INVALID_NAME  123
def ERROR_INVALID_LEVEL  124
def ERROR_NO_VOLUME_LABEL  125
def ERROR_MOD_NOT_FOUND  126
def ERROR_PROC_NOT_FOUND  127
def ERROR_WAIT_NO_CHILDREN  128
def ERROR_CHILD_NOT_COMPLETE  129
def ERROR_DIRECT_ACCESS_HANDLE  130
def ERROR_NEGATIVE_SEEK  131
def ERROR_SEEK_ON_DEVICE  132
def ERROR_IS_JOIN_TARGET  133
def ERROR_IS_JOINED  134
def ERROR_IS_SUBSTED  135
def ERROR_NOT_JOINED  136
def ERROR_NOT_SUBSTED  137
def ERROR_JOIN_TO_JOIN  138
def ERROR_SUBST_TO_SUBST  139
def ERROR_JOIN_TO_SUBST  140
def ERROR_SUBST_TO_JOIN  141
def ERROR_BUSY_DRIVE  142
def ERROR_SAME_DRIVE  143
def ERROR_DIR_NOT_ROOT  144
def ERROR_DIR_NOT_EMPTY  145
def ERROR_IS_SUBST_PATH  146
def ERROR_IS_JOIN_PATH  147
def ERROR_PATH_BUSY  148
def ERROR_IS_SUBST_TARGET  149
def ERROR_SYSTEM_TRACE  150
def ERROR_INVALID_EVENT_COUNT  151
def ERROR_TOO_MANY_MUXWAITERS  152
def ERROR_INVALID_LIST_FORMAT  153
def ERROR_LABEL_TOO_LONG  154
def ERROR_TOO_MANY_TCBS  155
def ERROR_SIGNAL_REFUSED  156
def ERROR_DISCARDED  157
def ERROR_NOT_LOCKED  158
def ERROR_BAD_THREADID_ADDR  159
def ERROR_BAD_ARGUMENTS  160
def ERROR_BAD_PATHNAME  161
def ERROR_SIGNAL_PENDING  162
def ERROR_MAX_THRDS_REACHED  164
def ERROR_LOCK_FAILED  167
def ERROR_BUSY       170
def ERROR_CANCEL_VIOLATION  173
def ERROR_ATOMIC_LOCKS_NOT_SUPPORTED  174
def ERROR_INVALID_SEGMENT_NUMBER  180
def ERROR_INVALID_ORDINAL  182
def ERROR_ALREADY_EXISTS  183
def ERROR_INVALID_FLAG_NUMBER  186
def ERROR_SEM_NOT_FOUND  187
def ERROR_INVALID_STARTING_CODESEG  188
def ERROR_INVALID_STACKSEG  189
def ERROR_INVALID_MODULETYPE  190
def ERROR_INVALID_EXE_SIGNATURE  191
def ERROR_EXE_MARKED_INVALID  192
def ERROR_BAD_EXE_FORMAT  193
def ERROR_ITERATED_DATA_EXCEEDS_64k  194
def ERROR_INVALID_MINALLOCSIZE  195
def ERROR_DYNLINK_FROM_INVALID_RING  196
def ERROR_IOPL_NOT_ENABLED  197
def ERROR_INVALID_SEGDPL  198
def ERROR_AUTODATASEG_EXCEEDS_64k  199
def ERROR_RING2SEG_MUST_BE_MOVABLE  200
def ERROR_RELOC_CHAIN_XEEDS_SEGLIM  201
def ERROR_INFLOOP_IN_RELOC_CHAIN  202
def ERROR_ENVVAR_NOT_FOUND  203
def ERROR_NO_SIGNAL_SENT  205
def ERROR_FILENAME_EXCED_RANGE  206
def ERROR_RING2_STACK_IN_USE  207
def ERROR_META_EXPANSION_TOO_LONG  208
def ERROR_INVALID_SIGNAL_NUMBER  209
def ERROR_THREAD_1_INACTIVE  210
def ERROR_LOCKED     212
def ERROR_TOO_MANY_MODULES  214
def ERROR_NESTING_NOT_ALLOWED  215
def ERROR_BAD_PIPE   230
def ERROR_PIPE_BUSY  231
def ERROR_NO_DATA    232
def ERROR_PIPE_NOT_CONNECTED  233
def ERROR_MORE_DATA  234
def ERROR_VC_DISCONNECTED  240
def ERROR_INVALID_EA_NAME  254
def ERROR_EA_LIST_INCONSISTENT  255
def ERROR_NO_MORE_ITEMS  259
def ERROR_CANNOT_COPY  266
def ERROR_DIRECTORY  267
def ERROR_EAS_DIDNT_FIT  275
def ERROR_EA_FILE_CORRUPT  276
def ERROR_EA_TABLE_FULL  277
def ERROR_INVALID_EA_HANDLE  278
def ERROR_EAS_NOT_SUPPORTED  282
def ERROR_NOT_OWNER  288
def ERROR_TOO_MANY_POSTS  298
def ERROR_MR_MID_NOT_FOUND  317
def ERROR_INVALID_ADDRESS  487
def ERROR_ARITHMETIC_OVERFLOW  534
def ERROR_PIPE_CONNECTED  535
def ERROR_PIPE_LISTENING  536
def ERROR_EA_ACCESS_DENIED  994
def ERROR_OPERATION_ABORTED  995
def ERROR_IO_INCOMPLETE  996
def ERROR_IO_PENDING  997
def ERROR_NOACCESS   998
def ERROR_SWAPERROR  999
def ERROR_STACK_OVERFLOW  1001
def ERROR_INVALID_MESSAGE  1002
def ERROR_CAN_NOT_COMPLETE  1003
def ERROR_INVALID_FLAGS  1004
def ERROR_UNRECOGNIZED_VOLUME  1005
def ERROR_FILE_INVALID  1006
def ERROR_FULLSCREEN_MODE  1007
def ERROR_NO_TOKEN   1008
def ERROR_BADDB      1009
def ERROR_BADKEY     1010
def ERROR_CANTOPEN   1011
def ERROR_CANTREAD   1012
def ERROR_CANTWRITE  1013
def ERROR_REGISTRY_RECOVERED  1014
def ERROR_REGISTRY_CORRUPT  1015
def ERROR_REGISTRY_IO_FAILED  1016
def ERROR_NOT_REGISTRY_FILE  1017
def ERROR_KEY_DELETED  1018
def ERROR_NO_LOG_SPACE  1019
def ERROR_KEY_HAS_CHILDREN  1020
def ERROR_CHILD_MUST_BE_VOLATILE  1021
def ERROR_NOTIFY_ENUM_DIR  1022
def ERROR_DEPENDENT_SERVICES_RUNNING  1051
def ERROR_INVALID_SERVICE_CONTROL  1052
def ERROR_SERVICE_REQUEST_TIMEOUT  1053
def ERROR_SERVICE_NO_THREAD  1054
def ERROR_SERVICE_DATABASE_LOCKED  1055
def ERROR_SERVICE_ALREADY_RUNNING  1056
def ERROR_INVALID_SERVICE_ACCOUNT  1057
def ERROR_SERVICE_DISABLED  1058
def ERROR_CIRCULAR_DEPENDENCY  1059
def ERROR_SERVICE_DOES_NOT_EXIST  1060
def ERROR_SERVICE_CANNOT_ACCEPT_CTRL  1061
def ERROR_SERVICE_NOT_ACTIVE  1062
def ERROR_FAILED_SERVICE_CONTROLLER_CONNECT  1063
def ERROR_EXCEPTION_IN_SERVICE  1064
def ERROR_DATABASE_DOES_NOT_EXIST  1065
def ERROR_SERVICE_SPECIFIC_ERROR  1066
def ERROR_PROCESS_ABORTED  1067
def ERROR_SERVICE_DEPENDENCY_FAIL  1068
def ERROR_SERVICE_LOGON_FAILED  1069
def ERROR_SERVICE_START_HANG  1070
def ERROR_INVALID_SERVICE_LOCK  1071
def ERROR_SERVICE_MARKED_FOR_DELETE  1072
def ERROR_SERVICE_EXISTS  1073
def ERROR_ALREADY_RUNNING_LKG  1074
def ERROR_SERVICE_DEPENDENCY_DELETED  1075
def ERROR_BOOT_ALREADY_ACCEPTED  1076
def ERROR_SERVICE_NEVER_STARTED  1077
def ERROR_DUPLICATE_SERVICE_NAME  1078
def ERROR_END_OF_MEDIA  1100
def ERROR_FILEMARK_DETECTED  1101
def ERROR_BEGINNING_OF_MEDIA  1102
def ERROR_SETMARK_DETECTED  1103
def ERROR_NO_DATA_DETECTED  1104
def ERROR_PARTITION_FAILURE  1105
def ERROR_INVALID_BLOCK_LENGTH  1106
def ERROR_DEVICE_NOT_PARTITIONED  1107
def ERROR_UNABLE_TO_LOCK_MEDIA  1108
def ERROR_UNABLE_TO_UNLOAD_MEDIA  1109
def ERROR_MEDIA_CHANGED  1110
def ERROR_BUS_RESET  1111
def ERROR_NO_MEDIA_IN_DRIVE  1112
def ERROR_NO_UNICODE_TRANSLATION  1113
def ERROR_DLL_INIT_FAILED  1114
def ERROR_SHUTDOWN_IN_PROGRESS  1115
def ERROR_NO_SHUTDOWN_IN_PROGRESS  1116
def ERROR_IO_DEVICE  1117
def ERROR_SERIAL_NO_DEVICE  1118
def ERROR_IRQ_BUSY   1119
def ERROR_MORE_WRITES  1120
def ERROR_COUNTER_TIMEOUT  1121
def ERROR_FLOPPY_ID_MARK_NOT_FOUND  1122
def ERROR_FLOPPY_WRONG_CYLINDER  1123
def ERROR_FLOPPY_UNKNOWN_ERROR  1124
def ERROR_FLOPPY_BAD_REGISTERS  1125
def ERROR_DISK_RECALIBRATE_FAILED  1126
def ERROR_DISK_OPERATION_FAILED  1127
def ERROR_DISK_RESET_FAILED  1128
def ERROR_EOM_OVERFLOW  1129
def ERROR_NOT_ENOUGH_SERVER_MEMORY  1130
def ERROR_POSSIBLE_DEADLOCK  1131
def ERROR_MAPPED_ALIGNMENT  1132
def ERROR_INVALID_PIXEL_FORMAT  2000
def ERROR_BAD_DRIVER  2001
def ERROR_INVALID_WINDOW_STYLE  2002
def ERROR_METAFILE_NOT_SUPPORTED  2003
def ERROR_TRANSFORM_NOT_SUPPORTED  2004
def ERROR_CLIPPING_NOT_SUPPORTED  2005
def ERROR_UNKNOWN_PRINT_MONITOR  3000
def ERROR_PRINTER_DRIVER_IN_USE  3001
def ERROR_SPOOL_FILE_NOT_FOUND  3002
def ERROR_SPL_NO_STARTDOC  3003
def ERROR_SPL_NO_ADDJOB  3004
def ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED  3005
def ERROR_PRINT_MONITOR_ALREADY_INSTALLED  3006
def ERROR_WINS_INTERNAL  4000
def ERROR_CAN_NOT_DEL_LOCAL_WINS  4001
def ERROR_STATIC_INIT  4002
def ERROR_INC_BACKUP  4003
def ERROR_FULL_BACKUP  4004
def ERROR_REC_NON_EXISTENT  4005
def ERROR_RPL_NOT_ALLOWED  4006
def SEVERITY_SUCCESS  0
def SEVERITY_ERROR   1
def FACILITY_NT_BIT  0x10000000
def NOERROR          0
def E_UNEXPECTED     0x8000FFFF
def E_NOTIMPL        0x80004001
def E_OUTOFMEMORY    0x8007000E
def E_INVALIDARG     0x80070057
def E_NOINTERFACE    0x80004002
def E_POINTER        0x80004003
def E_HANDLE         0x80070006
def E_ABORT          0x80004004
def E_FAIL           0x80004005
def E_ACCESSDENIED   0x80070005
def CO_E_INIT_TLS    0x80004006
def CO_E_INIT_SHARED_ALLOCATOR  0x80004007
def CO_E_INIT_MEMORY_ALLOCATOR  0x80004008
def CO_E_INIT_CLASS_CACHE  0x80004009
def CO_E_INIT_RPC_CHANNEL  0x8000400A
def CO_E_INIT_TLS_SET_CHANNEL_CONTROL  0x8000400B
def CO_E_INIT_TLS_CHANNEL_CONTROL  0x8000400C
def CO_E_INIT_UNACCEPTED_USER_ALLOCATOR  0x8000400D
def CO_E_INIT_SCM_MUTEX_EXISTS  0x8000400E
def CO_E_INIT_SCM_FILE_MAPPING_EXISTS  0x8000400F
def CO_E_INIT_SCM_MAP_VIEW_OF_FILE  0x80004010
def CO_E_INIT_SCM_EXEC_FAILURE  0x80004011
def CO_E_INIT_ONLY_SINGLE_THREADED  0x80004012
def S_OK             0x0
def S_FALSE          0x1
def OLE_E_FIRST      0x80040000
def OLE_E_LAST       0x800400FF
def OLE_S_FIRST      0x40000
def OLE_S_LAST       0x400FF
def OLE_E_OLEVERB    0x80040000
def OLE_E_ADVF       0x80040001
def OLE_E_ENUM_NOMORE  0x80040002
def OLE_E_ADVISENOTSUPPORTED  0x80040003
def OLE_E_NOCONNECTION  0x80040004
def OLE_E_NOTRUNNING  0x80040005
def OLE_E_NOCACHE    0x80040006
def OLE_E_BLANK      0x80040007
def OLE_E_CLASSDIFF  0x80040008
def OLE_E_CANT_GETMONIKER  0x80040009
def OLE_E_CANT_BINDTOSOURCE  0x8004000A
def OLE_E_STATIC     0x8004000B
def OLE_E_PROMPTSAVECANCELLED  0x8004000C
def OLE_E_INVALIDRECT  0x8004000D
def OLE_E_WRONGCOMPOBJ  0x8004000E
def OLE_E_INVALIDhWnd  0x8004000F
def OLE_E_NOT_INPLACEACTIVE  0x80040010
def OLE_E_CANTCONVERT  0x80040011
def OLE_E_NOSTORAGE  0x80040012
def DV_E_FORMATETC   0x80040064
def DV_E_DVTARGETDEVICE  0x80040065
def DV_E_STGMEDIUM   0x80040066
def DV_E_STATDATA    0x80040067
def DV_E_LINDEX      0x80040068
def DV_E_TYMED       0x80040069
def DV_E_CLIPFORMAT  0x8004006A
def DV_E_DVASPECT    0x8004006B
def DV_E_DVTARGETDEVICE_SIZE  0x8004006C
def DV_E_NOIVIEWOBJECT  0x8004006D
def DRAGDROP_E_FIRST  0x80040100
def DRAGDROP_E_LAST  0x8004010F
def DRAGDROP_S_FIRST  0x40100
def DRAGDROP_S_LAST  0x4010F
def DRAGDROP_E_NOTREGISTERED  0x80040100
def DRAGDROP_E_ALREADYREGISTERED  0x80040101
def DRAGDROP_E_INVALIDhWnd  0x80040102
def CLASSFACTORY_E_FIRST  0x80040110
def CLASSFACTORY_E_LAST  0x8004011F
def CLASSFACTORY_S_FIRST  0x40110
def CLASSFACTORY_S_LAST  0x4011F
def CLASS_E_NOAGGREGATION  0x80040110
def CLASS_E_CLASSNOTAVAILABLE  0x80040111
def MARSHAL_E_FIRST  0x80040120
def MARSHAL_E_LAST   0x8004012F
def MARSHAL_S_FIRST  0x40120
def MARSHAL_S_LAST   0x4012F
def DATA_E_FIRST     0x80040130
def DATA_E_LAST      0x8004013F
def DATA_S_FIRST     0x40130
def DATA_S_LAST      0x4013F
def VIEW_E_FIRST     0x80040140
def VIEW_E_LAST      0x8004014F
def VIEW_S_FIRST     0x40140
def VIEW_S_LAST      0x4014F
def VIEW_E_DRAW      0x80040140
def REGDB_E_FIRST    0x80040150
def REGDB_E_LAST     0x8004015F
def REGDB_S_FIRST    0x40150
def REGDB_S_LAST     0x4015F
def REGDB_E_READREGDB  0x80040150
def REGDB_E_WRITEREGDB  0x80040151
def REGDB_E_KEYMISSING  0x80040152
def REGDB_E_INVALIDVALUE  0x80040153
def REGDB_E_CLASSNOTREG  0x80040154
def REGDB_E_IIDNOTREG  0x80040155
def CACHE_E_FIRST    0x80040170
def CACHE_E_LAST     0x8004017F
def CACHE_S_FIRST    0x40170
def CACHE_S_LAST     0x4017F
def CACHE_E_NOCACHE_UPDATED  0x80040170
def OLEOBJ_E_FIRST   0x80040180
def OLEOBJ_E_LAST    0x8004018F
def OLEOBJ_S_FIRST   0x40180
def OLEOBJ_S_LAST    0x4018F
def OLEOBJ_E_NOVERBS  0x80040180
def OLEOBJ_E_INVALIDVERB  0x80040181
def CLIENTSITE_E_FIRST  0x80040190
def CLIENTSITE_E_LAST  0x8004019F
def CLIENTSITE_S_FIRST  0x40190
def CLIENTSITE_S_LAST  0x4019F
def INPLACE_E_NOTUNDOABLE  0x800401A0
def INPLACE_E_NOTOOLSPACE  0x800401A1
def INPLACE_E_FIRST  0x800401A0
def INPLACE_E_LAST   0x800401AF
def INPLACE_S_FIRST  0x401A0
def INPLACE_S_LAST   0x401AF
def ENUM_E_FIRST     0x800401B0
def ENUM_E_LAST      0x800401BF
def ENUM_S_FIRST     0x401B0
def ENUM_S_LAST      0x401BF
def CONVERT10_E_FIRST  0x800401C0
def CONVERT10_E_LAST  0x800401CF
def CONVERT10_S_FIRST  0x401C0
def CONVERT10_S_LAST  0x401CF
def CONVERT10_E_OLESTREAM_GET  0x800401C0
def CONVERT10_E_OLESTREAM_PUT  0x800401C1
def CONVERT10_E_OLESTREAM_FMT  0x800401C2
def CONVERT10_E_OLESTREAM_BITMAP_TO_DIB  0x800401C3
def CONVERT10_E_STG_FMT  0x800401C4
def CONVERT10_E_STG_NO_STD_STREAM  0x800401C5
def CONVERT10_E_STG_DIB_TO_BITMAP  0x800401C6
def CLIPBRD_E_FIRST  0x800401D0
def CLIPBRD_E_LAST   0x800401DF
def CLIPBRD_S_FIRST  0x401D0
def CLIPBRD_S_LAST   0x401DF
def CLIPBRD_E_CANT_OPEN  0x800401D0
def CLIPBRD_E_CANT_EMPTY  0x800401D1
def CLIPBRD_E_CANT_SET  0x800401D2
def CLIPBRD_E_BAD_DATA  0x800401D3
def CLIPBRD_E_CANT_CLOSE  0x800401D4
def MK_E_FIRST       0x800401E0
def MK_E_LAST        0x800401EF
def MK_S_FIRST       0x401E0
def MK_S_LAST        0x401EF
def MK_E_CONNECTMANUALLY  0x800401E0
def MK_E_EXCEEDEDDEADLINE  0x800401E1
def MK_E_NEEDGENERIC  0x800401E2
def MK_E_UNAVAILABLE  0x800401E3
def MK_E_SYNTAX      0x800401E4
def MK_E_NOOBJECT    0x800401E5
def MK_E_INVALIDEXTENSION  0x800401E6
def MK_E_INTERMEDIATEINTERFACENOTSUPPORTED  0x800401E7
def MK_E_NOTBINDABLE  0x800401E8
def MK_E_NOTBOUND    0x800401E9
def MK_E_CANTOPENFILE  0x800401EA
def MK_E_MUSTBOTHERUSER  0x800401EB
def MK_E_NOINVERSE   0x800401EC
def MK_E_NOSTORAGE   0x800401ED
def MK_E_NOPREFIX    0x800401EE
def MK_E_ENUMERATION_FAILED  0x800401EF
def CO_E_FIRST       0x800401F0
def CO_E_LAST        0x800401FF
def CO_S_FIRST       0x401F0
def CO_S_LAST        0x401FF
def CO_E_NOTINITIALIZED  0x800401F0
def CO_E_ALREADYINITIALIZED  0x800401F1
def CO_E_CANTDETERMINECLASS  0x800401F2
def CO_E_CLASSSTRING  0x800401F3
def CO_E_IIDSTRING   0x800401F4
def CO_E_APPNOTFOUND  0x800401F5
def CO_E_APPSINGLEUSE  0x800401F6
def CO_E_ERRORINAPP  0x800401F7
def CO_E_DLLNOTFOUND  0x800401F8
def CO_E_ERRORINDLL  0x800401F9
def CO_E_WRONGOSFORAPP  0x800401FA
def CO_E_OBJNOTREG   0x800401FB
def CO_E_OBJISREG    0x800401FC
def CO_E_OBJNOTCONNECTED  0x800401FD
def CO_E_APPDIDNTREG  0x800401FE
def CO_E_RELEASED    0x800401FF
def OLE_S_USEREG     0x40000
def OLE_S_STATIC     0x40001
def OLE_S_MAC_CLIPFORMAT  0x40002
def DRAGDROP_S_DROP  0x40100
def DRAGDROP_S_CANCEL  0x40101
def DRAGDROP_S_USEDEFAULTCURSORS  0x40102
def DATA_S_SAMEFORMATETC  0x40130
def VIEW_S_ALREADY_FROZEN  0x40140
def CACHE_S_FORMATETC_NOTSUPPORTED  0x40170
def CACHE_S_SAMECACHE  0x40171
def CACHE_S_SOMECACHES_NOTUPDATED  0x40172
def OLEOBJ_S_INVALIDVERB  0x40180
def OLEOBJ_S_CANNOT_DOVERB_NOW  0x40181
def OLEOBJ_S_INVALIDhWnd  0x40182
def INPLACE_S_TRUNCATED  0x401A0
def CONVERT10_S_NO_PRESENTATION  0x401C0
def MK_S_REDUCED_TO_SELF  0x401E2
def MK_S_ME          0x401E4
def MK_S_HIM         0x401E5
def MK_S_US          0x401E6
def MK_S_MONIKERALREADYREGISTERED  0x401E7
def CO_E_CLASS_CREATE_FAILED  0x80080001
def CO_E_SCM_ERROR   0x80080002
def CO_E_SCM_RPC_FAILURE  0x80080003
def CO_E_BAD_PATH    0x80080004
def CO_E_SERVER_EXEC_FAILURE  0x80080005
def CO_E_OBJSRV_RPC_FAILURE  0x80080006
def MK_E_NO_NORMALIZED  0x80080007
def CO_E_SERVER_STOPPING  0x80080008
def MEM_E_INVALID_ROOT  0x80080009
def MEM_E_INVALID_LINK  0x80080010
def MEM_E_INVALID_SIZE  0x80080011
def DISP_E_UNKNOWNINTERFACE  0x80020001
def DISP_E_MEMBERNOTFOUND  0x80020003
def DISP_E_PARAMNOTFOUND  0x80020004
def DISP_E_TYPEMISMATCH  0x80020005
def DISP_E_UNKNOWNNAME  0x80020006
def DISP_E_NONAMEDARGS  0x80020007
def DISP_E_BADVARTYPE  0x80020008
def DISP_E_EXCEPTION  0x80020009
def DISP_E_OVERFLOW  0x8002000A
def DISP_E_BADINDEX  0x8002000B
def DISP_E_UNKNOWNLCID  0x8002000C
def DISP_E_ARRAYISLOCKED  0x8002000D
def DISP_E_BADPARAMCOUNT  0x8002000E
def DISP_E_PARAMNOTOPTIONAL  0x8002000F
def DISP_E_BADCALLEE  0x80020010
def DISP_E_NOTACOLLECTION  0x80020011
def TYPE_E_BUFFERTOOSMALL  0x80028016
def TYPE_E_INVDATAREAD  0x80028018
def TYPE_E_UNSUPFORMAT  0x80028019
def TYPE_E_REGISTRYACCESS  0x8002801C
def TYPE_E_LIBNOTREGISTERED  0x8002801D
def TYPE_E_UNDEFINEDTYPE  0x80028027
def TYPE_E_QUALIFIEDNAMEDISALLOWED  0x80028028
def TYPE_E_INVALIDSTATE  0x80028029
def TYPE_E_WRONGTYPEKIND  0x8002802A
def TYPE_E_ELEMENTNOTFOUND  0x8002802B
def TYPE_E_AMBIGUOUSNAME  0x8002802C
def TYPE_E_NAMECONFLICT  0x8002802D
def TYPE_E_UNKNOWNLCID  0x8002802E
def TYPE_E_DLLFUNCTIONNOTFOUND  0x8002802F
def TYPE_E_BADMODULEKIND  0x800288BD
def TYPE_E_SIZETOOBIG  0x800288C5
def TYPE_E_DUPLICATEID  0x800288C6
def TYPE_E_INVALIDID  0x800288CF
def TYPE_E_TYPEMISMATCH  0x80028CA0
def TYPE_E_OUTOFBOUNDS  0x80028CA1
def TYPE_E_IOERROR   0x80028CA2
def TYPE_E_CANTCREATETMPFILE  0x80028CA3
def TYPE_E_CANTLOADLIBRARY  0x80029C4A
def TYPE_E_INCONSISTENTPROPFUNCS  0x80029C83
def TYPE_E_CIRCULARTYPE  0x80029C84
def STG_E_INVALIDFUNCTION  0x80030001
def STG_E_FILENOTFOUND  0x80030002
def STG_E_PATHNOTFOUND  0x80030003
def STG_E_TOOMANYOPENFILES  0x80030004
def STG_E_ACCESSDENIED  0x80030005
def STG_E_INVALIDHANDLE  0x80030006
def STG_E_INSUFFICIENTMEMORY  0x80030008
def STG_E_INVALIDPOINTER  0x80030009
def STG_E_NOMOREFILES  0x80030012
def STG_E_DISKISWRITEPROTECTED  0x80030013
def STG_E_SEEKERROR  0x80030019
def STG_E_WRITEFAULT  0x8003001D
def STG_E_READFAULT  0x8003001E
def STG_E_SHAREVIOLATION  0x80030020
def STG_E_LOCKVIOLATION  0x80030021
def STG_E_FILEALREADYEXISTS  0x80030050
def STG_E_INVALIDPARAMETER  0x80030057
def STG_E_MEDIUMFULL  0x80030070
def STG_E_ABNORMALAPIEXIT  0x800300FA
def STG_E_INVALIDHEADER  0x800300FB
def STG_E_INVALIDNAME  0x800300FC
def STG_E_UNKNOWN    0x800300FD
def STG_E_UNIMPLEMENTEDFUNCTION  0x800300FE
def STG_E_INVALIDFLAG  0x800300FF
def STG_E_INUSE      0x80030100
def STG_E_NOTCURRENT  0x80030101
def STG_E_REVERTED   0x80030102
def STG_E_CANTSAVE   0x80030103
def STG_E_OLDFORMAT  0x80030104
def STG_E_OLDDLL     0x80030105
def STG_E_SHAREREQUIRED  0x80030106
def STG_E_NOTFILEBASEDSTORAGE  0x80030107
def STG_E_EXTANTMARSHALLINGS  0x80030108
def STG_S_CONVERTED  0x30200
def RPC_E_CALL_REJECTED  0x80010001
def RPC_E_CALL_CANCELED  0x80010002
def RPC_E_CANTPOST_INSENDCALL  0x80010003
def RPC_E_CANTCALLOUT_INASYNCCALL  0x80010004
def RPC_E_CANTCALLOUT_INEXTERNALCALL  0x80010005
def RPC_E_CONNECTION_TERMINATED  0x80010006
def RPC_E_SERVER_DIED  0x80010007
def RPC_E_CLIENT_DIED  0x80010008
def RPC_E_INVALID_DATAPACKET  0x80010009
def RPC_E_CANTTRANSMIT_CALL  0x8001000A
def RPC_E_CLIENT_CANTMARSHAL_DATA  0x8001000B
def RPC_E_CLIENT_CANTUNMARSHAL_DATA  0x8001000C
def RPC_E_SERVER_CANTMARSHAL_DATA  0x8001000D
def RPC_E_SERVER_CANTUNMARSHAL_DATA  0x8001000E
def RPC_E_INVALID_DATA  0x8001000F
def RPC_E_INVALID_PARAMETER  0x80010010
def RPC_E_CANTCALLOUT_AGAIN  0x80010011
def RPC_E_SERVER_DIED_DNE  0x80010012
def RPC_E_SYS_CALL_FAILED  0x80010100
def RPC_E_OUT_OF_RESOURCES  0x80010101
def RPC_E_ATTEMPTED_MULTITHREAD  0x80010102
def RPC_E_NOT_REGISTERED  0x80010103
def RPC_E_FAULT      0x80010104
def RPC_E_SERVERFAULT  0x80010105
def RPC_E_CHANGED_MODE  0x80010106
def RPC_E_INVALIDMETHOD  0x80010107
def RPC_E_DISCONNECTED  0x80010108
def RPC_E_RETRY      0x80010109
def RPC_E_SERVERCALL_RETRYLATER  0x8001010A
def RPC_E_SERVERCALL_REJECTED  0x8001010B
def RPC_E_INVALID_CALLDATA  0x8001010C
def RPC_E_CANTCALLOUT_ININPUTSYNCCALL  0x8001010D
def RPC_E_WRONG_THREAD  0x8001010E
def RPC_E_THREAD_NOT_INIT  0x8001010F
def RPC_E_UNEXPECTED  0x8001FFFF
def ERROR_BAD_USERNAME  2202
def ERROR_NOT_CONNECTED  2250
def ERROR_OPEN_FILES  2401
def ERROR_DEVICE_IN_USE  2404
def ERROR_BAD_DEVICE  1200
def ERROR_CONNECTION_UNAVAIL  1201
def ERROR_DEVICE_ALREADY_REMEMBERED  1202
def ERROR_NO_NET_OR_BAD_PATH  1203
def ERROR_BAD_PROVIDER  1204
def ERROR_CANNOT_OPEN_PROFILE  1205
def ERROR_BAD_PROFILE  1206
def ERROR_NOT_CONTAINER  1207
def ERROR_EXTENDED_ERROR  1208
def ERROR_INVALID_GROUPNAME  1209
def ERROR_INVALID_COMPUTERNAME  1210
def ERROR_INVALID_EVENTNAME  1211
def ERROR_INVALID_DOMAINNAME  1212
def ERROR_INVALID_SERVICENAME  1213
def ERROR_INVALID_NETNAME  1214
def ERROR_INVALID_SHARENAME  1215
def ERROR_INVALID_PASSWORDNAME  1216
def ERROR_INVALID_MESSAGENAME  1217
def ERROR_INVALID_MESSAGEDEST  1218
def ERROR_SESSION_CREDENTIAL_CONFLICT  1219
def ERROR_REMOTE_SESSION_LIMIT_EXCEEDED  1220
def ERROR_DUP_DOMAINNAME  1221
def ERROR_NO_NETWORK  1222
def ERROR_NOT_ALL_ASSIGNED  1300
def ERROR_SOME_NOT_MAPPED  1301
def ERROR_NO_QUOTAS_FOR_ACCOUNT  1302
def ERROR_LOCAL_USER_SESSION_KEY  1303
def ERROR_NULL_LM_PASSWORD  1304
def ERROR_UNKNOWN_REVISION  1305
def ERROR_REVISION_MISMATCH  1306
def ERROR_INVALID_OWNER  1307
def ERROR_INVALID_PRIMARY_GROUP  1308
def ERROR_NO_IMPERSONATION_TOKEN  1309
def ERROR_CANT_DISABLE_MANDATORY  1310
def ERROR_NO_LOGON_SERVERS  1311
def ERROR_NO_SUCH_LOGON_SESSION  1312
def ERROR_NO_SUCH_PRIVILEGE  1313
def ERROR_PRIVILEGE_NOT_HELD  1314
def ERROR_INVALID_ACCOUNT_NAME  1315
def ERROR_USER_EXISTS  1316
def ERROR_NO_SUCH_USER  1317
def ERROR_GROUP_EXISTS  1318
def ERROR_NO_SUCH_GROUP  1319
def ERROR_MEMBER_IN_GROUP  1320
def ERROR_MEMBER_NOT_IN_GROUP  1321
def ERROR_LAST_ADMIN  1322
def ERROR_WRONG_PASSWORD  1323
def ERROR_ILL_FORMED_PASSWORD  1324
def ERROR_PASSWORD_RESTRICTION  1325
def ERROR_LOGON_FAILURE  1326
def ERROR_ACCOUNT_RESTRICTION  1327
def ERROR_INVALID_LOGON_HOURS  1328
def ERROR_INVALID_WORKSTATION  1329
def ERROR_PASSWORD_EXPIRED  1330
def ERROR_ACCOUNT_DISABLED  1331
def ERROR_NONE_MAPPED  1332
def ERROR_TOO_MANY_LUIDS_REQUESTED  1333
def ERROR_LUIDS_EXHAUSTED  1334
def ERROR_INVALID_SUB_AUTHORITY  1335
def ERROR_INVALID_ACL  1336
def ERROR_INVALID_SID  1337
def ERROR_INVALID_SECURITY_DESCR  1338
def ERROR_BAD_INHERITANCE_ACL  1340
def ERROR_SERVER_DISABLED  1341
def ERROR_SERVER_NOT_DISABLED  1342
def ERROR_INVALID_ID_AUTHORITY  1343
def ERROR_ALLOTTED_SPACE_EXCEEDED  1344
def ERROR_INVALID_GROUP_ATTRIBUTES  1345
def ERROR_BAD_IMPERSONATION_LEVEL  1346
def ERROR_CANT_OPEN_ANONYMOUS  1347
def ERROR_BAD_VALIDATION_CLASS  1348
def ERROR_BAD_TOKEN_TYPE  1349
def ERROR_NO_SECURITY_ON_OBJECT  1350
def ERROR_CANT_ACCESS_DOMAIN_INFO  1351
def ERROR_INVALID_SERVER_STATE  1352
def ERROR_INVALID_DOMAIN_STATE  1353
def ERROR_INVALID_DOMAIN_ROLE  1354
def ERROR_NO_SUCH_DOMAIN  1355
def ERROR_DOMAIN_EXISTS  1356
def ERROR_DOMAIN_LIMIT_EXCEEDED  1357
def ERROR_INTERNAL_DB_CORRUPTION  1358
def ERROR_INTERNAL_ERROR  1359
def ERROR_GENERIC_NOT_MAPPED  1360
def ERROR_BAD_DESCRIPTOR_FORMAT  1361
def ERROR_NOT_LOGON_PROCESS  1362
def ERROR_LOGON_SESSION_EXISTS  1363
def ERROR_NO_SUCH_PACKAGE  1364
def ERROR_BAD_LOGON_SESSION_STATE  1365
def ERROR_LOGON_SESSION_COLLISION  1366
def ERROR_INVALID_LOGON_TYPE  1367
def ERROR_CANNOT_IMPERSONATE  1368
def ERROR_RXACT_INVALID_STATE  1369
def ERROR_RXACT_COMMIT_FAILURE  1370
def ERROR_SPECIAL_ACCOUNT  1371
def ERROR_SPECIAL_GROUP  1372
def ERROR_SPECIAL_USER  1373
def ERROR_MEMBERS_PRIMARY_GROUP  1374
def ERROR_TOKEN_ALREADY_IN_USE  1375
def ERROR_NO_SUCH_ALIAS  1376
def ERROR_MEMBER_NOT_IN_ALIAS  1377
def ERROR_MEMBER_IN_ALIAS  1378
def ERROR_ALIAS_EXISTS  1379
def ERROR_LOGON_NOT_GRANTED  1380
def ERROR_TOO_MANY_SECRETS  1381
def ERROR_SECRET_TOO_LONG  1382
def ERROR_INTERNAL_DB_ERROR  1383
def ERROR_TOO_MANY_CONTEXT_IDS  1384
def ERROR_LOGON_TYPE_NOT_GRANTED  1385
def ERROR_NT_CROSS_ENCRYPTION_REQUIRED  1386
def ERROR_NO_SUCH_MEMBER  1387
def ERROR_INVALID_MEMBER  1388
def ERROR_TOO_MANY_SIDS  1389
def ERROR_LM_CROSS_ENCRYPTION_REQUIRED  1390
def ERROR_NO_INHERITANCE  1391
def ERROR_FILE_CORRUPT  1392
def ERROR_DISK_CORRUPT  1393
def ERROR_NO_USER_SESSION_KEY  1394
def ERROR_INVALID_WINDOW_HANDLE  1400
def ERROR_INVALID_MENU_HANDLE  1401
def ERROR_INVALID_CURSOR_HANDLE  1402
def ERROR_INVALID_ACCEL_HANDLE  1403
def ERROR_INVALID_HOOK_HANDLE  1404
def ERROR_INVALID_DWP_HANDLE  1405
def ERROR_TLW_WITH_WSCHILD  1406
def ERROR_CANNOT_FIND_WND_CLASS  1407
def ERROR_WINDOW_OF_OTHER_THREAD  1408
def ERROR_HOTKEY_ALREADY_REGISTERED  1409
def ERROR_CLASS_ALREADY_EXISTS  1410
def ERROR_CLASS_DOES_NOT_EXIST  1411
def ERROR_CLASS_HAS_WINDOWS  1412
def ERROR_INVALID_INDEX  1413
def ERROR_INVALID_ICON_HANDLE  1414
def ERROR_PRIVATE_DIALOG_INDEX  1415
def ERROR_LISTBOX_ID_NOT_FOUND  1416
def ERROR_NO_WILDCARD_CHARACTERS  1417
def ERROR_CLIPBOARD_NOT_OPEN  1418
def ERROR_HOTKEY_NOT_REGISTERED  1419
def ERROR_WINDOW_NOT_DIALOG  1420
def ERROR_CONTROL_ID_NOT_FOUND  1421
def ERROR_INVALID_COMBOBOX_MESSAGE  1422
def ERROR_WINDOW_NOT_COMBOBOX  1423
def ERROR_INVALID_EDIT_HEIGHT  1424
def ERROR_DC_NOT_FOUND  1425
def ERROR_INVALID_HOOK_FILTER  1426
def ERROR_INVALID_FILTER_PROC  1427
def ERROR_HOOK_NEEDS_HMOD  1428
def ERROR_PUBLIC_ONLY_HOOK  1429
def ERROR_JOURNAL_HOOK_SET  1430
def ERROR_HOOK_NOT_INSTALLED  1431
def ERROR_INVALID_LB_MESSAGE  1432
def ERROR_SETCOUNT_ON_BAD_LB  1433
def ERROR_LB_WITHOUT_TABSTOPS  1434
def ERROR_DESTROY_OBJECT_OF_OTHER_THREAD  1435
def ERROR_CHILD_WINDOW_MENU  1436
def ERROR_NO_SYSTEM_MENU  1437
def ERROR_INVALID_MSGBOX_STYLE  1438
def ERROR_INVALID_SPI_VALUE  1439
def ERROR_SCREEN_ALREADY_LOCKED  1440
def ERROR_HWNDS_HAVE_DIFF_PARENT  1441
def ERROR_NOT_CHILD_WINDOW  1442
def ERROR_INVALID_GW_COMMAND  1443
def ERROR_INVALID_THREAD_ID  1444
def ERROR_NON_MDICHILD_WINDOW  1445
def ERROR_POPUP_ALREADY_ACTIVE  1446
def ERROR_NO_SCROLLBARS  1447
def ERROR_INVALID_SCROLLBAR_RANGE  1448
def ERROR_INVALID_SHOWWIN_COMMAND  1449
def ERROR_EVENTLOG_FILE_CORRUPT  1500
def ERROR_EVENTLOG_CANT_START  1501
def ERROR_LOG_FILE_FULL  1502
def ERROR_EVENTLOG_FILE_CHANGED  1503
def RPC_S_INVALID_STRING_BINDING  1700
def RPC_S_WRONG_KIND_OF_BINDING  1701
def RPC_S_INVALID_BINDING  1702
def RPC_S_PROTSEQ_NOT_SUPPORTED  1703
def RPC_S_INVALID_RPC_PROTSEQ  1704
def RPC_S_INVALID_STRING_UUID  1705
def RPC_S_INVALID_ENDPOINT_FORMAT  1706
def RPC_S_INVALID_NET_ADDR  1707
def RPC_S_NO_ENDPOINT_FOUND  1708
def RPC_S_INVALID_TIMEOUT  1709
def RPC_S_OBJECT_NOT_FOUND  1710
def RPC_S_ALREADY_REGISTERED  1711
def RPC_S_TYPE_ALREADY_REGISTERED  1712
def RPC_S_ALREADY_LISTENING  1713
def RPC_S_NO_PROTSEQS_REGISTERED  1714
def RPC_S_NOT_LISTENING  1715
def RPC_S_UNKNOWN_MGR_TYPE  1716
def RPC_S_UNKNOWN_IF  1717
def RPC_S_NO_BINDINGS  1718
def RPC_S_NO_PROTSEQS  1719
def RPC_S_CANT_CREATE_ENDPOINT  1720
def RPC_S_OUT_OF_RESOURCES  1721
def RPC_S_SERVER_UNAVAILABLE  1722
def RPC_S_SERVER_TOO_BUSY  1723
def RPC_S_INVALID_NETWORK_OPTIONS  1724
def RPC_S_NO_CALL_ACTIVE  1725
def RPC_S_CALL_FAILED  1726
def RPC_S_CALL_FAILED_DNE  1727
def RPC_S_PROTOCOL_ERROR  1728
def RPC_S_UNSUPPORTED_TRANS_SYN  1730
def RPC_S_UNSUPPORTED_TYPE  1732
def RPC_S_INVALID_TAG  1733
def RPC_S_INVALID_BOUND  1734
def RPC_S_NO_ENTRY_NAME  1735
def RPC_S_INVALID_NAME_SYNTAX  1736
def RPC_S_UNSUPPORTED_NAME_SYNTAX  1737
def RPC_S_UUID_NO_ADDRESS  1739
def RPC_S_DUPLICATE_ENDPOINT  1740
def RPC_S_UNKNOWN_AUTHN_TYPE  1741
def RPC_S_MAX_CALLS_TOO_SMALL  1742
def RPC_S_STRING_TOO_LONG  1743
def RPC_S_PROTSEQ_NOT_FOUND  1744
def RPC_S_PROCNUM_OUT_OF_RANGE  1745
def RPC_S_BINDING_HAS_NO_AUTH  1746
def RPC_S_UNKNOWN_AUTHN_SERVICE  1747
def RPC_S_UNKNOWN_AUTHN_LEVEL  1748
def RPC_S_INVALID_AUTH_IDENTITY  1749
def RPC_S_UNKNOWN_AUTHZ_SERVICE  1750
def EPT_S_INVALID_ENTRY  1751
def EPT_S_CANT_PERFORM_OP  1752
def EPT_S_NOT_REGISTERED  1753
def RPC_S_NOTHING_TO_EXPORT  1754
def RPC_S_INCOMPLETE_NAME  1755
def RPC_S_INVALID_VERS_OPTION  1756
def RPC_S_NO_MORE_MEMBERS  1757
def RPC_S_NOT_ALL_OBJS_UNEXPORTED  1758
def RPC_S_INTERFACE_NOT_FOUND  1759
def RPC_S_ENTRY_ALREADY_EXISTS  1760
def RPC_S_ENTRY_NOT_FOUND  1761
def RPC_S_NAME_SERVICE_UNAVAILABLE  1762
def RPC_S_INVALID_NAF_ID  1763
def RPC_S_CANNOT_SUPPORT  1764
def RPC_S_NO_CONTEXT_AVAILABLE  1765
def RPC_S_INTERNAL_ERROR  1766
def RPC_S_ZERO_DIVIDE  1767
def RPC_S_ADDRESS_ERROR  1768
def RPC_S_FP_DIV_ZERO  1769
def RPC_S_FP_UNDERFLOW  1770
def RPC_S_FP_OVERFLOW  1771
def RPC_X_NO_MORE_ENTRIES  1772
def RPC_X_SS_CHAR_TRANS_OPEN_FAIL  1773
def RPC_X_SS_CHAR_TRANS_SHORT_FILE  1774
def RPC_X_SS_IN_NULL_CONTEXT  1775
def RPC_X_SS_CONTEXT_DAMAGED  1777
def RPC_X_SS_HANDLES_MISMATCH  1778
def RPC_X_SS_CANNOT_GET_CALL_HANDLE  1779
def RPC_X_NULL_REF_POINTER  1780
def RPC_X_ENUM_VALUE_OUT_OF_RANGE  1781
def RPC_X_BYTE_COUNT_TOO_SMALL  1782
def RPC_X_BAD_STUB_DATA  1783
def ERROR_INVALID_USER_BUFFER  1784
def ERROR_UNRECOGNIZED_MEDIA  1785
def ERROR_NO_TRUST_LSA_SECRET  1786
def ERROR_NO_TRUST_SAM_ACCOUNT  1787
def ERROR_TRUSTED_DOMAIN_FAILURE  1788
def ERROR_TRUSTED_RELATIONSHIP_FAILURE  1789
def ERROR_TRUST_FAILURE  1790
def RPC_S_CALL_IN_PROGRESS  1791
def ERROR_NETLOGON_NOT_STARTED  1792
def ERROR_ACCOUNT_EXPIRED  1793
def ERROR_REDIRECTOR_HAS_OPEN_HANDLES  1794
def ERROR_PRINTER_DRIVER_ALREADY_INSTALLED  1795
def ERROR_UNKNOWN_PORT  1796
def ERROR_UNKNOWN_PRINTER_DRIVER  1797
def ERROR_UNKNOWN_PRINTPROCESSOR  1798
def ERROR_INVALID_SEPARATOR_FILE  1799
def ERROR_INVALID_PRIORITY  1800
def ERROR_INVALID_PRINTER_NAME  1801
def ERROR_PRINTER_ALREADY_EXISTS  1802
def ERROR_INVALID_PRINTER_COMMAND  1803
def ERROR_INVALID_DATATYPE  1804
def ERROR_INVALID_ENVIRONMENT  1805
def RPC_S_NO_MORE_BINDINGS  1806
def ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT  1807
def ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT  1808
def ERROR_NOLOGON_SERVER_TRUST_ACCOUNT  1809
def ERROR_DOMAIN_TRUST_INCONSISTENT  1810
def ERROR_SERVER_HAS_OPEN_HANDLES  1811
def ERROR_RESOURCE_DATA_NOT_FOUND  1812
def ERROR_RESOURCE_TYPE_NOT_FOUND  1813
def ERROR_RESOURCE_NAME_NOT_FOUND  1814
def ERROR_RESOURCE_LANG_NOT_FOUND  1815
def ERROR_NOT_ENOUGH_QUOTA  1816
def RPC_S_GROUP_MEMBER_NOT_FOUND  1898
def EPT_S_CANT_CREATE  1899
def RPC_S_INVALID_OBJECT  1900
def ERROR_INVALID_TIME  1901
def ERROR_INVALID_FORM_NAME  1902
def ERROR_INVALID_FORM_SIZE  1903
def ERROR_ALREADY_WAITING  1904
def ERROR_PRINTER_DELETED  1905
def ERROR_INVALID_PRINTER_STATE  1906
def ERROR_NO_BROWSER_SERVERS_FOUND  6118
def MAXPNAMELEN      32
def MAXERRORLENGTH   128
type smpte !hour !min !sec !frame !fps !dummy !pad[2]
type midi songptrpos
type MMTIME wType u
def TIME_MS          0x1
def TIME_SAMPLES     0x2
def TIME_BYTES       0x4
def TIME_SMPTE       0x8
def TIME_MIDI        0x10
def MM_JOY1MOVE      0x3A0
def MM_JOY2MOVE      0x3A1
def MM_JOY1ZMOVE     0x3A2
def MM_JOY2ZMOVE     0x3A3
def MM_JOY1BUTTONDOWN  0x3B5
def MM_JOY2BUTTONDOWN  0x3B6
def MM_JOY1BUTTONUP  0x3B7
def MM_JOY2BUTTONUP  0x3B8
def MM_MCINOTIFY     0x3B9
def MM_MCISYSTEM_STRING  0x3CA
def MM_WOM_OPEN      0x3BB
def MM_WOM_CLOSE     0x3BC
def MM_WOM_DONE      0x3BD
def MM_WIM_OPEN      0x3BE
def MM_WIM_CLOSE     0x3BF
def MM_WIM_DATA      0x3C0
def MM_MIM_OPEN      0x3C1
def MM_MIM_CLOSE     0x3C2
def MM_MIM_DATA      0x3C3
def MM_MIM_LONGDATA  0x3C4
def MM_MIM_ERROR     0x3C5
def MM_MIM_LONGERROR  0x3C6
def MM_MOM_OPEN      0x3C7
def MM_MOM_CLOSE     0x3C8
def MM_MOM_DONE      0x3C9
def MMSYSERR_BASE    0
def WAVERR_BASE      32
def MIDIERR_BASE     64
def TIMERR_BASE      96
def JOYERR_BASE      160
def MCIERR_BASE      256
def MCI_STRING_OFFSET  512
def MCI_VD_OFFSET    1024
def MCI_CD_OFFSET    1088
def MCI_WAVE_OFFSET  1152
def MCI_SEQ_OFFSET   1216
def MMSYSERR_NOERROR  0
def MMSYSERR_ERROR   (MMSYSERR_BASE + 1)
def MMSYSERR_BADDEVICEID  (MMSYSERR_BASE + 2)
def MMSYSERR_NOTENABLED  (MMSYSERR_BASE + 3)
def MMSYSERR_ALLOCATED  (MMSYSERR_BASE + 4)
def MMSYSERR_INVALHANDLE  (MMSYSERR_BASE + 5)
def MMSYSERR_NODRIVER  (MMSYSERR_BASE + 6)
def MMSYSERR_NOMEM   (MMSYSERR_BASE + 7)
def MMSYSERR_NOTSUPPORTED  (MMSYSERR_BASE + 8)
def MMSYSERR_BADERRNUM  (MMSYSERR_BASE + 9)
def MMSYSERR_INVALFLAG  (MMSYSERR_BASE + 10)
def MMSYSERR_INVALPARAM  (MMSYSERR_BASE + 11)
def MMSYSERR_HANDLEBUSY  (MMSYSERR_BASE + 12)
def MMSYSERR_INVALIDALIAS  (MMSYSERR_BASE + 13)
def MMSYSERR_LASTERROR  (MMSYSERR_BASE + 13)
def MM_MOM_POSITIONCB  0x3CA
def MM_MCISIGNAL     0x3CB
def MM_MIM_MOREDATA  0x3CC
def MIDICAPS_STREAM  0x8
type MIDIEVENT dwDeltaTime dwStreamID dwEvent dwParms[1]
type MIDISTRMBUFFVER dwVersion dwMid dwOEMVersion
def MEVT_F_SHORT     0x0
def MEVT_F_LONG      0x80000000
def MEVT_F_CALLBACK  0x40000000
def MIDISTRM_ERROR   -2
def MIDIPROP_SET     0x80000000
def MIDIPROP_GET     0x40000000
def MIDIPROP_TIMEDIV  0x1
def MIDIPROP_TEMPO   0x2
type MIDIPROPTIMEDIV cbStruct dwTimeDiv
type MIDIPROPTEMPO cbStruct dwTempo
def MIXER_SHORT_NAME_CHARS  16
def MIXER_LONG_NAME_CHARS  64
def MIXERR_BASE      1024
def MIXERR_INVALLINE  (MIXERR_BASE + 0)
def MIXERR_INVALCONTROL  (MIXERR_BASE + 1)
def MIXERR_INVALVALUE  (MIXERR_BASE + 2)
def MIXERR_LASTERROR  (MIXERR_BASE + 2)
def MIXER_OBJECTF_HANDLE  0x80000000
def MIXER_OBJECTF_MIXER  0x0
def MIXER_OBJECTF_HMIXER  (MIXER_OBJECTF_HANDLE |  MIXER_OBJECTF_MIXER)
def MIXER_OBJECTF_WAVEOUT  0x10000000
def MIXER_OBJECTF_HWAVEOUT  (MIXER_OBJECTF_HANDLE |  MIXER_OBJECTF_WAVEOUT)
def MIXER_OBJECTF_WAVEIN  0x20000000
def MIXER_OBJECTF_HWAVEIN  (MIXER_OBJECTF_HANDLE |  MIXER_OBJECTF_WAVEIN)
def MIXER_OBJECTF_MIDIOUT  0x30000000
def MIXER_OBJECTF_HMIDIOUT  (MIXER_OBJECTF_HANDLE |  MIXER_OBJECTF_MIDIOUT)
def MIXER_OBJECTF_MIDIIN  0x40000000
def MIXER_OBJECTF_HMIDIIN  (MIXER_OBJECTF_HANDLE |  MIXER_OBJECTF_MIDIIN)
def MIXER_OBJECTF_AUX  0x50000000
dll winmm.dll #mixerGetNumDevs
type MIXERCAPS @wMid @wPid vDriverVersion !szPname[MAXPNAMELEN] fdwSupport cDestinations
dll winmm.dll #mixerGetDevCaps uMxId MIXERCAPS'pmxcaps cbmxcaps
dll winmm.dll #mixerOpen *phmx uMxId dwCallback dwInstance fdwOpen
dll winmm.dll #mixerClose hmx
dll winmm.dll #mixerMessage hmx uMsg dwParam1 dwParam2
type Target dwType dwDeviceID @wMid @wPid vDriverVersion !szPname[MAXPNAMELEN]
type MIXERLINE cbStruct dwDestination dwSource dwLineID fdwLine dwUser dwComponentType cChannels cConnections cControls !szShortName[MIXER_SHORT_NAME_CHARS] !szName[MIXER_LONG_NAME_CHARS] Target'lpTarget
def MIXERLINE_LINEF_ACTIVE  0x1
def MIXERLINE_LINEF_DISCONNECTED  0x8000
def MIXERLINE_LINEF_SOURCE  0x80000000
def MIXERLINE_COMPONENTTYPE_DST_FIRST  0x0
def MIXERLINE_COMPONENTTYPE_DST_UNDEFINED  (MIXERLINE_COMPONENTTYPE_DST_FIRST + 0)
def MIXERLINE_COMPONENTTYPE_DST_DIGITAL  (MIXERLINE_COMPONENTTYPE_DST_FIRST + 1)
def MIXERLINE_COMPONENTTYPE_DST_LINE  (MIXERLINE_COMPONENTTYPE_DST_FIRST + 2)
def MIXERLINE_COMPONENTTYPE_DST_MONITOR  (MIXERLINE_COMPONENTTYPE_DST_FIRST + 3)
def MIXERLINE_COMPONENTTYPE_DST_SPEAKERS  (MIXERLINE_COMPONENTTYPE_DST_FIRST + 4)
def MIXERLINE_COMPONENTTYPE_DST_HEADPHONES  (MIXERLINE_COMPONENTTYPE_DST_FIRST + 5)
def MIXERLINE_COMPONENTTYPE_DST_TELEPHONE  (MIXERLINE_COMPONENTTYPE_DST_FIRST + 6)
def MIXERLINE_COMPONENTTYPE_DST_WAVEIN  (MIXERLINE_COMPONENTTYPE_DST_FIRST + 7)
def MIXERLINE_COMPONENTTYPE_DST_VOICEIN  (MIXERLINE_COMPONENTTYPE_DST_FIRST + 8)
def MIXERLINE_COMPONENTTYPE_DST_LAST  (MIXERLINE_COMPONENTTYPE_DST_FIRST + 8)
def MIXERLINE_COMPONENTTYPE_SRC_FIRST  0x1000
def MIXERLINE_COMPONENTTYPE_SRC_UNDEFINED  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 0)
def MIXERLINE_COMPONENTTYPE_SRC_DIGITAL  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 1)
def MIXERLINE_COMPONENTTYPE_SRC_LINE  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 2)
def MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 3)
def MIXERLINE_COMPONENTTYPE_SRC_SYNTHESIZER  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 4)
def MIXERLINE_COMPONENTTYPE_SRC_COMPACTDISC  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 5)
def MIXERLINE_COMPONENTTYPE_SRC_TELEPHONE  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 6)
def MIXERLINE_COMPONENTTYPE_SRC_PCSPEAKER  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 7)
def MIXERLINE_COMPONENTTYPE_SRC_WAVEOUT  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 8)
def MIXERLINE_COMPONENTTYPE_SRC_AUXILIARY  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 9)
def MIXERLINE_COMPONENTTYPE_SRC_ANALOG  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 10)
def MIXERLINE_COMPONENTTYPE_SRC_LAST  (MIXERLINE_COMPONENTTYPE_SRC_FIRST + 10)
def MIXERLINE_TARGETTYPE_UNDEFINED  0
def MIXERLINE_TARGETTYPE_WAVEOUT  1
def MIXERLINE_TARGETTYPE_WAVEIN  2
def MIXERLINE_TARGETTYPE_MIDIOUT  3
def MIXERLINE_TARGETTYPE_MIDIIN  4
def MIXERLINE_TARGETTYPE_AUX  5
dll winmm.dll #mixerGetLineInfo hmxobj MIXERLINE*pmxl fdwInfo
def MIXER_GETLINEINFOF_DESTINATION  0x0
def MIXER_GETLINEINFOF_SOURCE  0x1
def MIXER_GETLINEINFOF_LINEID  0x2
def MIXER_GETLINEINFOF_COMPONENTTYPE  0x3
def MIXER_GETLINEINFOF_TARGETTYPE  0x4
def MIXER_GETLINEINFOF_QUERYMASK  0xF
dll winmm.dll #mixerGetID hmxobj *pumxID fdwId
type MIXERCONTROL cbStruct dwControlID dwControlType fdwControl cMultipleItems !szShortName[MIXER_SHORT_NAME_CHARS] !szName[MIXER_LONG_NAME_CHARS] ^Bounds Metrics
def MIXERCONTROL_CONTROLF_UNIFORM  0x1
def MIXERCONTROL_CONTROLF_MULTIPLE  0x2
def MIXERCONTROL_CONTROLF_DISABLED  0x80000000
def MIXERCONTROL_CT_CLASS_MASK  0xF0000000
def MIXERCONTROL_CT_CLASS_CUSTOM  0x0
def MIXERCONTROL_CT_CLASS_METER  0x10000000
def MIXERCONTROL_CT_CLASS_SWITCH  0x20000000
def MIXERCONTROL_CT_CLASS_NUMBER  0x30000000
def MIXERCONTROL_CT_CLASS_SLIDER  0x40000000
def MIXERCONTROL_CT_CLASS_FADER  0x50000000
def MIXERCONTROL_CT_CLASS_TIME  0x60000000
def MIXERCONTROL_CT_CLASS_LIST  0x70000000
def MIXERCONTROL_CT_SUBCLASS_MASK  0xF000000
def MIXERCONTROL_CT_SC_SWITCH_BOOLEAN  0x0
def MIXERCONTROL_CT_SC_SWITCH_BUTTON  0x1000000
def MIXERCONTROL_CT_SC_METER_POLLED  0x0
def MIXERCONTROL_CT_SC_TIME_MICROSECS  0x0
def MIXERCONTROL_CT_SC_TIME_MILLISECS  0x1000000
def MIXERCONTROL_CT_SC_LIST_SINGLE  0x0
def MIXERCONTROL_CT_SC_LIST_MULTIPLE  0x1000000
def MIXERCONTROL_CT_UNITS_MASK  0xFF0000
def MIXERCONTROL_CT_UNITS_CUSTOM  0x0
def MIXERCONTROL_CT_UNITS_BOOLEAN  0x10000
def MIXERCONTROL_CT_UNITS_SIGNED  0x20000
def MIXERCONTROL_CT_UNITS_UNSIGNED  0x30000
def MIXERCONTROL_CT_UNITS_DECIBELS  0x40000
def MIXERCONTROL_CT_UNITS_PERCENT  0x50000
def MIXERCONTROL_CONTROLTYPE_CUSTOM  (MIXERCONTROL_CT_CLASS_CUSTOM |  MIXERCONTROL_CT_UNITS_CUSTOM)
def MIXERCONTROL_CONTROLTYPE_BOOLEANMETER  (MIXERCONTROL_CT_CLASS_METER |  MIXERCONTROL_CT_SC_METER_POLLED |  MIXERCONTROL_CT_UNITS_BOOLEAN)
def MIXERCONTROL_CONTROLTYPE_SIGNEDMETER  (MIXERCONTROL_CT_CLASS_METER |  MIXERCONTROL_CT_SC_METER_POLLED |  MIXERCONTROL_CT_UNITS_SIGNED)
def MIXERCONTROL_CONTROLTYPE_PEAKMETER  (MIXERCONTROL_CONTROLTYPE_SIGNEDMETER + 1)
def MIXERCONTROL_CONTROLTYPE_UNSIGNEDMETER  (MIXERCONTROL_CT_CLASS_METER |  MIXERCONTROL_CT_SC_METER_POLLED |  MIXERCONTROL_CT_UNITS_UNSIGNED)
def MIXERCONTROL_CONTROLTYPE_BOOLEAN  (MIXERCONTROL_CT_CLASS_SWITCH |  MIXERCONTROL_CT_SC_SWITCH_BOOLEAN |  MIXERCONTROL_CT_UNITS_BOOLEAN)
def MIXERCONTROL_CONTROLTYPE_ONOFF  (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 1)
def MIXERCONTROL_CONTROLTYPE_MUTE  (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 2)
def MIXERCONTROL_CONTROLTYPE_MONO  (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 3)
def MIXERCONTROL_CONTROLTYPE_LOUDNESS  (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 4)
def MIXERCONTROL_CONTROLTYPE_STEREOENH  (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 5)
def MIXERCONTROL_CONTROLTYPE_BUTTON  (MIXERCONTROL_CT_CLASS_SWITCH |  MIXERCONTROL_CT_SC_SWITCH_BUTTON |  MIXERCONTROL_CT_UNITS_BOOLEAN)
def MIXERCONTROL_CONTROLTYPE_DECIBELS  (MIXERCONTROL_CT_CLASS_NUMBER |  MIXERCONTROL_CT_UNITS_DECIBELS)
def MIXERCONTROL_CONTROLTYPE_SIGNED  (MIXERCONTROL_CT_CLASS_NUMBER |  MIXERCONTROL_CT_UNITS_SIGNED)
def MIXERCONTROL_CONTROLTYPE_UNSIGNED  (MIXERCONTROL_CT_CLASS_NUMBER |  MIXERCONTROL_CT_UNITS_UNSIGNED)
def MIXERCONTROL_CONTROLTYPE_PERCENT  (MIXERCONTROL_CT_CLASS_NUMBER |  MIXERCONTROL_CT_UNITS_PERCENT)
def MIXERCONTROL_CONTROLTYPE_SLIDER  (MIXERCONTROL_CT_CLASS_SLIDER |  MIXERCONTROL_CT_UNITS_SIGNED)
def MIXERCONTROL_CONTROLTYPE_PAN  (MIXERCONTROL_CONTROLTYPE_SLIDER + 1)
def MIXERCONTROL_CONTROLTYPE_QSOUNDPAN  (MIXERCONTROL_CONTROLTYPE_SLIDER + 2)
def MIXERCONTROL_CONTROLTYPE_FADER  (MIXERCONTROL_CT_CLASS_FADER |  MIXERCONTROL_CT_UNITS_UNSIGNED)
def MIXERCONTROL_CONTROLTYPE_VOLUME  (MIXERCONTROL_CONTROLTYPE_FADER + 1)
def MIXERCONTROL_CONTROLTYPE_BASS  (MIXERCONTROL_CONTROLTYPE_FADER + 2)
def MIXERCONTROL_CONTROLTYPE_TREBLE  (MIXERCONTROL_CONTROLTYPE_FADER + 3)
def MIXERCONTROL_CONTROLTYPE_EQUALIZER  (MIXERCONTROL_CONTROLTYPE_FADER + 4)
def MIXERCONTROL_CONTROLTYPE_SINGLESELECT  (MIXERCONTROL_CT_CLASS_LIST |  MIXERCONTROL_CT_SC_LIST_SINGLE |  MIXERCONTROL_CT_UNITS_BOOLEAN)
def MIXERCONTROL_CONTROLTYPE_MUX  (MIXERCONTROL_CONTROLTYPE_SINGLESELECT + 1)
def MIXERCONTROL_CONTROLTYPE_MULTIPLESELECT  (MIXERCONTROL_CT_CLASS_LIST |  MIXERCONTROL_CT_SC_LIST_MULTIPLE |  MIXERCONTROL_CT_UNITS_BOOLEAN)
def MIXERCONTROL_CONTROLTYPE_MIXER  (MIXERCONTROL_CONTROLTYPE_MULTIPLESELECT + 1)
def MIXERCONTROL_CONTROLTYPE_MICROTIME  (MIXERCONTROL_CT_CLASS_TIME |  MIXERCONTROL_CT_SC_TIME_MICROSECS |  MIXERCONTROL_CT_UNITS_UNSIGNED)
def MIXERCONTROL_CONTROLTYPE_MILLITIME  (MIXERCONTROL_CT_CLASS_TIME |  MIXERCONTROL_CT_SC_TIME_MILLISECS |  MIXERCONTROL_CT_UNITS_UNSIGNED)
type MIXERLINECONTROLS cbStruct dwLineID dwControl cControls cbmxctrl MIXERCONTROL'pamxctrl
dll winmm.dll #mixerGetLineControls hmxobj MIXERLINECONTROLS*pmxlc fdwControls
def MIXER_GETLINECONTROLSF_ALL  0x0
def MIXER_GETLINECONTROLSF_ONEBYID  0x1
def MIXER_GETLINECONTROLSF_ONEBYTYPE  0x2
def MIXER_GETLINECONTROLSF_QUERYMASK  0xF
type MIXERCONTROLDETAILS cbStruct dwControlID cChannels item cbDetails paDetails
type MIXERCONTROLDETAILS_LISTTEXT dwParam1 dwParam2 !szName[MIXER_LONG_NAME_CHARS]
type MIXERCONTROLDETAILS_BOOLEAN fValue
type MIXERCONTROLDETAILS_SIGNED lValue
type MIXERCONTROLDETAILS_UNSIGNED dwValue
dll winmm.dll #mixerGetControlDetails hmxobj MIXERCONTROLDETAILS*pmxcd fdwDetails
def MIXER_GETCONTROLDETAILSF_VALUE  0x0
def MIXER_GETCONTROLDETAILSF_LISTTEXT  0x1
def MIXER_GETCONTROLDETAILSF_QUERYMASK  0xF
dll winmm.dll #mixerSetControlDetails hmxobj MIXERCONTROLDETAILS*pmxcd fdwDetails
def MIXER_SETCONTROLDETAILSF_VALUE  0x0
def MIXER_SETCONTROLDETAILSF_CUSTOM  0x1
def MIXER_SETCONTROLDETAILSF_QUERYMASK  0xF
def JOY_BUTTON5      0x10
def JOY_BUTTON6      0x20
def JOY_BUTTON7      0x40
def JOY_BUTTON8      0x80
def JOY_BUTTON9      0x100
def JOY_BUTTON10     0x200
def JOY_BUTTON11     0x400
def JOY_BUTTON12     0x800
def JOY_BUTTON13     0x1000
def JOY_BUTTON14     0x2000
def JOY_BUTTON15     0x4000
def JOY_BUTTON16     0x8000
def JOY_BUTTON17     0x10000
def JOY_BUTTON18     0x20000
def JOY_BUTTON19     0x40000
def JOY_BUTTON20     0x80000
def JOY_BUTTON21     0x100000
def JOY_BUTTON22     0x200000
def JOY_BUTTON23     0x400000
def JOY_BUTTON24     0x800000
def JOY_BUTTON25     0x1000000
def JOY_BUTTON26     0x2000000
def JOY_BUTTON27     0x4000000
def JOY_BUTTON28     0x8000000
def JOY_BUTTON29     0x10000000
def JOY_BUTTON30     0x20000000
def JOY_BUTTON31     0x40000000
def JOY_BUTTON32     0x80000000
def JOY_POVCENTERED  -1
def JOY_POVFORWARD   0
def JOY_POVRIGHT     9000
def JOY_POVBACKWARD  18000
def JOY_POVLEFT      27000
def JOY_RETURNX      0x1
def JOY_RETURNY      0x2
def JOY_RETURNZ      0x4
def JOY_RETURNR      0x8
def JOY_RETURNU      0x10
def JOY_RETURNV      0x20
def JOY_RETURNPOV    0x40
def JOY_RETURNBUTTONS  0x80
def JOY_RETURNRAWDATA  0x100
def JOY_RETURNPOVCTS  0x200
def JOY_RETURNCENTERED  0x400
def JOY_USEDEADZONE  0x800
def JOY_RETURNALL    (JOY_RETURNX |  JOY_RETURNY |  JOY_RETURNZ |  JOY_RETURNR |  JOY_RETURNU |  JOY_RETURNV |  JOY_RETURNPOV |  JOY_RETURNBUTTONS)
def JOY_CAL_READALWAYS  0x10000
def JOY_CAL_READXYONLY  0x20000
def JOY_CAL_READ3    0x40000
def JOY_CAL_READ4    0x80000
def JOY_CAL_READXONLY  0x100000
def JOY_CAL_READYONLY  0x200000
def JOY_CAL_READ5    0x400000
def JOY_CAL_READ6    0x800000
def JOY_CAL_READZONLY  0x1000000
def JOY_CAL_READRONLY  0x2000000
def JOY_CAL_READUONLY  0x4000000
def JOY_CAL_READVONLY  0x8000000
dll winmm.dll #joyGetPos uJoyID JOYINFO*pji
dll winmm.dll #joyGetPosEx uJoyID JOYINFOEX*pji
def WAVE_FORMAT_QUERY  0x1
def SND_PURGE        0x40
def SND_APPLICATION  0x80
def WAVE_MAPPED      0x4
def WAVE_FORMAT_DIRECT  0x8
def WAVE_FORMAT_DIRECT_QUERY  (WAVE_FORMAT_QUERY |  WAVE_FORMAT_DIRECT)
def MIM_MOREDATA     MM_MIM_MOREDATA
def MOM_POSITIONCB   MM_MOM_POSITIONCB
def MIDI_IO_STATUS   0x20
dll winmm.dll #midiStreamOpen *phms *puDeviceID cMidi dwCallback dwInstance fdwOpen
dll winmm.dll #midiStreamClose hms
dll winmm.dll #midiStreamProperty hms !*lppropdata dwProperty
dll winmm.dll #midiStreamPosition hms MMTIME*lpmmt cbmmt
dll winmm.dll #midiStreamOut hms MIDIHDR*pmh cbmh
dll winmm.dll #midiStreamPause hms
dll winmm.dll #midiStreamRestart hms
dll winmm.dll #midiStreamStop hms
dll winmm.dll #midiConnect hmi hmo !*pReserved
dll winmm.dll #midiDisconnect hmi hmo !*pReserved
type JOYINFOEX dwSize dwFlags dwXpos dwYpos dwZpos dwRpos dwUpos dwVpos dwButtons dwButtonNumber dwPOV dwReserved1 dwReserved2
def DRV_LOAD         0x1
def DRV_ENABLE       0x2
def DRV_OPEN         0x3
def DRV_CLOSE        0x4
def DRV_DISABLE      0x5
def DRV_FREE         0x6
def DRV_CONFIGURE    0x7
def DRV_QUERYCONFIGURE  0x8
def DRV_INSTALL      0x9
def DRV_REMOVE       0xA
def DRV_EXITSESSION  0xB
def DRV_POWER        0xF
def DRV_RESERVED     0x800
def DRV_USER         0x4000
type DRVCONFIGINFO dwDCISize $lpszDCISectionName $lpszDCIAliasName dnDevNode
def DRVCNF_CANCEL    0x0
def DRVCNF_OK        0x1
def DRVCNF_RESTART   0x2
def DRV_CANCEL       DRVCNF_CANCEL
def DRV_OK           DRVCNF_OK
def DRV_RESTART      DRVCNF_RESTART
dll winmm.dll #CloseDriver hDriver lParam1 lParam2
dll winmm.dll #OpenDriver $szDriverName $szSectionName lParam2
dll winmm.dll #SendDriverMessage hDriver message lParam1 lParam2
dll winmm.dll #DrvGetModuleHandle hDriver
dll winmm.dll #GetDriverModuleHandle hDriver
dll winmm.dll #DefDriverProc dwDriverIdentifier hdrvr uMsg lParam1 lParam2
def DRV_MCI_FIRST    DRV_RESERVED
def DRV_MCI_LAST     (DRV_RESERVED + 0xFFF)
def CALLBACK_TYPEMASK  0x70000
def CALLBACK_NULL    0x0
def CALLBACK_WINDOW  0x10000
def CALLBACK_TASK    0x20000
def CALLBACK_FUNCTION  0x30000
def MM_MICROSOFT     1
def MM_MIDI_MAPPER   1
def MM_WAVE_MAPPER   2
def MM_SNDBLST_MIDIOUT  3
def MM_SNDBLST_MIDIIN  4
def MM_SNDBLST_SYNTH  5
def MM_SNDBLST_WAVEOUT  6
def MM_SNDBLST_WAVEIN  7
def MM_ADLIB         9
def MM_MPU401_MIDIOUT  10
def MM_MPU401_MIDIIN  11
def MM_PC_JOYSTICK   12
dll winmm.dll #mmsystemGetVersion
dll winmm.dll OutputDebugStr $lpszOutputString
dll winmm.dll #sndPlaySound $lpszSoundName uFlags
def SND_SYNC         0x0
def SND_ASYNC        0x1
def SND_NODEFAULT    0x2
def SND_MEMORY       0x4
def SND_ALIAS        0x10000
def SND_FILENAME     0x20000
def SND_RESOURCE     0x40004
def SND_ALIAS_ID     0x110000
def SND_ALIAS_START  0
def SND_LOOP         0x8
def SND_NOSTOP       0x10
def SND_VALID        0x1F
def SND_NOWAIT       0x2000
def SND_VALIDFLAGS   0x17201F
def SND_RESERVED     0xFF000000
def SND_TYPE_MASK    0x170007
dll winmm.dll #PlaySound $lpszName hModule dwFlags
def WAVERR_BADFORMAT  (WAVERR_BASE + 0)
def WAVERR_STILLPLAYING  (WAVERR_BASE + 1)
def WAVERR_UNPREPARED  (WAVERR_BASE + 2)
def WAVERR_SYNC      (WAVERR_BASE + 3)
def WAVERR_LASTERROR  (WAVERR_BASE + 3)
def WOM_OPEN         MM_WOM_OPEN
def WOM_CLOSE        MM_WOM_CLOSE
def WOM_DONE         MM_WOM_DONE
def WIM_OPEN         MM_WIM_OPEN
def WIM_CLOSE        MM_WIM_CLOSE
def WIM_DATA         MM_WIM_DATA
def WAVE_MAPPER      -1
def WAVE_ALLOWSYNC   0x2
def WAVE_VALID       0x3
type WAVEHDR $lpData dwBufferLength dwBytesRecorded dwUser dwFlags dwLoops lpNext Reserved
def WHDR_DONE        0x1
def WHDR_PREPARED    0x2
def WHDR_BEGINLOOP   0x4
def WHDR_ENDLOOP     0x8
def WHDR_INQUEUE     0x10
def WHDR_VALID       0x1F
type WAVEOUTCAPS @wMid @wPid vDriverVersion !szPname[MAXPNAMELEN] dwFormats @wChannels dwSupport
def WAVECAPS_PITCH   0x1
def WAVECAPS_PLAYBACKRATE  0x2
def WAVECAPS_VOLUME  0x4
def WAVECAPS_LRVOLUME  0x8
def WAVECAPS_SYNC    0x10
type WAVEINCAPS @wMid @wPid vDriverVersion !szPname[MAXPNAMELEN] dwFormats @wChannels
def WAVE_INVALIDFORMAT  0x0
def WAVE_FORMAT_1M08  0x1
def WAVE_FORMAT_1S08  0x2
def WAVE_FORMAT_1M16  0x4
def WAVE_FORMAT_1S16  0x8
def WAVE_FORMAT_2M08  0x10
def WAVE_FORMAT_2S08  0x20
def WAVE_FORMAT_2M16  0x40
def WAVE_FORMAT_2S16  0x80
def WAVE_FORMAT_4M08  0x100
def WAVE_FORMAT_4S08  0x200
def WAVE_FORMAT_4M16  0x400
def WAVE_FORMAT_4S16  0x800
def WAVE_FORMAT_PCM  1
type WAVEFORMAT @wFormatTag @nChannels nSamplesPerSec nAvgBytesPerSec @nBlockAlign
type PCMWAVEFORMAT WAVEFORMAT'wf @wBitsPerSample
dll winmm.dll #waveOutGetNumDevs
dll winmm.dll #waveOutGetDevCaps uDeviceID WAVEOUTCAPS*lpCaps uSize
dll winmm.dll #waveOutGetVolume uDeviceID *lpdwVolume
dll winmm.dll #waveOutSetVolume uDeviceID dwVolume
dll winmm.dll #waveOutGetErrorText err $lpText uSize
dll winmm.dll #waveOutOpen *lphWaveOut uDeviceID WAVEFORMAT*lpFormat dwCallback dwInstance dwFlags
dll winmm.dll #waveOutClose hWaveOut
dll winmm.dll #waveOutPrepareHeader hWaveOut WAVEHDR*lpWaveOutHdr uSize
dll winmm.dll #waveOutUnprepareHeader hWaveOut WAVEHDR*lpWaveOutHdr uSize
dll winmm.dll #waveOutWrite hWaveOut WAVEHDR*lpWaveOutHdr uSize
dll winmm.dll #waveOutPause hWaveOut
dll winmm.dll #waveOutRestart hWaveOut
dll winmm.dll #waveOutReset hWaveOut
dll winmm.dll #waveOutBreakLoop hWaveOut
dll winmm.dll #waveOutGetPosition hWaveOut MMTIME*lpInfo uSize
dll winmm.dll #waveOutGetPitch hWaveOut *lpdwPitch
dll winmm.dll #waveOutSetPitch hWaveOut dwPitch
dll winmm.dll #waveOutGetPlaybackRate hWaveOut *lpdwRate
dll winmm.dll #waveOutSetPlaybackRate hWaveOut dwRate
dll winmm.dll #waveOutGetID hWaveOut *lpuDeviceID
dll winmm.dll #waveOutMessage hWaveOut msg dw1 dw2
dll winmm.dll #waveInGetNumDevs
dll winmm.dll #waveInGetDevCaps uDeviceID WAVEINCAPS*lpCaps uSize
dll winmm.dll #waveInGetErrorText err $lpText uSize
dll winmm.dll #waveInOpen *lphWaveIn uDeviceID WAVEFORMAT*lpFormat dwCallback dwInstance dwFlags
dll winmm.dll #waveInClose hWaveIn
dll winmm.dll #waveInPrepareHeader hWaveIn WAVEHDR*lpWaveInHdr uSize
dll winmm.dll #waveInUnprepareHeader hWaveIn WAVEHDR*lpWaveInHdr uSize
dll winmm.dll #waveInAddBuffer hWaveIn WAVEHDR*lpWaveInHdr uSize
dll winmm.dll #waveInStart hWaveIn
dll winmm.dll #waveInStop hWaveIn
dll winmm.dll #waveInReset hWaveIn
dll winmm.dll #waveInGetPosition hWaveIn MMTIME*lpInfo uSize
dll winmm.dll #waveInGetID hWaveIn *lpuDeviceID
dll winmm.dll #waveInMessage hWaveIn msg dw1 dw2
def MIDIERR_UNPREPARED  (MIDIERR_BASE + 0)
def MIDIERR_STILLPLAYING  (MIDIERR_BASE + 1)
def MIDIERR_NOMAP    (MIDIERR_BASE + 2)
def MIDIERR_NOTREADY  (MIDIERR_BASE + 3)
def MIDIERR_NODEVICE  (MIDIERR_BASE + 4)
def MIDIERR_INVALIDSETUP  (MIDIERR_BASE + 5)
def MIDIERR_LASTERROR  (MIDIERR_BASE + 5)
def MIM_OPEN         MM_MIM_OPEN
def MIM_CLOSE        MM_MIM_CLOSE
def MIM_DATA         MM_MIM_DATA
def MIM_LONGDATA     MM_MIM_LONGDATA
def MIM_ERROR        MM_MIM_ERROR
def MIM_LONGERROR    MM_MIM_LONGERROR
def MOM_OPEN         MM_MOM_OPEN
def MOM_CLOSE        MM_MOM_CLOSE
def MOM_DONE         MM_MOM_DONE
def MIDIMAPPER       (-1)
def MIDI_MAPPER      -1
def MIDI_CACHE_ALL   1
def MIDI_CACHE_BESTFIT  2
def MIDI_CACHE_QUERY  3
def MIDI_UNCACHE     4
def MIDI_CACHE_VALID  (MIDI_CACHE_ALL |  MIDI_CACHE_BESTFIT |  MIDI_CACHE_QUERY |  MIDI_UNCACHE)
type MIDIOUTCAPS @wMid @wPid vDriverVersion !szPname[MAXPNAMELEN] @wTechnology @wVoices @wNotes @wChannelMask dwSupport
def MOD_MIDIPORT     1
def MOD_SYNTH        2
def MOD_SQSYNTH      3
def MOD_FMSYNTH      4
def MOD_MAPPER       5
def MIDICAPS_VOLUME  0x1
def MIDICAPS_LRVOLUME  0x2
def MIDICAPS_CACHE   0x4
type MIDIINCAPS @wMid @wPid vDriverVersion !szPname[MAXPNAMELEN]
type MIDIHDR $lpData dwBufferLength dwBytesRecorded dwUser dwFlags lpNext Reserved
def MHDR_DONE        0x1
def MHDR_PREPARED    0x2
def MHDR_INQUEUE     0x4
def MHDR_VALID       0x7
dll winmm.dll #midiOutGetDevCaps uDeviceID MIDIOUTCAPS*lpCaps uSize
dll winmm.dll #midiOutGetVolume uDeviceID *lpdwVolume
dll winmm.dll #midiOutSetVolume uDeviceID dwVolume
dll winmm.dll #midiOutGetErrorText err $lpText uSize
dll winmm.dll #midiOutOpen *lphMidiOut uDeviceID dwCallback dwInstance dwFlags
dll winmm.dll #midiOutClose hMidiOut
dll winmm.dll #midiOutPrepareHeader hMidiOut MIDIHDR*lpMidiOutHdr uSize
dll winmm.dll #midiOutUnprepareHeader hMidiOut MIDIHDR*lpMidiOutHdr uSize
dll winmm.dll #midiOutShortMsg hMidiOut dwMsg
dll winmm.dll #midiOutLongMsg hMidiOut MIDIHDR*lpMidiOutHdr uSize
dll winmm.dll #midiOutReset hMidiOut
dll winmm.dll #midiOutCachePatches hMidiOut uBank *lpPatchArray uFlags
dll winmm.dll #midiOutCacheDrumPatches hMidiOut uPatch *lpKeyArray uFlags
dll winmm.dll #midiOutGetID hMidiOut *lpuDeviceID
dll winmm.dll #midiOutMessage hMidiOut msg dw1 dw2
dll winmm.dll #midiInGetNumDevs
dll winmm.dll #midiInGetDevCaps uDeviceID MIDIINCAPS*lpCaps uSize
dll winmm.dll #midiInGetErrorText err $lpText uSize
dll winmm.dll #midiInOpen *lphMidiIn uDeviceID dwCallback dwInstance dwFlags
dll winmm.dll #midiInClose hMidiIn
dll winmm.dll #midiInPrepareHeader hMidiIn MIDIHDR*lpMidiInHdr uSize
dll winmm.dll #midiInUnprepareHeader hMidiIn MIDIHDR*lpMidiInHdr uSize
dll winmm.dll #midiInAddBuffer hMidiIn MIDIHDR*lpMidiInHdr uSize
dll winmm.dll #midiInStart hMidiIn
dll winmm.dll #midiInStop hMidiIn
dll winmm.dll #midiInReset hMidiIn
dll winmm.dll #midiInGetID hMidiIn *lpuDeviceID
dll winmm.dll #midiInMessage hMidiIn msg dw1 dw2
def AUX_MAPPER       -1
type AUXCAPS @wMid @wPid vDriverVersion !szPname[MAXPNAMELEN] @wTechnology dwSupport
def AUXCAPS_CDAUDIO  1
def AUXCAPS_AUXIN    2
def AUXCAPS_VOLUME   0x1
def AUXCAPS_LRVOLUME  0x2
dll winmm.dll #auxGetNumDevs
dll winmm.dll #auxGetDevCaps uDeviceID AUXCAPS*lpCaps uSize
dll winmm.dll #auxSetVolume uDeviceID dwVolume
dll winmm.dll #auxGetVolume uDeviceID *lpdwVolume
dll winmm.dll #auxOutMessage uDeviceID msg dw1 dw2
def TIMERR_NOERROR   (0)
def TIMERR_NOCANDO   (TIMERR_BASE + 1)
def TIMERR_STRUCT    (TIMERR_BASE + 33)
def TIME_ONESHOT     0
def TIME_PERIODIC    1
type TIMECAPS wPeriodMin wPeriodMax
dll winmm.dll #timeGetSystemTime MMTIME*lpTime uSize
dll winmm.dll #timeGetTime
dll winmm.dll #timeSetEvent uDelay uResolution lpFunction dwUser uFlags
dll winmm.dll #timeKillEvent uID
dll winmm.dll #timeGetDevCaps TIMECAPS*lpTimeCaps uSize
dll winmm.dll #timeBeginPeriod uPeriod
dll winmm.dll #timeEndPeriod uPeriod
def JOYERR_NOERROR   (0)
def JOYERR_PARMS     (JOYERR_BASE + 5)
def JOYERR_NOCANDO   (JOYERR_BASE + 6)
def JOYERR_UNPLUGGED  (JOYERR_BASE + 7)
def JOY_BUTTON1      0x1
def JOY_BUTTON2      0x2
def JOY_BUTTON3      0x4
def JOY_BUTTON4      0x8
def JOY_BUTTON1CHG   0x100
def JOY_BUTTON2CHG   0x200
def JOY_BUTTON3CHG   0x400
def JOY_BUTTON4CHG   0x800
def JOYSTICKID1      0
def JOYSTICKID2      1
type JOYCAPS @wMid @wPid !szPname[MAXPNAMELEN] @wXmin @wXmax @wYmin @wYmax @wZmin @wZmax @wNumButtons @wPeriodMin @wPeriodMax
type JOYINFO @wXpos @wYpos @wZpos @wButtons
dll winmm.dll #joyGetDevCaps id JOYCAPS*lpCaps uSize
dll winmm.dll #joyGetNumDev
dll winmm.dll #joyGetThreshold id *lpuThreshold
dll winmm.dll #joyReleaseCapture id
dll winmm.dll #joySetCapture hWnd uID uPeriod bChanged
dll winmm.dll #joySetThreshold id uThreshold
def MMIOERR_BASE     256
def MMIOERR_FILENOTFOUND  (MMIOERR_BASE + 1)
def MMIOERR_OUTOFMEMORY  (MMIOERR_BASE + 2)
def MMIOERR_CANNOTOPEN  (MMIOERR_BASE + 3)
def MMIOERR_CANNOTCLOSE  (MMIOERR_BASE + 4)
def MMIOERR_CANNOTREAD  (MMIOERR_BASE + 5)
def MMIOERR_CANNOTWRITE  (MMIOERR_BASE + 6)
def MMIOERR_CANNOTSEEK  (MMIOERR_BASE + 7)
def MMIOERR_CANNOTEXPAND  (MMIOERR_BASE + 8)
def MMIOERR_CHUNKNOTFOUND  (MMIOERR_BASE + 9)
def MMIOERR_UNBUFFERED  (MMIOERR_BASE + 10)
def CFSEPCHAR        "+"
type MMIOINFO dwFlags fccIOProc pIOProc wErrorRet htask cchBuffer $pchBuffer $pchNext $pchEndRead $pchEndWrite lBufOffset lDiskOffset adwInfo[4] dwReserved1 dwReserved2 hmmio
def MMIO_RWMODE      0x3
def MMIO_SHAREMODE   0x70
def MMIO_CREATE      0x1000
def MMIO_PARSE       0x100
def MMIO_DELETE      0x200
def MMIO_EXIST       0x4000
def MMIO_ALLOCBUF    0x10000
def MMIO_GETTEMP     0x20000
def MMIO_DIRTY       0x10000000
def MMIO_OPEN_VALID  0x3FFFF
def MMIO_READ        0x0
def MMIO_WRITE       0x1
def MMIO_READWRITE   0x2
def MMIO_COMPAT      0x0
def MMIO_EXCLUSIVE   0x10
def MMIO_DENYWRITE   0x20
def MMIO_DENYREAD    0x30
def MMIO_DENYNONE    0x40
def MMIO_FHOPEN      0x10
def MMIO_EMPTYBUF    0x10
def MMIO_TOUPPER     0x10
def MMIO_INSTALLPROC  0x10000
def MMIO_PUBLICPROC  0x10000000
def MMIO_UNICODEPROC  0x1000000
def MMIO_REMOVEPROC  0x20000
def MMIO_FINDPROC    0x40000
def MMIO_FINDCHUNK   0x10
def MMIO_FINDRIFF    0x20
def MMIO_FINDLIST    0x40
def MMIO_CREATERIFF  0x20
def MMIO_CREATELIST  0x40
def MMIO_VALIDPROC   0x11070000
def MMIOM_READ       MMIO_READ
def MMIOM_WRITE      MMIO_WRITE
def MMIOM_SEEK       2
def MMIOM_OPEN       3
def MMIOM_CLOSE      4
def MMIOM_WRITEFLUSH  5
def MMIOM_RENAME     6
def MMIOM_USER       0x8000
def SEEK_SET         0
def SEEK_CUR         1
def SEEK_END         2
def MMIO_DEFAULTBUFFER  8192
type MMCKINFO ckid ckSize fccType dwDataOffset dwFlags
dll winmm.dll #mmioStringToFOURCC $sz uFlags
dll winmm.dll #mmioOpen $szFileName MMIOINFO*lpmmioinfo dwOpenFlags
dll winmm.dll #mmioRename $szFileName $SzNewFileName MMIOINFO*lpmmioinfo dwRenameFlags
dll winmm.dll #mmioClose hmmio uFlags
dll winmm.dll #mmioRead hmmio $pch cch
dll winmm.dll #mmioWrite hmmio $pch cch
dll winmm.dll #mmioSeek hmmio lOffset iOrigin
dll winmm.dll #mmioGetInfo hmmio MMIOINFO*lpmmioinfo uFlags
dll winmm.dll #mmioSetInfo hmmio MMIOINFO*lpmmioinfo uFlags
dll winmm.dll #mmioSetBuffer hmmio $pchBuffer cchBuffer uFlags
dll winmm.dll #mmioFlush hmmio uFlags
dll winmm.dll #mmioAdvance hmmio MMIOINFO*lpmmioinfo uFlags
dll winmm.dll #mmioSendMessage hmmio uMsg lParam1 lParam2
dll winmm.dll #mmioDescend hmmio MMCKINFO*lpck MMCKINFO*lpckParent uFlags
dll winmm.dll #mmioAscend hmmio MMCKINFO*lpck uFlags
dll winmm.dll #mmioCreateChunk hmmio MMCKINFO*lpck uFlags
dll winmm.dll #mciSendCommand wDeviceID uMessage dwParam1 dwParam2
dll winmm.dll #mciSendString $lpstrCommand $lpstrReturnString uReturnLength hWndCallback
dll winmm.dll #mciGetCreatorTask wDeviceID
dll winmm.dll #mciGetDeviceID $lpstrName
dll winmm.dll #mciGetDeviceIDFromElementID dwElementID $lpstrType
dll winmm.dll #mciGetErrorString dwError $lpstrBuffer uLength
dll winmm.dll #mciExecute $lpstrCommand
def MCIERR_INVALID_DEVICE_ID  (MCIERR_BASE + 1)
def MCIERR_UNRECOGNIZED_KEYWORD  (MCIERR_BASE + 3)
def MCIERR_UNRECOGNIZED_COMMAND  (MCIERR_BASE + 5)
def MCIERR_HARDWARE  (MCIERR_BASE + 6)
def MCIERR_INVALID_DEVICE_NAME  (MCIERR_BASE + 7)
def MCIERR_OUT_OF_MEMORY  (MCIERR_BASE + 8)
def MCIERR_DEVICE_OPEN  (MCIERR_BASE + 9)
def MCIERR_CANNOT_LOAD_DRIVER  (MCIERR_BASE + 10)
def MCIERR_MISSING_COMMAND_STRING  (MCIERR_BASE + 11)
def MCIERR_PARAM_OVERFLOW  (MCIERR_BASE + 12)
def MCIERR_MISSING_STRING_ARGUMENT  (MCIERR_BASE + 13)
def MCIERR_BAD_INTEGER  (MCIERR_BASE + 14)
def MCIERR_PARSER_INTERNAL  (MCIERR_BASE + 15)
def MCIERR_DRIVER_INTERNAL  (MCIERR_BASE + 16)
def MCIERR_MISSING_PARAMETER  (MCIERR_BASE + 17)
def MCIERR_UNSUPPORTED_FUNCTION  (MCIERR_BASE + 18)
def MCIERR_FILE_NOT_FOUND  (MCIERR_BASE + 19)
def MCIERR_DEVICE_NOT_READY  (MCIERR_BASE + 20)
def MCIERR_INTERNAL  (MCIERR_BASE + 21)
def MCIERR_DRIVER    (MCIERR_BASE + 22)
def MCIERR_CANNOT_USE_ALL  (MCIERR_BASE + 23)
def MCIERR_MULTIPLE  (MCIERR_BASE + 24)
def MCIERR_EXTENSION_NOT_FOUND  (MCIERR_BASE + 25)
def MCIERR_OUTOFRANGE  (MCIERR_BASE + 26)
def MCIERR_FLAGS_NOT_COMPATIBLE  (MCIERR_BASE + 28)
def MCIERR_FILE_NOT_SAVED  (MCIERR_BASE + 30)
def MCIERR_DEVICE_TYPE_REQUIRED  (MCIERR_BASE + 31)
def MCIERR_DEVICE_LOCKED  (MCIERR_BASE + 32)
def MCIERR_DUPLICATE_ALIAS  (MCIERR_BASE + 33)
def MCIERR_BAD_CONSTANT  (MCIERR_BASE + 34)
def MCIERR_MUST_USE_SHAREABLE  (MCIERR_BASE + 35)
def MCIERR_MISSING_DEVICE_NAME  (MCIERR_BASE + 36)
def MCIERR_BAD_TIME_FORMAT  (MCIERR_BASE + 37)
def MCIERR_NO_CLOSING_QUOTE  (MCIERR_BASE + 38)
def MCIERR_DUPLICATE_FLAGS  (MCIERR_BASE + 39)
def MCIERR_INVALID_FILE  (MCIERR_BASE + 40)
def MCIERR_NULL_PARAMETER_BLOCK  (MCIERR_BASE + 41)
def MCIERR_UNNAMED_RESOURCE  (MCIERR_BASE + 42)
def MCIERR_NEW_REQUIRES_ALIAS  (MCIERR_BASE + 43)
def MCIERR_NOTIFY_ON_AUTO_OPEN  (MCIERR_BASE + 44)
def MCIERR_NO_ELEMENT_ALLOWED  (MCIERR_BASE + 45)
def MCIERR_NONAPPLICABLE_FUNCTION  (MCIERR_BASE + 46)
def MCIERR_ILLEGAL_FOR_AUTO_OPEN  (MCIERR_BASE + 47)
def MCIERR_FILENAME_REQUIRED  (MCIERR_BASE + 48)
def MCIERR_EXTRA_CHARACTERS  (MCIERR_BASE + 49)
def MCIERR_DEVICE_NOT_INSTALLED  (MCIERR_BASE + 50)
def MCIERR_GET_CD    (MCIERR_BASE + 51)
def MCIERR_SET_CD    (MCIERR_BASE + 52)
def MCIERR_SET_DRIVE  (MCIERR_BASE + 53)
def MCIERR_DEVICE_LENGTH  (MCIERR_BASE + 54)
def MCIERR_DEVICE_ORD_LENGTH  (MCIERR_BASE + 55)
def MCIERR_NO_INTEGER  (MCIERR_BASE + 56)
def MCIERR_WAVE_OUTPUTSINUSE  (MCIERR_BASE + 64)
def MCIERR_WAVE_SETOUTPUTINUSE  (MCIERR_BASE + 65)
def MCIERR_WAVE_INPUTSINUSE  (MCIERR_BASE + 66)
def MCIERR_WAVE_SETINPUTINUSE  (MCIERR_BASE + 67)
def MCIERR_WAVE_OUTPUTUNSPECIFIED  (MCIERR_BASE + 68)
def MCIERR_WAVE_INPUTUNSPECIFIED  (MCIERR_BASE + 69)
def MCIERR_WAVE_OUTPUTSUNSUITABLE  (MCIERR_BASE + 70)
def MCIERR_WAVE_SETOUTPUTUNSUITABLE  (MCIERR_BASE + 71)
def MCIERR_WAVE_INPUTSUNSUITABLE  (MCIERR_BASE + 72)
def MCIERR_WAVE_SETINPUTUNSUITABLE  (MCIERR_BASE + 73)
def MCIERR_SEQ_DIV_INCOMPATIBLE  (MCIERR_BASE + 80)
def MCIERR_SEQ_PORT_INUSE  (MCIERR_BASE + 81)
def MCIERR_SEQ_PORT_NONEXISTENT  (MCIERR_BASE + 82)
def MCIERR_SEQ_PORT_MAPNODEVICE  (MCIERR_BASE + 83)
def MCIERR_SEQ_PORT_MISCERROR  (MCIERR_BASE + 84)
def MCIERR_SEQ_TIMER  (MCIERR_BASE + 85)
def MCIERR_SEQ_PORTUNSPECIFIED  (MCIERR_BASE + 86)
def MCIERR_SEQ_NOMIDIPRESENT  (MCIERR_BASE + 87)
def MCIERR_NO_WINDOW  (MCIERR_BASE + 90)
def MCIERR_CREATEWINDOW  (MCIERR_BASE + 91)
def MCIERR_FILE_READ  (MCIERR_BASE + 92)
def MCIERR_FILE_WRITE  (MCIERR_BASE + 93)
def MCIERR_CUSTOM_DRIVER_BASE  (MCIERR_BASE + 256)
def MCI_FIRST        0x800
def MCI_OPEN         0x803
def MCI_CLOSE        0x804
def MCI_ESCAPE       0x805
def MCI_PLAY         0x806
def MCI_SEEK         0x807
def MCI_STOP         0x808
def MCI_PAUSE        0x809
def MCI_INFO         0x80A
def MCI_GETDEVCAPS   0x80B
def MCI_SPIN         0x80C
def MCI_SET          0x80D
def MCI_STEP         0x80E
def MCI_RECORD       0x80F
def MCI_SYSINFO      0x810
def MCI_BREAK        0x811
def MCI_SOUND        0x812
def MCI_SAVE         0x813
def MCI_STATUS       0x814
def MCI_CUE          0x830
def MCI_REALIZE      0x840
def MCI_WINDOW       0x841
def MCI_PUT          0x842
def MCI_WHERE        0x843
def MCI_FREEZE       0x844
def MCI_UNFREEZE     0x845
def MCI_LOAD         0x850
def MCI_CUT          0x851
def MCI_COPY         0x852
def MCI_PASTE        0x853
def MCI_UPDATE       0x854
def MCI_RESUME       0x855
def MCI_DELETE       0x856
def MCI_LAST         0xFFF
def MCI_USER_MESSAGES  (0x400 + MCI_FIRST)
def MCI_ALL_DEVICE_ID  (- 1)
def MCI_DEVTYPE_VCR  513
def MCI_DEVTYPE_VIDEODISC  514
def MCI_DEVTYPE_OVERLAY  515
def MCI_DEVTYPE_CD_AUDIO  516
def MCI_DEVTYPE_DAT  517
def MCI_DEVTYPE_SCANNER  518
def MCI_DEVTYPE_ANIMATION  519
def MCI_DEVTYPE_DIGITAL_VIDEO  520
def MCI_DEVTYPE_OTHER  521
def MCI_DEVTYPE_WAVEFORM_AUDIO  522
def MCI_DEVTYPE_SEQUENCER  523
def MCI_DEVTYPE_FIRST  MCI_DEVTYPE_VCR
def MCI_DEVTYPE_LAST  MCI_DEVTYPE_SEQUENCER
def MCI_DEVTYPE_FIRST_USER  0x1000
def MCI_MODE_NOT_READY  (MCI_STRING_OFFSET + 12)
def MCI_MODE_STOP    (MCI_STRING_OFFSET + 13)
def MCI_MODE_PLAY    (MCI_STRING_OFFSET + 14)
def MCI_MODE_RECORD  (MCI_STRING_OFFSET + 15)
def MCI_MODE_SEEK    (MCI_STRING_OFFSET + 16)
def MCI_MODE_PAUSE   (MCI_STRING_OFFSET + 17)
def MCI_MODE_OPEN    (MCI_STRING_OFFSET + 18)
def MCI_FORMAT_MILLISECONDS  0
def MCI_FORMAT_HMS   1
def MCI_FORMAT_MSF   2
def MCI_FORMAT_FRAMES  3
def MCI_FORMAT_SMPTE_24  4
def MCI_FORMAT_SMPTE_25  5
def MCI_FORMAT_SMPTE_30  6
def MCI_FORMAT_SMPTE_30DROP  7
def MCI_FORMAT_BYTES  8
def MCI_FORMAT_SAMPLES  9
def MCI_FORMAT_TMSF  10
def MCI_NOTIFY_SUCCESSFUL  0x1
def MCI_NOTIFY_SUPERSEDED  0x2
def MCI_NOTIFY_ABORTED  0x4
def MCI_NOTIFY_FAILURE  0x8
def MCI_NOTIFY       0x1
def MCI_WAIT         0x2
def MCI_FROM         0x4
def MCI_TO           0x8
def MCI_TRACK        0x10
def MCI_OPEN_SHAREABLE  0x100
def MCI_OPEN_ELEMENT  0x200
def MCI_OPEN_ALIAS   0x400
def MCI_OPEN_ELEMENT_ID  0x800
def MCI_OPEN_TYPE_ID  0x1000
def MCI_OPEN_TYPE    0x2000
def MCI_SEEK_TO_START  0x100
def MCI_SEEK_TO_END  0x200
def MCI_STATUS_ITEM  0x100
def MCI_STATUS_START  0x200
def MCI_STATUS_LENGTH  0x1
def MCI_STATUS_POSITION  0x2
def MCI_STATUS_NUMBER_OF_TRACKS  0x3
def MCI_STATUS_MODE  0x4
def MCI_STATUS_MEDIA_PRESENT  0x5
def MCI_STATUS_TIME_FORMAT  0x6
def MCI_STATUS_READY  0x7
def MCI_STATUS_CURRENT_TRACK  0x8
def MCI_INFO_PRODUCT  0x100
def MCI_INFO_FILE    0x200
def MCI_GETDEVCAPS_ITEM  0x100
def MCI_GETDEVCAPS_CAN_RECORD  0x1
def MCI_GETDEVCAPS_HAS_AUDIO  0x2
def MCI_GETDEVCAPS_HAS_VIDEO  0x3
def MCI_GETDEVCAPS_DEVICE_TYPE  0x4
def MCI_GETDEVCAPS_USES_FILES  0x5
def MCI_GETDEVCAPS_COMPOUND_DEVICE  0x6
def MCI_GETDEVCAPS_CAN_EJECT  0x7
def MCI_GETDEVCAPS_CAN_PLAY  0x8
def MCI_GETDEVCAPS_CAN_SAVE  0x9
def MCI_SYSINFO_QUANTITY  0x100
def MCI_SYSINFO_OPEN  0x200
def MCI_SYSINFO_NAME  0x400
def MCI_SYSINFO_INSTALLNAME  0x800
def MCI_SET_DOOR_OPEN  0x100
def MCI_SET_DOOR_CLOSED  0x200
def MCI_SET_TIME_FORMAT  0x400
def MCI_SET_AUDIO    0x800
def MCI_SET_VIDEO    0x1000
def MCI_SET_ON       0x2000
def MCI_SET_OFF      0x4000
def MCI_SET_AUDIO_ALL  0x4001
def MCI_SET_AUDIO_LEFT  0x4002
def MCI_SET_AUDIO_RIGHT  0x4003
def MCI_BREAK_KEY    0x100
def MCI_BREAK_HWND   0x200
def MCI_BREAK_OFF    0x400
def MCI_RECORD_INSERT  0x100
def MCI_RECORD_OVERWRITE  0x200
def MCI_SOUND_NAME   0x100
def MCI_SAVE_FILE    0x100
def MCI_LOAD_FILE    0x100
type MCI_GENERIC_PARMS dwCallback
type MCI_OPEN_PARMS dwCallback wDeviceID $lpstrDeviceType $lpstrElementName $lpstrAlias
type MCI_PLAY_PARMS dwCallback dwFrom dwTo
type MCI_SEEK_PARMS dwCallback dwTo
type MCI_STATUS_PARMS dwCallback dwReturn dwItem @dwTrack
type MCI_INFO_PARMS dwCallback $lpstrReturn dwRetSize
type MCI_GETDEVCAPS_PARMS dwCallback dwReturn dwIten
type MCI_SYSINFO_PARMS dwCallback $lpstrReturn dwRetSize dwNumber wDeviceType
type MCI_SET_PARMS dwCallback dwTimeFormat dwAudio
type MCI_BREAK_PARMS dwCallback nVirtKey hWndBreak
type MCI_SOUND_PARMS dwCallback $lpstrSoundName
type MCI_SAVE_PARMS dwCallback $lpFileName
type MCI_LOAD_PARMS dwCallback $lpFileName
type MCI_RECORD_PARMS dwCallback dwFrom dwTo
def MCI_VD_MODE_PARK  (MCI_VD_OFFSET + 1)
def MCI_VD_MEDIA_CLV  (MCI_VD_OFFSET + 2)
def MCI_VD_MEDIA_CAV  (MCI_VD_OFFSET + 3)
def MCI_VD_MEDIA_OTHER  (MCI_VD_OFFSET + 4)
def MCI_VD_FORMAT_TRACK  0x4001
def MCI_VD_PLAY_REVERSE  0x10000
def MCI_VD_PLAY_FAST  0x20000
def MCI_VD_PLAY_SPEED  0x40000
def MCI_VD_PLAY_SCAN  0x80000
def MCI_VD_PLAY_SLOW  0x100000
def MCI_VD_SEEK_REVERSE  0x10000
def MCI_VD_STATUS_SPEED  0x4002
def MCI_VD_STATUS_FORWARD  0x4003
def MCI_VD_STATUS_MEDIA_TYPE  0x4004
def MCI_VD_STATUS_SIDE  0x4005
def MCI_VD_STATUS_DISC_SIZE  0x4006
def MCI_VD_GETDEVCAPS_CLV  0x10000
def MCI_VD_GETDEVCAPS_CAV  0x20000
def MCI_VD_SPIN_UP   0x10000
def MCI_VD_SPIN_DOWN  0x20000
def MCI_VD_GETDEVCAPS_CAN_REVERSE  0x4002
def MCI_VD_GETDEVCAPS_FAST_RATE  0x4003
def MCI_VD_GETDEVCAPS_SLOW_RATE  0x4004
def MCI_VD_GETDEVCAPS_NORMAL_RATE  0x4005
def MCI_VD_STEP_FRAMES  0x10000
def MCI_VD_STEP_REVERSE  0x20000
def MCI_VD_ESCAPE_STRING  0x100
type MCI_VD_PLAY_PARMS dwCallback dwFrom dwTo dwSpeed
type MCI_VD_STEP_PARMS dwCallback dwFrames
type MCI_VD_ESCAPE_PARMS dwCallback $lpstrCommand
def MCI_WAVE_PCM     (MCI_WAVE_OFFSET + 0)
def MCI_WAVE_MAPPER  (MCI_WAVE_OFFSET + 1)
def MCI_WAVE_OPEN_BUFFER  0x10000
def MCI_WAVE_SET_FORMATTAG  0x10000
def MCI_WAVE_SET_CHANNELS  0x20000
def MCI_WAVE_SET_SAMPLESPERSEC  0x40000
def MCI_WAVE_SET_AVGBYTESPERSEC  0x80000
def MCI_WAVE_SET_BLOCKALIGN  0x100000
def MCI_WAVE_SET_BITSPERSAMPLE  0x200000
def MCI_WAVE_INPUT   0x400000
def MCI_WAVE_OUTPUT  0x800000
def MCI_WAVE_STATUS_FORMATTAG  0x4001
def MCI_WAVE_STATUS_CHANNELS  0x4002
def MCI_WAVE_STATUS_SAMPLESPERSEC  0x4003
def MCI_WAVE_STATUS_AVGBYTESPERSEC  0x4004
def MCI_WAVE_STATUS_BLOCKALIGN  0x4005
def MCI_WAVE_STATUS_BITSPERSAMPLE  0x4006
def MCI_WAVE_STATUS_LEVEL  0x4007
def MCI_WAVE_SET_ANYINPUT  0x4000000
def MCI_WAVE_SET_ANYOUTPUT  0x8000000
def MCI_WAVE_GETDEVCAPS_INPUTS  0x4001
def MCI_WAVE_GETDEVCAPS_OUTPUTS  0x4002
type MCI_WAVE_OPEN_PARMS dwCallback wDeviceID $lpstrDeviceType $lpstrElementName $lpstrAlias dwBufferSeconds
type MCI_WAVE_DELETE_PARMS dwCallback dwFrom dwTo
type MCI_WAVE_SET_PARMS dwCallback dwTimeFormat dwAudio wInput wOutput @wFormatTag @wReserved2 @nChannels @wReserved3 nSamplesPerSec nAvgBytesPerSec @nBlockAlign @wReserved4 @wBitsPerSample @wReserved5
def MCI_SEQ_DIV_PPQN  (0 + MCI_SEQ_OFFSET)
def MCI_SEQ_DIV_SMPTE_24  (1 + MCI_SEQ_OFFSET)
def MCI_SEQ_DIV_SMPTE_25  (2 + MCI_SEQ_OFFSET)
def MCI_SEQ_DIV_SMPTE_30DROP  (3 + MCI_SEQ_OFFSET)
def MCI_SEQ_DIV_SMPTE_30  (4 + MCI_SEQ_OFFSET)
def MCI_SEQ_FORMAT_SONGPTR  0x4001
def MCI_SEQ_FILE     0x4002
def MCI_SEQ_MIDI     0x4003
def MCI_SEQ_SMPTE    0x4004
def MCI_SEQ_NONE     65533
def MCI_SEQ_MAPPER   65535
def MCI_SEQ_STATUS_TEMPO  0x4002
def MCI_SEQ_STATUS_PORT  0x4003
def MCI_SEQ_STATUS_SLAVE  0x4007
def MCI_SEQ_STATUS_MASTER  0x4008
def MCI_SEQ_STATUS_OFFSET  0x4009
def MCI_SEQ_STATUS_DIVTYPE  0x400A
def MCI_SEQ_SET_TEMPO  0x10000
def MCI_SEQ_SET_PORT  0x20000
def MCI_SEQ_SET_SLAVE  0x40000
def MCI_SEQ_SET_MASTER  0x80000
def MCI_SEQ_SET_OFFSET  0x1000000
type MCI_SEQ_SET_PARMS dwCallback dwTimeFormat dwAudio dwTempo dwPort dwSlave dwMaster dwOffset
def MCI_ANIM_OPEN_WS  0x10000
def MCI_ANIM_OPEN_PARENT  0x20000
def MCI_ANIM_OPEN_NOSTATIC  0x40000
def MCI_ANIM_PLAY_SPEED  0x10000
def MCI_ANIM_PLAY_REVERSE  0x20000
def MCI_ANIM_PLAY_FAST  0x40000
def MCI_ANIM_PLAY_SLOW  0x80000
def MCI_ANIM_PLAY_SCAN  0x100000
def MCI_ANIM_STEP_REVERSE  0x10000
def MCI_ANIM_STEP_FRAMES  0x20000
def MCI_ANIM_STATUS_SPEED  0x4001
def MCI_ANIM_STATUS_FORWARD  0x4002
def MCI_ANIM_STATUS_HWND  0x4003
def MCI_ANIM_STATUS_HPAL  0x4004
def MCI_ANIM_STATUS_STRETCH  0x4005
def MCI_ANIM_INFO_TEXT  0x10000
def MCI_ANIM_GETDEVCAPS_CAN_REVERSE  0x4001
def MCI_ANIM_GETDEVCAPS_FAST_RATE  0x4002
def MCI_ANIM_GETDEVCAPS_SLOW_RATE  0x4003
def MCI_ANIM_GETDEVCAPS_NORMAL_RATE  0x4004
def MCI_ANIM_GETDEVCAPS_PALETTES  0x4006
def MCI_ANIM_GETDEVCAPS_CAN_STRETCH  0x4007
def MCI_ANIM_GETDEVCAPS_MAX_WINDOWS  0x4008
def MCI_ANIM_REALIZE_NORM  0x10000
def MCI_ANIM_REALIZE_BKGD  0x20000
def MCI_ANIM_WINDOW_HWND  0x10000
def MCI_ANIM_WINDOW_STATE  0x40000
def MCI_ANIM_WINDOW_TEXT  0x80000
def MCI_ANIM_WINDOW_ENABLE_STRETCH  0x100000
def MCI_ANIM_WINDOW_DISABLE_STRETCH  0x200000
def MCI_ANIM_WINDOW_DEFAULT  0x0
def MCI_ANIM_RECT    0x10000
def MCI_ANIM_PUT_SOURCE  0x20000
def MCI_ANIM_PUT_DESTINATION  0x40000
def MCI_ANIM_WHERE_SOURCE  0x20000
def MCI_ANIM_WHERE_DESTINATION  0x40000
def MCI_ANIM_UPDATE_hDC  0x20000
type MCI_ANIM_OPEN_PARMS dwCallback wDeviceID $lpstrDeviceType $lpstrElementName $lpstrAlias dwStyle hWndParent
type MCI_ANIM_PLAY_PARMS dwCallback dwFrom dwTo dwSpeed
type MCI_ANIM_STEP_PARMS dwCallback dwFrames
type MCI_ANIM_WINDOW_PARMS dwCallback hWnd nCmdShow $lpstrText
type MCI_ANIM_RECT_PARMS dwCallback RECT'rc
type MCI_ANIM_UPDATE_PARMS dwCallback RECT'rc hDC
def MCI_OVLY_OPEN_WS  0x10000
def MCI_OVLY_OPEN_PARENT  0x20000
def MCI_OVLY_STATUS_HWND  0x4001
def MCI_OVLY_STATUS_STRETCH  0x4002
def MCI_OVLY_INFO_TEXT  0x10000
def MCI_OVLY_GETDEVCAPS_CAN_STRETCH  0x4001
def MCI_OVLY_GETDEVCAPS_CAN_FREEZE  0x4002
def MCI_OVLY_GETDEVCAPS_MAX_WINDOWS  0x4003
def MCI_OVLY_WINDOW_HWND  0x10000
def MCI_OVLY_WINDOW_STATE  0x40000
def MCI_OVLY_WINDOW_TEXT  0x80000
def MCI_OVLY_WINDOW_ENABLE_STRETCH  0x100000
def MCI_OVLY_WINDOW_DISABLE_STRETCH  0x200000
def MCI_OVLY_WINDOW_DEFAULT  0x0
def MCI_OVLY_RECT    0x10000
def MCI_OVLY_PUT_SOURCE  0x20000
def MCI_OVLY_PUT_DESTINATION  0x40000
def MCI_OVLY_PUT_FRAME  0x80000
def MCI_OVLY_PUT_VIDEO  0x100000
def MCI_OVLY_WHERE_SOURCE  0x20000
def MCI_OVLY_WHERE_DESTINATION  0x40000
def MCI_OVLY_WHERE_FRAME  0x80000
def MCI_OVLY_WHERE_VIDEO  0x100000
type MCI_OVLY_OPEN_PARMS dwCallback wDeviceID $lpstrDeviceType $lpstrElementName $lpstrAlias dwStyle hWndParent
type MCI_OVLY_WINDOW_PARMS dwCallback hWnd nCmdShow $lpstrText
type MCI_OVLY_RECT_PARMS dwCallback RECT'rc
type MCI_OVLY_SAVE_PARMS dwCallback $lpFileName RECT'rc
type MCI_OVLY_LOAD_PARMS dwCallback $lpFileName RECT'rc
def CAPS1            94
def C1_TRANSPARENT   0x1
def NEWTRANSPARENT   3
def QUERYROPSUPPORT  40
def SELECTDIB        41
def SE_ERR_SHARE     26
def SE_ERR_ASSOCINCOMPLETE  27
def SE_ERR_DDETIMEOUT  28
def SE_ERR_DDEFAIL   29
def SE_ERR_DDEBUSY   30
def SE_ERR_NOASSOC   31
type PRINTER_INFO_1 flags $pDescription $pName $pComment
type PRINTER_INFO_2 $pServerName $pPrinterName $pShareName $pPortName $pDriverName $pComment $pLocation DEVMODE'pDevMode $pSepFile $pPrintProcessor $pDatatype $pParameters SECURITY_DESCRIPTOR'pSecurityDescriptor Attributes Priority DefaultPriority StartTime UntilTime Status cJobs AveragePPM
type PRINTER_INFO_3 SECURITY_DESCRIPTOR'pSecurityDescriptor
def PRINTER_CONTROL_PAUSE  1
def PRINTER_CONTROL_RESUME  2
def PRINTER_CONTROL_PURGE  3
def PRINTER_STATUS_PAUSED  0x1
def PRINTER_STATUS_ERROR  0x2
def PRINTER_STATUS_PENDING_DELETION  0x4
def PRINTER_STATUS_PAPER_JAM  0x8
def PRINTER_STATUS_PAPER_OUT  0x10
def PRINTER_STATUS_MANUAL_FEED  0x20
def PRINTER_STATUS_PAPER_PROBLEM  0x40
def PRINTER_STATUS_OFFLINE  0x80
def PRINTER_STATUS_IO_ACTIVE  0x100
def PRINTER_STATUS_BUSY  0x200
def PRINTER_STATUS_PRINTING  0x400
def PRINTER_STATUS_OUTPUT_BIN_FULL  0x800
def PRINTER_STATUS_NOT_AVAILABLE  0x1000
def PRINTER_STATUS_WAITING  0x2000
def PRINTER_STATUS_PROCESSING  0x4000
def PRINTER_STATUS_INITIALIZING  0x8000
def PRINTER_STATUS_WARMING_UP  0x10000
def PRINTER_STATUS_TONER_LOW  0x20000
def PRINTER_STATUS_NO_TONER  0x40000
def PRINTER_STATUS_PAGE_PUNT  0x80000
def PRINTER_STATUS_USER_INTERVENTION  0x100000
def PRINTER_STATUS_OUT_OF_MEMORY  0x200000
def PRINTER_STATUS_DOOR_OPEN  0x400000
def PRINTER_ATTRIBUTE_QUEUED  0x1
def PRINTER_ATTRIBUTE_DIRECT  0x2
def PRINTER_ATTRIBUTE_DEFAULT  0x4
def PRINTER_ATTRIBUTE_SHARED  0x8
def PRINTER_ATTRIBUTE_NETWORK  0x10
def PRINTER_ATTRIBUTE_HIDDEN  0x20
def PRINTER_ATTRIBUTE_LOCAL  0x40
def NO_PRIORITY      0
def MAX_PRIORITY     99
def MIN_PRIORITY     1
def DEF_PRIORITY     1
type JOB_INFO_1 JobId $pPrinterName $pMachineName $pUserName $pDocument $pDatatype $pStatus Status Priority Position TotalPages PagesPrinted SYSTEMTIME'Submitted
type JOB_INFO_2 JobId $pPrinterName $pMachineName $pUserName $pDocument $pNotifyName $pDatatype $pPrintProcessor $pParameters $pDriverName DEVMODE'pDevMode $pStatus SECURITY_DESCRIPTOR'pSecurityDescriptor Status Priority Position StartTime UntilTime TotalPages Size SYSTEMTIME'Submitted time PagesPrinted
def JOB_CONTROL_PAUSE  1
def JOB_CONTROL_RESUME  2
def JOB_CONTROL_CANCEL  3
def JOB_CONTROL_RESTART  4
def JOB_STATUS_PAUSED  0x1
def JOB_STATUS_ERROR  0x2
def JOB_STATUS_DELETING  0x4
def JOB_STATUS_SPOOLING  0x8
def JOB_STATUS_PRINTING  0x10
def JOB_STATUS_OFFLINE  0x20
def JOB_STATUS_PAPEROUT  0x40
def JOB_STATUS_PRINTED  0x80
def JOB_POSITION_UNSPECIFIED  0
type ADDJOB_INFO_1 $Path JobId
type DRIVER_INFO_1 $pName
type DRIVER_INFO_2 cVersion $pName $pEnvironment $pDriverPath $pDataFile $pConfigFile
type DOC_INFO_1 $pDocName $pOutputFile $pDatatype
type FORM_INFO_1 $pName SIZEL'Size RECTL'ImageableArea
def FORM_BUILTIN     0x1
type PRINTPROCESSOR_INFO_1 $pName
type PORT_INFO_1 $pName
type MONITOR_INFO_1 $pName
type MONITOR_INFO_2 $pName $pEnvironment $pDLLName
type DATATYPES_INFO_1 $pName
type PRINTER_DEFAULTS $pDatatype DEVMODE'pDevMode DesiredAccess
type PRINTER_INFO_4 $pPrinterName $pServerName Attributes
type PRINTER_INFO_5 $pPrinterName $pPortName Attributes DeviceNotSelectedTimeout TransmissionRetryTimeout
def PRINTER_CONTROL_SET_STATUS  4
def PRINTER_ATTRIBUTE_WORK_OFFLINE  0x400
def PRINTER_ATTRIBUTE_ENABLE_BIDI  0x800
def JOB_CONTROL_DELETE  5
def JOB_STATUS_USER_INTERVENTION  0x10000
type DRIVER_INFO_3 cVersion $pName $pEnvironment $pDriverPath $pDataFile $pConfigFile $pHelpFile $pDependentFiles $pMonitorName $pDefaultDataType
type DOC_INFO_2 $pDocName $pOutputFile $pDatatype dwMode JobId
def DI_CHANNEL       1
def DI_READ_SPOOL_JOB  3
type PORT_INFO_2 $pPortName $pMonitorName $pDescription fPortType Reserved
def PORT_TYPE_WRITE  0x1
def PORT_TYPE_READ   0x2
def PORT_TYPE_REDIRECTED  0x4
def PORT_TYPE_NET_ATTACHED  0x8
dll winspool.drv #EnumPrinters flags $name Level !*pPrinterEnum cdBuf *pcbNeeded *pcReturned
dll winspool.drv #EnumPrinterPropertySheets *hPrinter *hWnd *lpfnAdd lParam
def PRINTER_ENUM_DEFAULT  0x1
def PRINTER_ENUM_LOCAL  0x2
def PRINTER_ENUM_CONNECTIONS  0x4
def PRINTER_ENUM_FAVORITE  0x4
def PRINTER_ENUM_NAME  0x8
def PRINTER_ENUM_REMOTE  0x10
def PRINTER_ENUM_SHARED  0x20
def PRINTER_ENUM_NETWORK  0x40
def PRINTER_ENUM_EXPAND  0x4000
def PRINTER_ENUM_CONTAINER  0x8000
def PRINTER_ENUM_ICONMASK  0xFF0000
def PRINTER_ENUM_ICON1  0x10000
def PRINTER_ENUM_ICON2  0x20000
def PRINTER_ENUM_ICON3  0x40000
def PRINTER_ENUM_ICON4  0x80000
def PRINTER_ENUM_ICON5  0x100000
def PRINTER_ENUM_ICON6  0x200000
def PRINTER_ENUM_ICON7  0x400000
def PRINTER_ENUM_ICON8  0x800000
dll winspool.drv #OpenPrinter $pPrinterName *phPrinter PRINTER_DEFAULTS*pDefault
dll winspool.drv #ResetPrinter hPrinter PRINTER_DEFAULTS*pDefault
dll winspool.drv #SetJob hPrinter JobId Level !*pJob Command
dll winspool.drv #GetJob hPrinter JobId Level !*pJob cdBuf *pcbNeeded
dll winspool.drv #EnumJobs hPrinter FirstJob NoJobs Level !*pJob cdBuf *pcbNeeded *pcReturned
dll winspool.drv #AddPrinter $pName Level !*pPrinter
dll winspool.drv #AddPrinterDriver $pName Level !*pDriverInfor
dll winspool.drv #EnumPrinterDrivers $pName $pEnvironment Level !*pDriverInfo cdBuf *pcbNeeded *pcRetruned
dll winspool.drv #GetPrinterDriver hPrinter $pEnvironment Level !*pDriverInfo cdBuf *pcbNeeded
dll winspool.drv #GetPrinterDriverDirectory $pName $pEnvironment Level !*pDriverDirectory cdBuf *pcbNeeded
dll winspool.drv #DeletePrinterDriver $pName $pEnvironment $pDriverName
dll winspool.drv #AddPrintProcessor $pName $pEnvironment $pPathName $pPrintProcessorName
dll winspool.drv #EnumPrintProcessors $pName $pEnvironment Level !*pPrintProcessorInfo cdBuf *pcbNeeded *pcReturned
dll winspool.drv #GetPrintProcessorDirectory $pName $pEnvironment Level $pPrintProcessorInfo cdBuf *pcbNeeded
dll winspool.drv #EnumPrintProcessorDatatypes $pName $pPrintProcessorName Level !*pDatatypes cdBuf *pcbNeeded *pcRetruned
dll winspool.drv #DeletePrintProcessor $pName $pEnvironment $pPrintProcessorName
dll winspool.drv #StartDocPrinter hPrinter Level !*pDocInfo
dll winspool.drv #StartPagePrinter hPrinter
dll winspool.drv #WritePrinter hPrinter !*pBuf cdBuf *pcWritten
dll winspool.drv #EndPagePrinter hPrinter
dll winspool.drv #AbortPrinter hPrinter
dll winspool.drv #ReadPrinter hPrinter !*pBuf cdBuf *pNoBytesRead
dll winspool.drv #EndDocPrinter hPrinter
dll winspool.drv #AddJob hPrinter Level !*pData cdBuf *pcbNeeded
dll winspool.drv #ScheduleJob hPrinter JobId
dll winspool.drv #PrinterProperties hWnd hPrinter
dll winspool.drv #DocumentProperties hWnd hPrinter $pDeviceName DEVMODE*pDevModeOutput DEVMODE*pDevModeInput fMode
dll winspool.drv #AdvancedDocumentProperties hWnd hPrinter $pDeviceName DEVMODE*pDevModeOutput DEVMODE*pDevModeInput
dll winspool.drv #GetPrinterData hPrinter $pValueName *pType !*pData nSize *pcbNeeded
dll winspool.drv #SetPrinterData hPrinter $pValueName dwType !*pData cbData
dll winspool.drv #WaitForPrinterChange hPrinter flags
def PRINTER_CHANGE_ADD_PRINTER  0x1
def PRINTER_CHANGE_SET_PRINTER  0x2
def PRINTER_CHANGE_DELETE_PRINTER  0x4
def PRINTER_CHANGE_PRINTER  0xFF
def PRINTER_CHANGE_ADD_JOB  0x100
def PRINTER_CHANGE_SET_JOB  0x200
def PRINTER_CHANGE_DELETE_JOB  0x400
def PRINTER_CHANGE_WRITE_JOB  0x800
def PRINTER_CHANGE_JOB  0xFF00
def PRINTER_CHANGE_ADD_FORM  0x10000
def PRINTER_CHANGE_SET_FORM  0x20000
def PRINTER_CHANGE_DELETE_FORM  0x40000
def PRINTER_CHANGE_FORM  0x70000
def PRINTER_CHANGE_ADD_PORT  0x100000
def PRINTER_CHANGE_CONFIGURE_PORT  0x200000
def PRINTER_CHANGE_DELETE_PORT  0x400000
def PRINTER_CHANGE_PORT  0x700000
def PRINTER_CHANGE_ADD_PRINT_PROCESSOR  0x1000000
def PRINTER_CHANGE_DELETE_PRINT_PROCESSOR  0x4000000
def PRINTER_CHANGE_PRINT_PROCESSOR  0x7000000
def PRINTER_CHANGE_ADD_PRINTER_DRIVER  0x10000000
def PRINTER_CHANGE_DELETE_PRINTER_DRIVER  0x40000000
def PRINTER_CHANGE_PRINTER_DRIVER  0x70000000
def PRINTER_CHANGE_TIMEOUT  0x80000000
def PRINTER_CHANGE_ALL  0x7777FFFF
dll winspool.drv #PrinterMessageBox hPrinter error hWnd $pText $pCaption dwType
def PRINTER_ERROR_INFORMATION  0x80000000
def PRINTER_ERROR_WARNING  0x40000000
def PRINTER_ERROR_SEVERE  0x20000000
def PRINTER_ERROR_OUTOFPAPER  0x1
def PRINTER_ERROR_JAM  0x2
def PRINTER_ERROR_OUTOFTONER  0x4
dll winspool.drv #ClosePrinter hPrinter
dll winspool.drv #AddForm hPrinter Level !*pForm
dll winspool.drv #DeleteForm hPrinter $pFormName
dll winspool.drv #GetForm hPrinter $pFormName Level !*pForm cbBuf *pcbNeeded
dll winspool.drv #SetForm hPrinter $pFormName Level !*pForm
dll winspool.drv #EnumForms hPrinter Level !*pForm cbBuf *pcbNeeded *pcReturned
dll winspool.drv #EnumMonitors $pName Level !*pMonitors cbBuf *pcbNeeded *pcReturned
dll winspool.drv #AddMonitor $pName Level !*pMonitors
dll winspool.drv #DeleteMonitor $pName $pEnvironment $pMonitorName
dll winspool.drv #EnumPorts $pName Level lpbPorts cbBuf *pcbNeeded *pcReturned
dll winspool.drv #AddPort $pName hWnd $pMonitorName
dll winspool.drv #ConfigurePort $pName hWnd $pPortName
dll winspool.drv #DeletePort $pName hWnd $pPortName
dll winspool.drv #AddPrinterConnection $pName
dll winspool.drv #DeletePrinterConnection $pName
dll winspool.drv #ConnectToPrinterDlg hWnd flags
type PROVIDOR_INFO_1 $pName $pEnvironment $pDLLName
dll winspool.drv #AddPrintProvidor $pName Level !*pProvidorInfo
dll winspool.drv #DeletePrintProvidor $pName $pEnvironment $pPrintProvidorName
def SERVER_ACCESS_ADMINISTER  0x1
def SERVER_ACCESS_ENUMERATE  0x2
def PRINTER_ACCESS_ADMINISTER  0x4
def PRINTER_ACCESS_USE  0x8
def JOB_ACCESS_ADMINISTER  0x10
def SERVER_ALL_ACCESS  (STANDARD_RIGHTS_REQUIRED |  SERVER_ACCESS_ADMINISTER |  SERVER_ACCESS_ENUMERATE)
def SERVER_READ      (STANDARD_RIGHTS_READ |  SERVER_ACCESS_ENUMERATE)
def SERVER_WRITE     (STANDARD_RIGHTS_WRITE |  SERVER_ACCESS_ADMINISTER |  SERVER_ACCESS_ENUMERATE)
def SERVER_EXECUTE   (STANDARD_RIGHTS_EXECUTE |  SERVER_ACCESS_ENUMERATE)
def PRINTER_ALL_ACCESS  (STANDARD_RIGHTS_REQUIRED |  PRINTER_ACCESS_ADMINISTER |  PRINTER_ACCESS_USE)
def PRINTER_READ     (STANDARD_RIGHTS_READ |  PRINTER_ACCESS_USE)
def PRINTER_WRITE    (STANDARD_RIGHTS_WRITE |  PRINTER_ACCESS_USE)
def PRINTER_EXECUTE  (STANDARD_RIGHTS_EXECUTE |  PRINTER_ACCESS_USE)
def JOB_ALL_ACCESS   (STANDARD_RIGHTS_REQUIRED |  JOB_ACCESS_ADMINISTER)
def JOB_READ         (STANDARD_RIGHTS_READ |  JOB_ACCESS_ADMINISTER)
def JOB_WRITE        (STANDARD_RIGHTS_WRITE |  JOB_ACCESS_ADMINISTER)
def JOB_EXECUTE      (STANDARD_RIGHTS_EXECUTE |  JOB_ACCESS_ADMINISTER)
def RESOURCE_CONNECTED  0x1
def RESOURCE_PUBLICNET  0x2
def RESOURCE_REMEMBERED  0x3
def RESOURCETYPE_ANY  0x0
def RESOURCETYPE_DISK  0x1
def RESOURCETYPE_PRINT  0x2
def RESOURCETYPE_UNKNOWN  0xFFFF
def RESOURCEUSAGE_CONNECTABLE  0x1
def RESOURCEUSAGE_CONTAINER  0x2
def RESOURCEUSAGE_RESERVED  0x80000000
def RESOURCEDISPLAYTYPE_GENERIC  0x0
def RESOURCEDISPLAYTYPE_DOMAIN  0x1
def RESOURCEDISPLAYTYPE_SERVER  0x2
def RESOURCEDISPLAYTYPE_SHARE  0x3
def RESOURCEDISPLAYTYPE_FILE  0x4
def RESOURCEDISPLAYTYPE_GROUP  0x5
type NETRESOURCE dwScope dwType dwDisplayType dwUsage $lpLocalName $lpRemoteName $lpComment $lpProvider
def CONNECT_UPDATE_PROFILE  0x1
dll mpr.dll #WNetAddConnection $lpszNetPath $lpszPassword $lpszLocalName
dll mpr.dll #WNetAddConnection2 NETRESOURCE*lpNetResource $lpPassword $lpUserName dwFlags
dll mpr.dll #WNetCancelConnection $lpszName bForce
dll mpr.dll #WNetCancelConnection2 $lpName dwFlags fForce
dll mpr.dll #WNetGetConnection $lpszLocalName $lpszRemoteName *cbRemoteName
dll mpr.dll #WNetOpenEnum dwScope dwType dwUsage NETRESOURCE*lpNetResource *lphEnum
dll mpr.dll #WNetEnumResource hEnum *lpcCount !*lpBuffer *lpBufferSize
dll mpr.dll #WNetCloseEnum hEnum
dll mpr.dll #WNetGetUser $lpName $lpUserName *lpnLength
dll mpr.dll #WNetConnectionDialog hWnd dwType
dll mpr.dll #WNetDisconnectDialog hWnd dwType
dll mpr.dll #WNetGetLastError *lpError $lpErrorBuf nErrorBufSize $lpNameBuf nNameBufSize
def WN_SUCCESS       NO_ERROR
def WN_NOT_SUPPORTED  ERROR_NOT_SUPPORTED
def WN_NET_ERROR     ERROR_UNEXP_NET_ERR
def WN_MORE_DATA     ERROR_MORE_DATA
def WN_BAD_POINTER   ERROR_INVALID_ADDRESS
def WN_BAD_VALUE     ERROR_INVALID_PARAMETER
def WN_BAD_PASSWORD  ERROR_INVALID_PASSWORD
def WN_ACCESS_DENIED  ERROR_ACCESS_DENIED
def WN_FUNCTION_BUSY  ERROR_BUSY
def WN_WINDOWS_ERROR  ERROR_UNEXP_NET_ERR
def WN_BAD_USER      ERROR_BAD_USERNAME
def WN_OUT_OF_MEMORY  ERROR_NOT_ENOUGH_MEMORY
def WN_NO_NETWORK    ERROR_NO_NETWORK
def WN_EXTENDED_ERROR  ERROR_EXTENDED_ERROR
def WN_NOT_CONNECTED  ERROR_NOT_CONNECTED
def WN_OPEN_FILES    ERROR_OPEN_FILES
def WN_DEVICE_IN_USE  ERROR_DEVICE_IN_USE
def WN_BAD_NETNAME   ERROR_BAD_NET_NAME
def WN_BAD_LOCALNAME  ERROR_BAD_DEVICE
def WN_ALREADY_CONNECTED  ERROR_ALREADY_ASSIGNED
def WN_DEVICE_ERROR  ERROR_GEN_FAILURE
def WN_CONNECTION_CLOSED  ERROR_CONNECTION_UNAVAIL
def WN_NO_NET_OR_BAD_PATH  ERROR_NO_NET_OR_BAD_PATH
def WN_BAD_PROVIDER  ERROR_BAD_PROVIDER
def WN_CANNOT_OPEN_PROFILE  ERROR_CANNOT_OPEN_PROFILE
def WN_BAD_PROFILE   ERROR_BAD_PROFILE
def WN_BAD_HANDLE    ERROR_INVALID_HANDLE
def WN_NO_MORE_ENTRIES  ERROR_NO_MORE_ITEMS
def WN_NOT_CONTAINER  ERROR_NOT_CONTAINER
def WN_NO_ERROR      NO_ERROR
def NCBNAMSZ         16
def MAX_LANA         254
type NCB @ncb_command @ncb_retcode @ncb_lsn @ncb_num $ncb_buffer @ncb_length !ncb_callname[NCBNAMSZ] !ncb_name[NCBNAMSZ] @ncb_rto @ncb_sto ncb_post @ncb_lana_num @ncb_cmd_cplt !ncb_reserve[10] ncb_event
type ADAPTER_STATUS !adapter_address[6] @rev_major @reserved0 @adapter_type @rev_minor @duration @frmr_recv @frmr_xmit @iframe_recv_err @xmit_aborts xmit_success recv_success @iframe_xmit_err @recv_buff_unavail @t1_timeouts @ti_timeouts Reserved1 @free_ncbs @max_cfg_ncbs @max_ncbs @xmit_buf_unavail @max_dgram_size @pending_sess @max_cfg_sess @max_sess @max_sess_pkt_size @name_count
type NAME_BUFFER !name[NCBNAMSZ] @name_num @name_flags
def NAME_FLAGS_MASK  0x87
def GROUP_NAME       0x80
def UNIQUE_NAME      0x0
def REGISTERING      0x0
def REGISTERED       0x4
def DEREGISTERED     0x5
def DUPLICATE        0x6
def DUPLICATE_DEREG  0x7
type SESSION_HEADER @sess_name @num_sess @rcv_dg_outstanding @rcv_any_outstanding
type SESSION_BUFFER @lsn @State !local_name[NCBNAMSZ] !remote_name[NCBNAMSZ] @rcvs_outstanding @sends_outstanding
def LISTEN_OUTSTANDING  0x1
def CALL_PENDING     0x2
def SESSION_ESTABLISHED  0x3
def HANGUP_PENDING   0x4
def HANGUP_COMPLETE  0x5
def SESSION_ABORTED  0x6
type LANA_ENUM @Length @lana[MAX_LANA]
type FIND_NAME_HEADER @node_count @Reserved @unique_group
type FIND_NAME_BUFFER @Length @access_control @frame_control @destination_addr[6] @source_addr[6] @routing_info[18]
type ACTION_HEADER transport_id @action_code @Reserved
def ALL_TRANSPORTS   "M\0\0\0"
def MS_NBF           "MNBF"
def NCBCALL          0x10
def NCBLISTEN        0x11
def NCBHANGUP        0x12
def NCBSEND          0x14
def NCBRECV          0x15
def NCBRECVANY       0x16
def NCBCHAINSEND     0x17
def NCBDGSEND        0x20
def NCBDGRECV        0x21
def NCBDGSENDBC      0x22
def NCBDGRECVBC      0x23
def NCBADDNAME       0x30
def NCBDELNAME       0x31
def NCBRESET         0x32
def NCBASTAT         0x33
def NCBSSTAT         0x34
def NCBCANCEL        0x35
def NCBADDGRNAME     0x36
def NCBENUM          0x37
def NCBUNLINK        0x70
def NCBSENDNA        0x71
def NCBCHAINSENDNA   0x72
def NCBLANSTALERT    0x73
def NCBACTION        0x77
def NCBFINDNAME      0x78
def NCBTRACE         0x79
def ASYNCH           0x80
def NRC_GOODRET      0x0
def NRC_BUFLEN       0x1
def NRC_ILLCMD       0x3
def NRC_CMDTMO       0x5
def NRC_INCOMP       0x6
def NRC_BADDR        0x7
def NRC_SNUMOUT      0x8
def NRC_NORES        0x9
def NRC_SCLOSED      0xA
def NRC_CMDCAN       0xB
def NRC_DUPNAME      0xD
def NRC_NAMTFUL      0xE
def NRC_ACTSES       0xF
def NRC_LOCTFUL      0x11
def NRC_REMTFUL      0x12
def NRC_ILLNN        0x13
def NRC_NOCALL       0x14
def NRC_NOWILD       0x15
def NRC_INUSE        0x16
def NRC_NAMERR       0x17
def NRC_SABORT       0x18
def NRC_NAMCONF      0x19
def NRC_IFBUSY       0x21
def NRC_TOOMANY      0x22
def NRC_BRIDGE       0x23
def NRC_CANOCCR      0x24
def NRC_CANCEL       0x26
def NRC_DUPENV       0x30
def NRC_ENVNOTDEF    0x34
def NRC_OSRESNOTAV   0x35
def NRC_MAXAPPS      0x36
def NRC_NOSAPS       0x37
def NRC_NORESOURCES  0x38
def NRC_INVADDRESS   0x39
def NRC_INVDDID      0x3B
def NRC_LOCKFAIL     0x3C
def NRC_OPENERR      0x3F
def NRC_SYSTEM       0x40
def NRC_PENDING      0xFF
dll netapi32.dll #Netbios NCB*pncb
def EXCEPTION_EXECUTE_HANDLER  1
def EXCEPTION_CONTINUE_SEARCH  0
def EXCEPTION_CONTINUE_EXECUTION  -1
def ctlFirst         0x400
def ctlLast          0x4FF
def psh1             0x400
def psh2             0x401
def psh3             0x402
def psh4             0x403
def psh5             0x404
def psh6             0x405
def psh7             0x406
def psh8             0x407
def psh9             0x408
def psh10            0x409
def psh11            0x40A
def psh12            0x40B
def psh13            0x40C
def psh14            0x40D
def psh15            0x40E
def pshHelp          psh15
def psh16            0x40F
def chx1             0x410
def chx2             0x411
def chx3             0x412
def chx4             0x413
def chx5             0x414
def chx6             0x415
def chx7             0x416
def chx8             0x417
def chx9             0x418
def chx10            0x419
def chx11            0x41A
def chx12            0x41B
def chx13            0x41C
def chx14            0x41D
def chx15            0x41E
def chx16            0x41D
def rad1             0x420
def rad2             0x421
def rad3             0x422
def rad4             0x423
def rad5             0x424
def rad6             0x425
def rad7             0x426
def rad8             0x427
def rad9             0x428
def rad10            0x429
def rad11            0x42A
def rad12            0x42B
def rad13            0x42C
def rad14            0x42D
def rad15            0x42E
def rad16            0x42F
def grp1             0x430
def grp2             0x431
def grp3             0x432
def grp4             0x433
def frm1             0x434
def frm2             0x435
def frm3             0x436
def frm4             0x437
def rct1             0x438
def rct2             0x439
def rct3             0x43A
def rct4             0x43B
def ico1             0x43C
def ico2             0x43D
def ico3             0x43E
def ico4             0x43F
def stc1             0x440
def stc2             0x441
def stc3             0x442
def stc4             0x443
def stc5             0x444
def stc6             0x445
def stc7             0x446
def stc8             0x447
def stc9             0x448
def stc10            0x449
def stc11            0x44A
def stc12            0x44B
def stc13            0x44C
def stc14            0x44D
def stc15            0x44E
def stc16            0x44F
def stc17            0x450
def stc18            0x451
def stc19            0x452
def stc20            0x453
def stc21            0x454
def stc22            0x455
def stc23            0x456
def stc24            0x457
def stc25            0x458
def stc26            0x459
def stc27            0x45A
def stc28            0x45B
def stc29            0x45C
def stc30            0x45D
def stc31            0x45E
def stc32            0x45F
def lst1             0x460
def lst2             0x461
def lst3             0x462
def lst4             0x463
def lst5             0x464
def lst6             0x465
def lst7             0x466
def lst8             0x467
def lst9             0x468
def lst10            0x469
def lst11            0x46A
def lst12            0x46B
def lst13            0x46C
def lst14            0x46D
def lst15            0x46E
def lst16            0x46F
def cmb1             0x470
def cmb2             0x471
def cmb3             0x472
def cmb4             0x473
def cmb5             0x474
def cmb6             0x475
def cmb7             0x476
def cmb8             0x477
def cmb9             0x478
def cmb10            0x479
def cmb11            0x47A
def cmb12            0x47B
def cmb13            0x47C
def cmb14            0x47D
def cmb15            0x47E
def cmb16            0x47F
def edt1             0x480
def edt2             0x481
def edt3             0x482
def edt4             0x483
def edt5             0x484
def edt6             0x485
def edt7             0x486
def edt8             0x487
def edt9             0x488
def edt10            0x489
def edt11            0x48A
def edt12            0x48B
def edt13            0x48C
def edt14            0x48D
def edt15            0x48E
def edt16            0x48F
def scr1             0x490
def scr2             0x491
def scr3             0x492
def scr4             0x493
def scr5             0x494
def scr6             0x495
def scr7             0x496
def scr8             0x497
def FILEOPENORD      1536
def MULTIFILEOPENORD  1537
def PRINTDLGORD      1538
def PRNSETUPDLGORD   1539
def FINDDLGORD       1540
def REPLACEDLGORD    1541
def FONTDLGORD       1542
def FORMATDLGORD31   1543
def FORMATDLGORD30   1544
type CRGB !bRed !bGreen !bBlue !bExtra
def HKEY_CLASSES_ROOT  0x80000000
def HKEY_CURRENT_USER  0x80000001
def HKEY_LOCAL_MACHINE  0x80000002
def HKEY_USERS       0x80000003
def HKEY_PERFORMANCE_DATA  0x80000004
def HKEY_CURRENT_CONFIG  0x80000005
def HKEY_DYN_DATA    0x80000006
dll advapi32.dll #RegCloseKey hKey
dll advapi32.dll #RegConnectRegistry $lpMachineName hKey *phkResult
dll advapi32.dll #RegCreateKey hKey $lpSubKey *phkResult
dll advapi32.dll #RegCreateKeyEx hKey $lpSubKey Reserved $lpClass dwOptions samDesired SECURITY_ATTRIBUTES*lpSecurityAttributes *phkResult *lpdwDisposition
dll advapi32.dll #RegDeleteKey hKey $lpSubKey
dll advapi32.dll #RegDeleteValue hKey $lpValueName
dll advapi32.dll #RegEnumKey hKey dwIndex $lpName cbName
dll advapi32.dll #RegEnumKeyEx hKey dwIndex $lpName *lpcbName *lpReserved $lpClass *lpcbClass FILETIME*lpftLastWriteTime
dll advapi32.dll #RegEnumValue hKey dwIndex $lpValueName *lpcbValueName *lpReserved *lpType !*lpData *lpcbData
dll advapi32.dll #RegFlushKey hKey
dll advapi32.dll #RegGetKeySecurity hKey SecurityInformation SECURITY_DESCRIPTOR*pSecurityDescriptor *lpcbSecurityDescriptor
dll advapi32.dll #RegLoadKey hKey $lpSubKey $lpFile
dll advapi32.dll #RegNotifyChangeKeyValue hKey bWatchSubtree dwNotifyFilter hEvent fAsynchronus
dll advapi32.dll #RegOpenKey hKey $lpSubKey *phkResult
dll advapi32.dll #RegOpenKeyEx hKey $lpSubKey ulOptions samDesired *phkResult
dll advapi32.dll #RegQueryInfoKey hKey $lpClass *lpcbClass *lpReserved *lpcSubKeys *lpcbMaxSubKeyLen *lpcbMaxClassLen *lpcValues *lpcbMaxValueNameLen *lpcbMaxValueLen *lpcbSecurityDescriptor FILETIME*lpftLastWriteTime
dll advapi32.dll #RegQueryValue hKey $lpSubKey $lpValue *lpcbValue
dll advapi32.dll #RegQueryValueEx hKey $lpValueName lpReserved *lpType !*lpData *lpcbData
dll advapi32.dll #RegReplaceKey hKey $lpSubKey $lpNewFile $lpOldFile
dll advapi32.dll #RegRestoreKey hKey $lpFile dwFlags
dll advapi32.dll #RegSaveKey hKey $lpFile SECURITY_ATTRIBUTES*lpSecurityAttributes
dll advapi32.dll #RegSetKeySecurity hKey SecurityInformation SECURITY_DESCRIPTOR*pSecurityDescriptor
dll advapi32.dll #RegSetValue hKey $lpSubKey dwType $lpData cbData
dll advapi32.dll #RegSetValueEx hKey $lpValueName Reserved dwType !*lpData cbData
dll advapi32.dll #RegUnLoadKey hKey $lpSubKey
dll advapi32.dll #InitiateSystemShutdown $lpMachineName $lpMessage dwTimeout bForceAppsClosed bRebootAfterShutdown
dll advapi32.dll #AbortSystemShutdown $lpMachineName
def SERVICES_ACTIVE_DATABASE  "ServicesActive"
def SERVICES_FAILED_DATABASE  "ServicesFailed"
def SERVICE_NO_CHANGE  0xFFFF
def SERVICE_ACTIVE   0x1
def SERVICE_INACTIVE  0x2
def SERVICE_STATE_ALL  (SERVICE_ACTIVE |  SERVICE_INACTIVE)
def SERVICE_CONTROL_STOP  0x1
def SERVICE_CONTROL_PAUSE  0x2
def SERVICE_CONTROL_CONTINUE  0x3
def SERVICE_CONTROL_INTERROGATE  0x4
def SERVICE_CONTROL_SHUTDOWN  0x5
def SERVICE_STOPPED  0x1
def SERVICE_START_PENDING  0x2
def SERVICE_STOP_PENDING  0x3
def SERVICE_RUNNING  0x4
def SERVICE_CONTINUE_PENDING  0x5
def SERVICE_PAUSE_PENDING  0x6
def SERVICE_PAUSED   0x7
def SERVICE_ACCEPT_STOP  0x1
def SERVICE_ACCEPT_PAUSE_CONTINUE  0x2
def SERVICE_ACCEPT_SHUTDOWN  0x4
def SC_MANAGER_CONNECT  0x1
def SC_MANAGER_CREATE_SERVICE  0x2
def SC_MANAGER_ENUMERATE_SERVICE  0x4
def SC_MANAGER_LOCK  0x8
def SC_MANAGER_QUERY_LOCK_STATUS  0x10
def SC_MANAGER_MODIFY_BOOT_CONFIG  0x20
def SC_MANAGER_ALL_ACCESS  (STANDARD_RIGHTS_REQUIRED |  SC_MANAGER_CONNECT |  SC_MANAGER_CREATE_SERVICE |  SC_MANAGER_ENUMERATE_SERVICE |  SC_MANAGER_LOCK |  SC_MANAGER_QUERY_LOCK_STATUS |  SC_MANAGER_MODIFY_BOOT_CONFIG)
def SERVICE_QUERY_CONFIG  0x1
def SERVICE_CHANGE_CONFIG  0x2
def SERVICE_QUERY_STATUS  0x4
def SERVICE_ENUMERATE_DEPENDENTS  0x8
def SERVICE_START    0x10
def SERVICE_STOP     0x20
def SERVICE_PAUSE_CONTINUE  0x40
def SERVICE_INTERROGATE  0x80
def SERVICE_USER_DEFINED_CONTROL  0x100
def SERVICE_ALL_ACCESS  (STANDARD_RIGHTS_REQUIRED |  SERVICE_QUERY_CONFIG |  SERVICE_CHANGE_CONFIG |  SERVICE_QUERY_STATUS |  SERVICE_ENUMERATE_DEPENDENTS |  SERVICE_START |  SERVICE_STOP |  SERVICE_PAUSE_CONTINUE |  SERVICE_INTERROGATE |  SERVICE_USER_DEFINED_CONTROL)
type SERVICE_STATUS dwServiceType dwCurrentState dwControlsAccepted dwWin32ExitCode dwServiceSpecificExitCode dwCheckPoint dwWaitHint
type ENUM_SERVICE_STATUS $lpServiceName $lpDisplayName SERVICE_STATUS'ServiceStatus
type QUERY_SERVICE_LOCK_STATUS fIsLocked $lpLockOwner dwLockDuration
type QUERY_SERVICE_CONFIG dwServiceType dwStartType dwErrorControl $lpBinaryPathName $lpLoadOrderGroup dwTagId $lpDependencies $lpServiceStartName $lpDisplayName
type SERVICE_TABLE_ENTRY $lpServiceName lpServiceProc
def SC_GROUP_IDENTIFIER  "+"
dll advapi32.dll #ChangeServiceConfig hService dwServiceType dwStartType dwErrorControl $lpBinaryPathName $lpLoadOrderGroup *lpdwTagId $lpDependencies $lpServiceStartName $lpPassword $lpDisplayName
dll advapi32.dll #CloseServiceHandle hSCObject
dll advapi32.dll #ControlService hService dwControl SERVICE_STATUS*lpServiceStatus
dll advapi32.dll #CreateService hSCManager $lpServiceName $lpDisplayName dwDesiredAccess dwServiceType dwStartType dwErrorControl $lpBinaryPathName $lpLoadOrderGroup *lpdwTagId $lpDependencies $lp $lpPassword
dll advapi32.dll #DeleteService hService
dll advapi32.dll #EnumDependentServices hService dwServiceState ENUM_SERVICE_STATUS*lpServices cbBufSize *pcbBytesNeeded *lpServicesReturned
dll advapi32.dll #EnumServicesStatus hSCManager dwServiceType dwServiceState ENUM_SERVICE_STATUS*lpServices cbBufSize *pcbBytesNeeded *lpServicesReturned *lpResumeHandle
dll advapi32.dll #GetServiceKeyName hSCManager $lpDisplayName $lpServiceName *lpcchBuffer
dll advapi32.dll #GetServiceDisplayName hSCManager $lpServiceName $lpDisplayName *lpcchBuffer
dll advapi32.dll #LockServiceDatabase hSCManager
dll advapi32.dll #NotifyBootConfigStatus BootAcceptable
dll advapi32.dll #OpenSCManager $lpMachineName $lpDatabaseName dwDesiredAccess
dll advapi32.dll #OpenService hSCManager $lpServiceName dwDesiredAccess
dll advapi32.dll #QueryServiceConfig hService QUERY_SERVICE_CONFIG*lpServiceConfig cbBufSize *pcbBytesNeeded
dll advapi32.dll #QueryServiceLockStatus hSCManager QUERY_SERVICE_LOCK_STATUS*lpLockStatus cbBufSize *pcbBytesNeeded
dll advapi32.dll #QueryServiceObjectSecurity hService dwSecurityInformation !*lpSecurityDescriptor cbBufSize *pcbBytesNeeded
dll advapi32.dll #QueryServiceStatus hService SERVICE_STATUS*lpServiceStatus
dll advapi32.dll #RegisterServiceCtrlHandler $lpServiceName lpHandlerProc
dll advapi32.dll #SetServiceObjectSecurity hService dwSecurityInformation !*lpSecurityDescriptor
dll advapi32.dll #SetServiceStatus hServiceStatus SERVICE_STATUS*lpServiceStatus
dll advapi32.dll #StartServiceCtrlDispatcher SERVICE_TABLE_ENTRY*lpServiceStartTable
dll advapi32.dll #StartService hService dwNumServiceArgs lpServiceArgVectors
dll advapi32.dll #UnlockServiceDatabase !*ScLock
type LARGE_INTEGER lowpart highpart
def PERF_DATA_VERSION  1
def PERF_DATA_REVISION  1
type PERF_DATA_BLOCK !Signature[4] LittleEndian Version Revision TotalByteLength HeaderLength NumObjectTypes DefaultObject SYSTEMTIME'SystemTime LARGE_INTEGER'PerfTime LARGE_INTEGER'PerfFreq LARGE_INTEGER'PerTime100nSec SystemNameLength SystemNameOffset
type PERF_OBJECT_TYPE TotalByteLength DefinitionLength HeaderLength ObjectNameTitleIndex $ObjectNameTitle ObjectHelpTitleIndex $ObjectHelpTitle DetailLevel NumCounters DefaultCounter NumInstances CodePage LARGE_INTEGER'PerfTime LARGE_INTEGER'PerfFreq
def PERF_NO_INSTANCES  -1
def PERF_SIZE_DWORD  0x0
def PERF_SIZE_LARGE  0x100
def PERF_SIZE_ZERO   0x200
def PERF_SIZE_VARIABLE_LEN  0x300
def PERF_TYPE_NUMBER  0x0
def PERF_TYPE_COUNTER  0x400
def PERF_TYPE_TEXT   0x800
def PERF_TYPE_ZERO   0xC00
def PERF_NUMBER_HEX  0x0
def PERF_NUMBER_DECIMAL  0x10000
def PERF_NUMBER_DEC_1000  0x20000
def PERF_COUNTER_VALUE  0x0
def PERF_COUNTER_RATE  0x10000
def PERF_COUNTER_FRACTION  0x20000
def PERF_COUNTER_BASE  0x30000
def PERF_COUNTER_ELAPSED  0x40000
def PERF_COUNTER_QUEUELEN  0x50000
def PERF_COUNTER_HISTOGRAM  0x60000
def PERF_TEXT_UNICODE  0x0
def PERF_TEXT_ASCII  0x10000
def PERF_TIMER_TICK  0x0
def PERF_TIMER_100NS  0x100000
def PERF_OBJECT_TIMER  0x200000
def PERF_DELTA_COUNTER  0x400000
def PERF_DELTA_BASE  0x800000
def PERF_INVERSE_COUNTER  0x1000000
def PERF_MULTI_COUNTER  0x2000000
def PERF_DISPLAY_NO_SUFFIX  0x0
def PERF_DISPLAY_PER_SEC  0x10000000
def PERF_DISPLAY_PERCENT  0x20000000
def PERF_DISPLAY_SECONDS  0x30000000
def PERF_DISPLAY_NOSHOW  0x40000000
def PERF_COUNTER_COUNTER  (PERF_SIZE_DWORD |  PERF_TYPE_COUNTER |  PERF_COUNTER_RATE |  PERF_TIMER_TICK |  PERF_DELTA_COUNTER |  PERF_DISPLAY_PER_SEC)
def PERF_COUNTER_TIMER  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_COUNTER_RATE |  PERF_TIMER_TICK |  PERF_DELTA_COUNTER |  PERF_DISPLAY_PERCENT)
def PERF_COUNTER_QUEUELEN_TYPE  (PERF_SIZE_DWORD |  PERF_TYPE_COUNTER |  PERF_COUNTER_QUEUELEN |  PERF_TIMER_TICK |  PERF_DELTA_COUNTER |  PERF_DISPLAY_NO_SUFFIX)
def PERF_COUNTER_BULK_COUNT  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_COUNTER_RATE |  PERF_TIMER_TICK |  PERF_DELTA_COUNTER |  PERF_DISPLAY_PER_SEC)
def PERF_COUNTER_TEXT  (PERF_SIZE_VARIABLE_LEN |  PERF_TYPE_TEXT |  PERF_TEXT_UNICODE |  PERF_DISPLAY_NO_SUFFIX)
def PERF_COUNTER_RAWCOUNT  (PERF_SIZE_DWORD |  PERF_TYPE_NUMBER |  PERF_NUMBER_DECIMAL |  PERF_DISPLAY_NO_SUFFIX)
def PERF_SAMPLE_FRACTION  (PERF_SIZE_DWORD |  PERF_TYPE_COUNTER |  PERF_COUNTER_FRACTION |  PERF_DELTA_COUNTER |  PERF_DELTA_BASE |  PERF_DISPLAY_PERCENT)
def PERF_SAMPLE_COUNTER  (PERF_SIZE_DWORD |  PERF_TYPE_COUNTER |  PERF_COUNTER_RATE |  PERF_TIMER_TICK |  PERF_DELTA_COUNTER |  PERF_DISPLAY_NO_SUFFIX)
def PERF_COUNTER_NODATA  (PERF_SIZE_ZERO |  PERF_DISPLAY_NOSHOW)
def PERF_COUNTER_TIMER_INV  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_COUNTER_RATE |  PERF_TIMER_TICK |  PERF_DELTA_COUNTER |  PERF_INVERSE_COUNTER |  PERF_DISPLAY_PERCENT)
def PERF_SAMPLE_BASE  (PERF_SIZE_DWORD |  PERF_TYPE_COUNTER |  PERF_COUNTER_BASE |  PERF_DISPLAY_NOSHOW |  0x1)
def PERF_AVERAGE_TIMER  (PERF_SIZE_DWORD |  PERF_TYPE_COUNTER |  PERF_COUNTER_FRACTION |  PERF_DISPLAY_SECONDS)
def PERF_AVERAGE_BASE  (PERF_SIZE_DWORD |  PERF_TYPE_COUNTER |  PERF_COUNTER_BASE |  PERF_DISPLAY_NOSHOW |  0x2)
def PERF_AVERAGE_BULK  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_COUNTER_FRACTION |  PERF_DISPLAY_NOSHOW)
def PERF_100NSEC_TIMER  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_COUNTER_RATE |  PERF_TIMER_100NS |  PERF_DELTA_COUNTER |  PERF_DISPLAY_PERCENT)
def PERF_100NSEC_TIMER_INV  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_COUNTER_RATE |  PERF_TIMER_100NS |  PERF_DELTA_COUNTER |  PERF_INVERSE_COUNTER |  PERF_DISPLAY_PERCENT)
def PERF_COUNTER_MULTI_TIMER  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_COUNTER_RATE |  PERF_DELTA_COUNTER |  PERF_TIMER_TICK |  PERF_MULTI_COUNTER |  PERF_DISPLAY_PERCENT)
def PERF_COUNTER_MULTI_TIMER_INV  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_COUNTER_RATE |  PERF_DELTA_COUNTER |  PERF_MULTI_COUNTER |  PERF_TIMER_TICK |  PERF_INVERSE_COUNTER |  PERF_DISPLAY_PERCENT)
def PERF_COUNTER_MULTI_BASE  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_COUNTER_BASE |  PERF_MULTI_COUNTER |  PERF_DISPLAY_NOSHOW)
def PERF_100NSEC_MULTI_TIMER  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_DELTA_COUNTER |  PERF_COUNTER_RATE |  PERF_TIMER_100NS |  PERF_MULTI_COUNTER |  PERF_DISPLAY_PERCENT)
def PERF_100NSEC_MULTI_TIMER_INV  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_DELTA_COUNTER |  PERF_COUNTER_RATE |  PERF_TIMER_100NS |  PERF_MULTI_COUNTER |  PERF_INVERSE_COUNTER |  PERF_DISPLAY_PERCENT)
def PERF_RAW_FRACTION  (PERF_SIZE_DWORD |  PERF_TYPE_COUNTER |  PERF_COUNTER_FRACTION |  PERF_DISPLAY_PERCENT)
def PERF_RAW_BASE    (PERF_SIZE_DWORD |  PERF_TYPE_COUNTER |  PERF_COUNTER_BASE |  PERF_DISPLAY_NOSHOW |  0x3)
def PERF_ELAPSED_TIME  (PERF_SIZE_LARGE |  PERF_TYPE_COUNTER |  PERF_COUNTER_ELAPSED |  PERF_OBJECT_TIMER |  PERF_DISPLAY_SECONDS)
def PERF_COUNTER_HISTOGRAM_TYPE  0x80000000
def PERF_DETAIL_NOVICE  100
def PERF_DETAIL_ADVANCED  200
def PERF_DETAIL_EXPERT  300
def PERF_DETAIL_WIZARD  400
type PERF_COUNTER_DEFINITION ByteLength CounterNameTitleIndex $CounterNameTitle CounterHelpTitleIndex $CounterHelpTitle DefaultScale DetailLevel CounterType CounterSize CounterOffset
def PERF_NO_UNIQUE_ID  -1
type PERF_INSTANCE_DEFINITION ByteLength ParentObjectTitleIndex ParentObjectInstance UniqueID NameOffset NameLength
type PERF_COUNTER_BLOCK ByteLength
def CDERR_DIALOGFAILURE  0xFFFF
def CDERR_GENERALCODES  0x0
def CDERR_STRUCTSIZE  0x1
def CDERR_INITIALIZATION  0x2
def CDERR_NOTEMPLATE  0x3
def CDERR_NOHINSTANCE  0x4
def CDERR_LOADSTRFAILURE  0x5
def CDERR_FINDRESFAILURE  0x6
def CDERR_LOADRESFAILURE  0x7
def CDERR_LOCKRESFAILURE  0x8
def CDERR_MEMALLOCFAILURE  0x9
def CDERR_MEMLOCKFAILURE  0xA
def CDERR_NOHOOK     0xB
def CDERR_REGISTERMSGFAIL  0xC
def PDERR_PRINTERCODES  0x1000
def PDERR_SETUPFAILURE  0x1001
def PDERR_PARSEFAILURE  0x1002
def PDERR_RETDEFFAILURE  0x1003
def PDERR_LOADDRVFAILURE  0x1004
def PDERR_GETDEVMODEFAIL  0x1005
def PDERR_INITFAILURE  0x1006
def PDERR_NODEVICES  0x1007
def PDERR_NODEFAULTPRN  0x1008
def PDERR_DNDMMISMATCH  0x1009
def PDERR_CREATEICFAILURE  0x100A
def PDERR_PRINTERNOTFOUND  0x100B
def PDERR_DEFAULTDIFFERENT  0x100C
def CFERR_CHOOSEFONTCODES  0x2000
def CFERR_NOFONTS    0x2001
def CFERR_MAXLESSTHANMIN  0x2002
def FNERR_FILENAMECODES  0x3000
def FNERR_SUBCLASSFAILURE  0x3001
def FNERR_INVALIDFILENAME  0x3002
def FNERR_BUFFERTOOSMALL  0x3003
def FRERR_FINDREPLACECODES  0x4000
def FRERR_BUFFERLENGTHZERO  0x4001
def CCERR_CHOOSECOLORCODES  0x5000
def LZERROR_BADINHANDLE  (-1)
def LZERROR_BADOUTHANDLE  (-2)
def LZERROR_READ     (-3)
def LZERROR_WRITE    (-4)
def LZERROR_PUBLICLOC  (-5)
def LZERROR_GLOBLOCK  (-6)
def LZERROR_BADVALUE  (-7)
def LZERROR_UNKNOWNALG  (-8)
dll lz32.dll #LZCopy hfSource hfDest
dll lz32.dll #LZInit hfSrc
dll lz32.dll #GetExpandedName $lpszSource $lpszBuffer
dll lz32.dll #LZOpenFile $lpszFile OFSTRUCT*lpOf style
dll lz32.dll #LZSeek hfFile lOffset nOrigin
dll lz32.dll #LZRead hfFile $lpvBuf cbread
dll lz32.dll LZClose hfFile
def VK_PROCESSKEY    0xE5
type COMPOSITIONFORM dwStyle POINT'ptCurrentPos RECT'rcArea
type CANDIDATEFORM dwIndex dwStyle POINT'ptCurrentPos RECT'rcArea
type CANDIDATELIST dwSize dwStyle dwCount dwSelection dwPageStart dwPageSize dwOffset[1]
def STYLE_DESCRIPTION_SIZE  32
type STYLEBUF dwStyle !szDescription[STYLE_DESCRIPTION_SIZE]
dll imm32.dll #ImmInstallIME $lpszIMEFileName $lpszLayoutText
dll imm32.dll #ImmGetDefaultIMEWnd hWnd
dll imm32.dll #ImmGetDescription hkl $lpsz uBufLen
dll imm32.dll #ImmGetIMEFileName hkl $lpStr uBufLen
dll imm32.dll #ImmGetProperty hkl dw
dll imm32.dll #ImmIsIME hkl
dll imm32.dll #ImmSimulateHotKey hWnd dw
dll imm32.dll #ImmCreateContext
dll imm32.dll #ImmDestroyContext himc
dll imm32.dll #ImmGetContext hWnd
dll imm32.dll #ImmReleaseContext hWnd himc
dll imm32.dll #ImmAssociateContext hWnd himc
dll imm32.dll #ImmGetCompositionString himc dw !*lpv dw2
dll imm32.dll #ImmSetCompositionString himc dwIndex !*lpComp dw !*lpRead dw2
dll imm32.dll #ImmGetCandidateListCount himc *lpdwListCount
dll imm32.dll #ImmGetCandidateList himc deIndex CANDIDATELIST*lpCandidateList dwBufLen
dll imm32.dll #ImmGetGuideLine himc dwIndex $lpStr dwBufLen
dll imm32.dll #ImmGetConversionStatus himc *lpdw *lpdw2
dll imm32.dll #ImmSetConversionStatus himc dw1 dw2
dll imm32.dll #ImmGetOpenStatus himc
dll imm32.dll #ImmSetOpenStatus himc b
dll imm32.dll #ImmGetCompositionFont himc LOGFONT*lpLogFont
dll imm32.dll #ImmSetCompositionFont himc LOGFONT*lpLogFont
dll imm32.dll #ImmConfigureIME hkl hWnd dw
dll imm32.dll #ImmEscape hkl himc un !*lpv
dll imm32.dll #ImmGetConversionList hkl himc $lpsz CANDIDATELIST*lpCandidateList dwBufLen uFlag
dll imm32.dll #ImmNotifyIME himc dwAction dwIndex dwValue
dll imm32.dll #ImmGetStatusWindowPos himc POINT*lpPoint
dll imm32.dll #ImmSetStatusWindowPos himc POINT*lpPoint
dll imm32.dll #ImmGetCompositionWindow himc COMPOSITIONFORM*lpCompositionForm
dll imm32.dll #ImmSetCompositionWindow himc COMPOSITIONFORM*lpCompositionForm
dll imm32.dll #ImmGetCandidateWindow himc dw CANDIDATEFORM*lpCandidateForm
dll imm32.dll #ImmSetCandidateWindow himc CANDIDATEFORM*lpCandidateForm
dll imm32.dll #ImmIsUIMessage hWnd un wParam lParam
dll imm32.dll #ImmGetVirtualKey hWnd
dll imm32.dll #ImmRegisterWord hkl $lpszReading dw $lpszRegister
dll imm32.dll #ImmUnregisterWord hkl $lpszReading dw $lpszUnregister
dll imm32.dll #ImmGetRegisterWordStyle hkl nItem STYLEBUF*lpStyleBuf
dll imm32.dll #ImmEnumRegisterWord hkl RegisterWordEnumProc $lpszReading dw $lpszRegister !*lpv
def WM_CONVERTREQUESTEX  0x108
def WM_IME_STARTCOMPOSITION  0x10D
def WM_IME_ENDCOMPOSITION  0x10E
def WM_IME_COMPOSITION  0x10F
def WM_IME_KEYLAST   0x10F
def WM_IME_SETCONTEXT  0x281
def WM_IME_NOTIFY    0x282
def WM_IME_CONTROL   0x283
def WM_IME_COMPOSITIONFULL  0x284
def WM_IME_SELECT    0x285
def WM_IME_CHAR      0x286
def WM_IME_KEYDOWN   0x290
def WM_IME_KEYUP     0x291
def IMC_GETCANDIDATEPOS  0x7
def IMC_SETCANDIDATEPOS  0x8
def IMC_GETCOMPOSITIONFONT  0x9
def IMC_SETCOMPOSITIONFONT  0xA
def IMC_GETCOMPOSITIONWINDOW  0xB
def IMC_SETCOMPOSITIONWINDOW  0xC
def IMC_GETSTATUSWINDOWPOS  0xF
def IMC_SETSTATUSWINDOWPOS  0x10
def IMC_CLOSESTATUSWINDOW  0x21
def IMC_OPENSTATUSWINDOW  0x22
def NI_OPENCANDIDATE  0x10
def NI_CLOSECANDIDATE  0x11
def NI_SELECTCANDIDATESTR  0x12
def NI_CHANGECANDIDATELIST  0x13
def NI_FINALIZECONVERSIONRESULT  0x14
def NI_COMPOSITIONSTR  0x15
def NI_SETCANDIDATE_PAGESTART  0x16
def NI_SETCANDIDATE_PAGESIZE  0x17
def ISC_SHOWUICANDIDATEWINDOW  0x1
def ISC_SHOWUICOMPOSITIONWINDOW  0x80000000
def ISC_SHOWUIGUIDELINE  0x40000000
def ISC_SHOWUIALLCANDIDATEWINDOW  0xF
def ISC_SHOWUIALL    0xC000000F
def CPS_COMPLETE     0x1
def CPS_CONVERT      0x2
def CPS_REVERT       0x3
def CPS_CANCEL       0x4
def IME_CHOTKEY_IME_NONIME_TOGGLE  0x10
def IME_CHOTKEY_SHAPE_TOGGLE  0x11
def IME_CHOTKEY_SYMBOL_TOGGLE  0x12
def IME_JHOTKEY_CLOSE_OPEN  0x30
def IME_KHOTKEY_SHAPE_TOGGLE  0x50
def IME_KHOTKEY_HANJACONVERT  0x51
def IME_KHOTKEY_ENGLISH  0x52
def IME_THOTKEY_IME_NONIME_TOGGLE  0x70
def IME_THOTKEY_SHAPE_TOGGLE  0x71
def IME_THOTKEY_SYMBOL_TOGGLE  0x72
def IME_HOTKEY_DSWITCH_FIRST  0x100
def IME_HOTKEY_DSWITCH_LAST  0x11F
def IME_ITHOTKEY_RESEND_RESULTSTR  0x200
def IME_ITHOTKEY_PREVIOUS_COMPOSITION  0x201
def IME_ITHOTKEY_UISTYLE_TOGGLE  0x202
def GCS_COMPREADSTR  0x1
def GCS_COMPREADATTR  0x2
def GCS_COMPREADCLAUSE  0x4
def GCS_COMPSTR      0x8
def GCS_COMPATTR     0x10
def GCS_COMPCLAUSE   0x20
def GCS_CURSORPOS    0x80
def GCS_DELTASTART   0x100
def GCS_RESULTREADSTR  0x200
def GCS_RESULTREADCLAUSE  0x400
def GCS_RESULTSTR    0x800
def GCS_RESULTCLAUSE  0x1000
def CS_INSERTCHAR    0x2000
def CS_NOMOVECARET   0x4000
def IME_PROP_AT_CARET  0x10000
def IME_PROP_SPECIAL_UI  0x20000
def IME_PROP_CANDLIST_START_FROM_1  0x40000
def IME_PROP_UNICODE  0x80000
def UI_CAP_2700      0x1
def UI_CAP_ROT90     0x2
def UI_CAP_ROTANY    0x4
def SCS_CAP_COMPSTR  0x1
def SCS_CAP_MAKEREAD  0x2
def SELECT_CAP_CONVERSION  0x1
def SELECT_CAP_SENTENCE  0x2
def GGL_LEVEL        0x1
def GGL_INDEX        0x2
def GGL_STRING       0x3
def GGL_PRIVATE      0x4
def GL_LEVEL_NOGUIDELINE  0x0
def GL_LEVEL_FATAL   0x1
def GL_LEVEL_ERROR   0x2
def GL_LEVEL_WARNING  0x3
def GL_LEVEL_INFORMATION  0x4
def GL_ID_UNKNOWN    0x0
def GL_ID_NOMODULE   0x1
def GL_ID_NODICTIONARY  0x10
def GL_ID_CANNOTSAVE  0x11
def GL_ID_NOCONVERT  0x20
def GL_ID_TYPINGERROR  0x21
def GL_ID_TOOMANYSTROKE  0x22
def GL_ID_READINGCONFLICT  0x23
def GL_ID_INPUTREADING  0x24
def GL_ID_INPUTRADICAL  0x25
def GL_ID_INPUTCODE  0x26
def GL_ID_INPUTSYMBOL  0x27
def GL_ID_CHOOSECANDIDATE  0x28
def GL_ID_REVERSECONVERSION  0x29
def GL_ID_PRIVATE_FIRST  0x8000
def GL_ID_PRIVATE_LAST  0xFFFF
def IGP_PROPERTY     0x4
def IGP_CONVERSION   0x8
def IGP_SENTENCE     0xC
def IGP_UI           0x10
def IGP_SETCOMPSTR   0x14
def IGP_SELECT       0x18
def SCS_SETSTR       (GCS_COMPREADSTR |  GCS_COMPSTR)
def SCS_CHANGEATTR   (GCS_COMPREADATTR |  GCS_COMPATTR)
def SCS_CHANGECLAUSE  (GCS_COMPREADCLAUSE |  GCS_COMPCLAUSE)
def ATTR_INPUT       0x0
def ATTR_TARGET_CONVERTED  0x1
def ATTR_CONVERTED   0x2
def ATTR_TARGET_NOTCONVERTED  0x3
def ATTR_INPUT_ERROR  0x4
def CFS_DEFAULT      0x0
def CFS_RECT         0x1
def CFS_POINT        0x2
def CFS_SCREEN       0x4
def CFS_FORCE_POSITION  0x20
def CFS_CANDIDATEPOS  0x40
def CFS_EXCLUDE      0x80
def GCL_CONVERSION   0x1
def GCL_REVERSECONVERSION  0x2
def GCL_REVERSE_LENGTH  0x3
def IME_CMODE_ALPHANUMERIC  0x0
def IME_CMODE_NATIVE  0x1
def IME_CMODE_CHINESE  IME_CMODE_NATIVE
def IME_CMODE_HANGEUL  IME_CMODE_NATIVE
def IME_CMODE_JAPANESE  IME_CMODE_NATIVE
def IME_CMODE_KATAKANA  0x2
def IME_CMODE_LANGUAGE  0x3
def IME_CMODE_FULLSHAPE  0x8
def IME_CMODE_ROMAN  0x10
def IME_CMODE_CHARCODE  0x20
def IME_CMODE_HANJACONVERT  0x40
def IME_CMODE_SOFTKBD  0x80
def IME_CMODE_NOCONVERSION  0x100
def IME_CMODE_EUDC   0x200
def IME_CMODE_SYMBOL  0x400
def IME_SMODE_NONE   0x0
def IME_SMODE_PLAURALCLAUSE  0x1
def IME_SMODE_SINGLECONVERT  0x2
def IME_SMODE_AUTOMATIC  0x4
def IME_SMODE_PHRASEPREDICT  0x8
def IME_CAND_UNKNOWN  0x0
def IME_CAND_READ    0x1
def IME_CAND_CODE    0x2
def IME_CAND_MEANING  0x3
def IME_CAND_RADICAL  0x4
def IME_CAND_STROKE  0x5
def IMN_CLOSESTATUSWINDOW  0x1
def IMN_OPENSTATUSWINDOW  0x2
def IMN_CHANGECANDIDATE  0x3
def IMN_CLOSECANDIDATE  0x4
def IMN_OPENCANDIDATE  0x5
def IMN_SETCONVERSIONMODE  0x6
def IMN_SETSENTENCEMODE  0x7
def IMN_SETOPENSTATUS  0x8
def IMN_SETCANDIDATEPOS  0x9
def IMN_SETCOMPOSITIONFONT  0xA
def IMN_SETCOMPOSITIONWINDOW  0xB
def IMN_SETSTATUSWINDOWPOS  0xC
def IMN_GUIDELINE    0xD
def IMN_PRIVATE      0xE
def IMM_ERROR_NODATA  (-1)
def IMM_ERROR_GENERAL  (-2)
def IME_CONFIG_GENERAL  1
def IME_CONFIG_REGISTERWORD  2
def IME_CONFIG_SELECTDICTIONARY  3
def IME_ESC_QUERY_SUPPORT  0x3
def IME_ESC_RESERVED_FIRST  0x4
def IME_ESC_RESERVED_LAST  0x7FF
def IME_ESC_PRIVATE_FIRST  0x800
def IME_ESC_PRIVATE_LAST  0xFFF
def IME_ESC_SEQUENCE_TO_INTERNAL  0x1001
def IME_ESC_GET_EUDC_DICTIONARY  0x1003
def IME_ESC_SET_EUDC_DICTIONARY  0x1004
def IME_ESC_MAX_KEY  0x1005
def IME_ESC_IME_NAME  0x1006
def IME_ESC_SYNC_HOTKEY  0x1007
def IME_ESC_HANJA_MODE  0x1008
def IME_REGWORD_STYLE_EUDC  0x1
def IME_REGWORD_STYLE_USER_FIRST  0x80000000
def IME_REGWORD_STYLE_USER_LAST  0xFFFF
def SOFTKEYBOARD_TYPE_T1  0x1
def SOFTKEYBOARD_TYPE_C1  0x2
type MODEMDEVCAPS dwActualSize dwRequiredSize dwDevSpecificOffset dwDevSpecificSize dwModemProviderVersion dwModemManufacturerOffset dwModemManufacturerSize dwModemModelOffset dwModemModelSize dwModemVersionOffset dwModemVersionSize dwDialOptions dwCallSetupFailTimer dwInactivityTimeout dwSpeakerVolume dwSpeakerMode dwModemOptions dwMaxDTERate dwMaxDCERate !abVariablePortion[1]
type MODEMSETTINGS dwActualSize dwRequiredSize dwDevSpecificOffset dwDevSpecificSize dwCallSetupFailTimer dwInactivityTimeout dwSpeakerVolume dwSpeakerMode dwPreferredModemOptions dwNegotiatedModemOptions dwNegotiatedDCERate !abVariablePortion[1]
def DIALOPTION_BILLING  0x40
def DIALOPTION_QUIET  0x80
def DIALOPTION_DIALTONE  0x100
def MDMVOLFLAG_LOW   0x1
def MDMVOLFLAG_MEDIUM  0x2
def MDMVOLFLAG_HIGH  0x4
def MDMVOL_LOW       0x0
def MDMVOL_MEDIUM    0x1
def MDMVOL_HIGH      0x2
def MDMSPKRFLAG_OFF  0x1
def MDMSPKRFLAG_DIAL  0x2
def MDMSPKRFLAG_ON   0x4
def MDMSPKRFLAG_CALLSETUP  0x8
def MDMSPKR_OFF      0x0
def MDMSPKR_DIAL     0x1
def MDMSPKR_ON       0x2
def MDMSPKR_CALLSETUP  0x3
def MDM_COMPRESSION  0x1
def MDM_ERROR_CONTROL  0x2
def MDM_FORCED_EC    0x4
def MDM_CELLULAR     0x8
def MDM_FLOWCONTROL_HARD  0x10
def MDM_FLOWCONTROL_SOFT  0x20
def MDM_CCITT_OVERRIDE  0x40
def MDM_SPEED_ADJUST  0x80
def MDM_TONE_DIAL    0x100
def MDM_BLIND_DIAL   0x200
def MDM_V23_OVERRIDE  0x400
dll shell32.dll #DragQueryFile HDROP UINT $lpStr ch
dll shell32.dll #DragQueryPoint HDROP POINT*lpPoint
dll shell32.dll DragFinish hDrop
dll shell32.dll DragAcceptFiles hWnd fAccept
dll shell32.dll #ShellExecute hWnd $lpOperation $lpFile $lpParameters $lpDirectory nShowCmd
dll shell32.dll #ShellExecuteEx SHELLEXECUTEINFO*lpExecInfo
dll shell32.dll #FindExecutable $lpFile $lpDirectory $lpResult
dll shell32.dll #ShellAbout hWnd $szApp $szOtherStuff hIcon
dll shell32.dll #DuplicateIcon hInst hIcon
dll shell32.dll #ExtractAssociatedIcon hInst $lpIconPath *lpiIcon
dll shell32.dll #ExtractIcon hInst $lpszExeFileName nIconIndex
type DRAGINFO uSize POINT'pt fNC $lpFileList grfKeyState
def ABM_NEW          0x0
def ABM_REMOVE       0x1
def ABM_QUERYPOS     0x2
def ABM_SETPOS       0x3
def ABM_GETSTATE     0x4
def ABM_GETTASKBARPOS  0x5
def ABM_ACTIVATE     0x6
def ABM_GETAUTOHIDEBAR  0x7
def ABM_SETAUTOHIDEBAR  0x8
def ABM_WINDOWPOSCHANGED  0x9
def ABN_STATECHANGE  0x0
def ABN_POSCHANGED   0x1
def ABN_FULLSCREENAPP  0x2
def ABN_WINDOWARRANGE  0x3
def ABS_AUTOHIDE     0x1
def ABS_ALWAYSONTOP  0x2
def ABE_LEFT         0
def ABE_TOP          1
def ABE_RIGHT        2
def ABE_BOTTOM       3
type APPBARDATA cbSize hWnd uCallbackMessage uEdge RECT'rc lParam
dll shell32.dll #SHAppBarMessage dwMessage APPBARDATA*pData
dll shell32.dll #DoEnvironmentSubst $szString cbString
dll shell32.dll $FindEnvironmentString $szEnvVar
def EIRESID          -1
dll shell32.dll #ExtractIconEx $lpszFile nIconIndex *phiconLarge *phiconSmall nIcons
def FO_MOVE          0x1
def FO_COPY          0x2
def FO_DELETE        0x3
def FO_RENAME        0x4
def FOF_MULTIDESTFILES  0x1
def FOF_CONFIRMMOUSE  0x2
def FOF_SILENT       0x4
def FOF_RENAMEONCOLLISION  0x8
def FOF_NOCONFIRMATION  0x10
def FOF_WANTMAPPINGHANDLE  0x20
def FOF_ALLOWUNDO    0x40
def FOF_FILESONLY    0x80
def FOF_SIMPLEPROGRESS  0x100
def FOF_NOCONFIRMMKDIR  0x200
def PO_DELETE        0x13
def PO_RENAME        0x14
def PO_PORTCHANGE    0x20
def PO_REN_PORT      0x34
type SHFILEOPSTRUCT hWnd wFunc $pFrom $pTo @fFlags fAnyOperationsAborted hNameMappings $lpszProgressTitle
dll shell32.dll #SHFileOperation SHFILEOPSTRUCT*lpFileOp
dll shell32.dll SHFreeNameMappings hNameMappings
type SHNAMEMAPPING $pszOldPath $pszNewPath cchOldPath cchNewPath
def SE_ERR_FNF       2
def SE_ERR_PNF       3
def SE_ERR_ACCESSDENIED  5
def SE_ERR_OOM       8
def SE_ERR_DLLNOTFOUND  32
def SEE_MASK_CLASSNAME  0x1
def SEE_MASK_CLASSKEY  0x3
def SEE_MASK_IDLIST  0x4
def SEE_MASK_INVOKEIDLIST  0xC
def SEE_MASK_ICON    0x10
def SEE_MASK_HOTKEY  0x20
def SEE_MASK_NOCLOSEPROCESS  0x40
def SEE_MASK_CONNECTNETDRV  0x80
def SEE_MASK_FLAG_DDEWAIT  0x100
def SEE_MASK_DOENVSUBST  0x200
def SEE_MASK_FLAG_NO_UI  0x400
type SHELLEXECUTEINFO cbSize fMask hWnd $lpVerb $lpFile $lpParameters $lpDirectory nShow hInstApp lpIDList $lpClass hkeyClass dwHotKey hIcon hProcess
dll shell32.dll WinExecError hWnd error $lpstrFileName $lpstrTitle
type NOTIFYICONDATA cbSize hWnd uID uFlags uCallbackMessage hIcon !szTip[64]
def NIM_ADD          0x0
def NIM_MODIFY       0x1
def NIM_DELETE       0x2
def NIF_MESSAGE      0x1
def NIF_ICON         0x2
def NIF_TIP          0x4
dll shell32.dll #Shell_NotifyIcon dwMessage NOTIFYICONDATA*lpData
type SHFILEINFO hIcon iIcon dwAttributes !szDisplayName[MAX_PATH] !szTypeName[80]
def SHGFI_ICON       0x100
def SHGFI_DISPLAYNAME  0x200
def SHGFI_TYPENAME   0x400
def SHGFI_ATTRIBUTES  0x800
def SHGFI_ICONLOCATION  0x1000
def SHGFI_EXETYPE    0x2000
def SHGFI_SYSICONINDEX  0x4000
def SHGFI_LINKOVERLAY  0x8000
def SHGFI_SELECTED   0x10000
def SHGFI_LARGEICON  0x0
def SHGFI_SMALLICON  0x1
def SHGFI_OPENICON   0x2
def SHGFI_SHELLICONSIZE  0x4
def SHGFI_PIDL       0x8
def SHGFI_USEFILEATTRIBUTES  0x10
dll shell32.dll #SHGetFileInfo $pszPath dwFileAttributes SHFILEINFO*psfi cbFileInfo uFlags
dll shell32.dll #SHGetNewLinkInfo $pszLinkto $pszDir $pszName *pfMustCopy uFlags
def SHGNLI_PIDL      0x1
def SHGNLI_PREFIXNAME  0x2
def VS_VERSION_INFO  1
def VS_USER_DEFINED  100
def VS_FFI_SIGNATURE  0xFEEF04BD
def VS_FFI_STRUCVERSION  0x10000
def VS_FFI_FILEFLAGSMASK  0x3F
def VS_FF_DEBUG      0x1
def VS_FF_PRERELEASE  0x2
def VS_FF_PATCHED    0x4
def VS_FF_PRIVATEBUILD  0x8
def VS_FF_INFOINFERRED  0x10
def VS_FF_SPECIALBUILD  0x20
def VOS_UNKNOWN      0x0
def VOS_DOS          0x10000
def VOS_OS216        0x20000
def VOS_OS232        0x30000
def VOS_NT           0x40000
def VOS__BASE        0x0
def VOS__WINDOWS16   0x1
def VOS__PM16        0x2
def VOS__PM32        0x3
def VOS__WINDOWS32   0x4
def VOS_DOS_WINDOWS16  0x10001
def VOS_DOS_WINDOWS32  0x10004
def VOS_OS216_PM16   0x20002
def VOS_OS232_PM32   0x30003
def VOS_NT_WINDOWS32  0x40004
def VFT_UNKNOWN      0x0
def VFT_APP          0x1
def VFT_DLL          0x2
def VFT_DRV          0x3
def VFT_FONT         0x4
def VFT_VXD          0x5
def VFT_STATIC_LIB   0x7
def VFT2_UNKNOWN     0x0
def VFT2_DRV_PRINTER  0x1
def VFT2_DRV_KEYBOARD  0x2
def VFT2_DRV_LANGUAGE  0x3
def VFT2_DRV_DISPLAY  0x4
def VFT2_DRV_MOUSE   0x5
def VFT2_DRV_NETWORK  0x6
def VFT2_DRV_SYSTEM  0x7
def VFT2_DRV_INSTALLABLE  0x8
def VFT2_DRV_SOUND   0x9
def VFT2_DRV_COMM    0xA
def VFT2_DRV_INPUTMETHOD  0xB
def VFT2_FONT_RASTER  0x1
def VFT2_FONT_VECTOR  0x2
def VFT2_FONT_TRUETYPE  0x3
def VFFF_ISSHAREDFILE  0x1
def VFF_CURNEDEST    0x1
def VFF_FILEINUSE    0x2
def VFF_BUFFTOOSMALL  0x4
def VIFF_FORCEINSTALL  0x1
def VIFF_DONTDELETEOLD  0x2
def VIF_TEMPFILE     0x1
def VIF_MISMATCH     0x2
def VIF_SRCOLD       0x4
def VIF_DIFFLANG     0x8
def VIF_DIFFCODEPG   0x10
def VIF_DIFFTYPE     0x20
def VIF_WRITEPROT    0x40
def VIF_FILEINUSE    0x80
def VIF_OUTOFSPACE   0x100
def VIF_ACCESSVIOLATION  0x200
def VIF_SHARINGVIOLATION  0x400
def VIF_CANNOTCREATE  0x800
def VIF_CANNOTDELETE  0x1000
def VIF_CANNOTRENAME  0x2000
def VIF_CANNOTDELETECUR  0x4000
def VIF_OUTOFMEMORY  0x8000
def VIF_CANNOTREADSRC  0x10000
def VIF_CANNOTREADDST  0x20000
def VIF_BUFFTOOSMALL  0x40000
type VS_FIXEDFILEINFO dwSignature dwStrucVersion dwFileVersionMS dwFileVersionLS dwProductVersionMS dwProductVersionLS dwFileFlagsMask dwFileFlags dwFileOS dwFileType dwFileSubtype dwFileDateMS dwFileDateLS
dll version.dll #VerFindFile uFlags $szFileName $szWinDir $szAppDir $szCurDir *lpuCurDirLen $szDestDir *lpuDestDirLen
dll version.dll #VerInstallFile uFlags $szSrcFileName $szDestFileName $szSrcDir $szDestDir $szCurDir $szTmpFile *lpuTmpFileLen
dll version.dll #GetFileVersionInfoSize $lptstrFilename *lpdwHandle
dll version.dll #GetFileVersionInfo $lptstrFilename dwHandle dwLen !*lpData
dll kernel32 #VerLanguageName wLang $szLang nSize
dll version.dll #VerQueryValue !*pBlock $lpSubBlock lplpBuffer *puLen
type ICONMETRICS cbSize iHorzSpacing iVertSpacing iTitleWrap LOGFONT'lfFont
type HELPINFO cbSize iContextType iCtrlId hItemHandle dwContextId POINT'MousePos
type ANIMATIONINFO cbSize iMinAnimate
type MINIMIZEDMETRICS cbSize iWidth iHorzGap iVertGap iArrange LOGFONT'lfFont
dll kernel32 #HeapValidate hHeap dwFlags !*lpMem
dll kernel32 #HeapCompact hHeap dwFlags
def PROCESS_HEAP_REGION  0x1
def PROCESS_HEAP_UNCOMMITTED_RANGE  0x2
def PROCESS_HEAP_ENTRY_BUSY  0x4
def PROCESS_HEAP_ENTRY_MOVEABLE  0x10
def PROCESS_HEAP_ENTRY_DDESHARE  0x20
dll kernel32 #HeapLock hHeap
dll kernel32 #HeapUnlock hHeap
def SCS_32BIT_BINARY  0
def SCS_DOS_BINARY   1
def SCS_WOW_BINARY   2
def SCS_PIF_BINARY   3
def SCS_POSIX_BINARY  4
def SCS_OS216_BINARY  5
dll kernel32 #GetBinaryType $lpApplicationName *lpBinaryType
dll kernel32 #GetShortPathName $lpszLongPath $lpszShortPath cchBuffer
dll kernel32 #GetProcessAffinityMask hProcess *lpProcessAffinityMask *SystemAffinityMask
def LOGON32_LOGON_INTERACTIVE  2
def LOGON32_LOGON_BATCH  4
def LOGON32_LOGON_SERVICE  5
def LOGON32_PROVIDER_DEFAULT  0
def LOGON32_PROVIDER_WINNT35  1
dll advapi32.dll #LogonUser $lpszUsername $lpszDomain $lpszPassword dwLogonType dwLogonProvider *phToken
dll kernel32 #ImpersonateLoggedOnUser hToken
dll kernel32 #CreateProcessAsUser hToken $lpApplicationName $lpCommandLine SECURITY_ATTRIBUTES'lpProcessAttributes SECURITY_ATTRIBUTES'lpThreadAttributes bInheritHandles dwCreationFlags $lpEnvironment $lpCurrentDirectory STARTUPINFO'lpStartupInfo PROCESS_INFORMATION'lpProcessInformation
type OSVERSIONINFO dwOSVersionInfoSize dwMajorVersion dwMinorVersion dwBuildNumber dwPlatformId !szCSDVersion[128]
def VER_PLATFORM_WIN32s  0
def VER_PLATFORM_WIN32_WINDOWS  1
def VER_PLATFORM_WIN32_NT  2
dll kernel32 #GetVersionEx OSVERSIONINFO*lpVersionInformation
def AC_LINE_OFFLINE  0x0
def AC_LINE_ONLINE   0x1
def AC_LINE_BACKUP_POWER  0x2
def AC_LINE_UNKNOWN  0xFF
def BATTERY_FLAG_HIGH  0x1
def BATTERY_FLAG_LOW  0x2
def BATTERY_FLAG_CRITICAL  0x4
def BATTERY_FLAG_CHARGING  0x8
def BATTERY_FLAG_NO_BATTERY  0x80
def BATTERY_FLAG_UNKNOWN  0xFF
def BATTERY_PERCENTAGE_UNKNOWN  0xFF
def BATTERY_LIFE_UNKNOWN  0xFFFF
type SYSTEM_POWER_STATUS !ACLineStatus !BatteryFlag !BatteryLifePercent !Reserved1 BatteryLifeTime BatteryFullLifeTime
dll kernel32 #GetSystemPowerStatus SYSTEM_POWER_STATUS*lpSystemPowerStatus
dll kernel32 #SetSystemPowerState fSuspend fForce
type OPENFILENAME lStructSize hWndOwner hInstance $lpstrFilter $lpstrCustomFilter nMaxCustFilter nFilterIndex $lpstrFile nMaxFile $lpstrFileTitle nMaxFileTitle $lpstrInitialDir $lpstrTitle flags @nFileOffset @nFileExtension $lpstrDefExt lCustData lpfnHook $lpTemplateName
dll comdlg32.dll #GetOpenFileName OPENFILENAME*pOpenfilename
dll comdlg32.dll #GetSaveFileName OPENFILENAME*pOpenfilename
dll comdlg32.dll #GetFileTitle $lpszFile $lpszTitle @cbBuf
def OFN_READONLY     0x1
def OFN_OVERWRITEPROMPT  0x2
def OFN_HIDEREADONLY  0x4
def OFN_NOCHANGEDIR  0x8
def OFN_SHOWHELP     0x10
def OFN_ENABLEHOOK   0x20
def OFN_ENABLETEMPLATE  0x40
def OFN_ENABLETEMPLATEHANDLE  0x80
def OFN_NOVALIDATE   0x100
def OFN_ALLOWMULTISELECT  0x200
def OFN_EXTENSIONDIFFERENT  0x400
def OFN_PATHMUSTEXIST  0x800
def OFN_FILEMUSTEXIST  0x1000
def OFN_CREATEPROMPT  0x2000
def OFN_SHAREAWARE   0x4000
def OFN_NOREADONLYRETURN  0x8000
def OFN_NOTESTFILECREATE  0x10000
def OFN_NONETWORKBUTTON  0x20000
def OFN_NOLONGNAMES  0x40000
def OFN_EXPLORER     0x80000
def OFN_NODEREFERENCELINKS  0x100000
def OFN_LONGNAMES    0x200000
def OFN_SHAREFALLTHROUGH  2
def OFN_SHARENOWARN  1
def OFN_SHAREWARN    0
type NMHDR hWndFrom idFrom code
type OFNOTIFY NMHDR'hdr OPENFILENAME'lpOFN $pszFile
def CDM_FIRST        (WM_USER + 100)
def CDM_LAST         (WM_USER + 200)
def CDM_GETSPEC      (CDM_FIRST + 0x0)
def CDM_GETFILEPATH  (CDM_FIRST + 0x1)
def CDM_GETFOLDERPATH  (CDM_FIRST + 0x2)
def CDM_GETFOLDERIDLIST  (CDM_FIRST + 0x3)
def CDM_SETCONTROLTEXT  (CDM_FIRST + 0x4)
def CDM_HIDECONTROL  (CDM_FIRST + 0x5)
def CDM_SETDEFEXT    (CDM_FIRST + 0x6)
type CHOOSECOLOR lStructSize hWndOwner hInstance rgbResult $lpCustColors flags lCustData lpfnHook $lpTemplateName
dll comdlg32.dll #ChooseColor CHOOSECOLOR*pChoosecolor
def CC_RGBINIT       0x1
def CC_FULLOPEN      0x2
def CC_PREVENTFULLOPEN  0x4
def CC_SHOWHELP      0x8
def CC_ENABLEHOOK    0x10
def CC_ENABLETEMPLATE  0x20
def CC_ENABLETEMPLATEHANDLE  0x40
def CC_SOLIDCOLOR    0x80
def CC_ANYCOLOR      0x100
type FINDREPLACE lStructSize hWndOwner hInstance flags $lpstrFindWhat $lpstrReplaceWith @wFindWhatLen @wReplaceWithLen lCustData lpfnHook $lpTemplateName
def FR_DOWN          0x1
def FR_WHOLEWORD     0x2
def FR_MATCHCASE     0x4
def FR_FINDNEXT      0x8
def FR_REPLACE       0x10
def FR_REPLACEALL    0x20
def FR_DIALOGTERM    0x40
def FR_SHOWHELP      0x80
def FR_ENABLEHOOK    0x100
def FR_ENABLETEMPLATE  0x200
def FR_NOUPDOWN      0x400
def FR_NOMATCHCASE   0x800
def FR_NOWHOLEWORD   0x1000
def FR_ENABLETEMPLATEHANDLE  0x2000
def FR_HIDEUPDOWN    0x4000
def FR_HIDEMATCHCASE  0x8000
def FR_HIDEWHOLEWORD  0x10000
dll comdlg32.dll #FindText FINDREPLACE*pFindreplace
dll comdlg32.dll #ReplaceText FINDREPLACE*pFindreplace
type CHOOSEFONT lStructSize hWndOwner hDC lpLogFont iPointSize flags rgbColors lCustData lpfnHook $lpTemplateName hInstance $lpszStyle @nFontType @MISSING_ALIGNMENT nSizeMin nSizeMax
dll comdlg32.dll #ChooseFont CHOOSEFONT*pChoosefont
def CF_SCREENFONTS   0x1
def CF_PRINTERFONTS  0x2
def CF_BOTH          (CF_SCREENFONTS |  CF_PRINTERFONTS)
def CF_SHOWHELP      0x4
def CF_ENABLEHOOK    0x8
def CF_ENABLETEMPLATE  0x10
def CF_ENABLETEMPLATEHANDLE  0x20
def CF_INITTOLOGFONTSTRUCT  0x40
def CF_USESTYLE      0x80
def CF_EFFECTS       0x100
def CF_APPLY         0x200
def CF_ANSIONLY      0x400
def CF_SCRIPTSONLY   CF_ANSIONLY
def CF_NOVECTORFONTS  0x800
def CF_NOOEMFONTS    CF_NOVECTORFONTS
def CF_NOSIMULATIONS  0x1000
def CF_LIMITSIZE     0x2000
def CF_FIXEDPITCHONLY  0x4000
def CF_WYSIWYG       0x8000
def CF_FORCEFONTEXIST  0x10000
def CF_SCALABLEONLY  0x20000
def CF_TTONLY        0x40000
def CF_NOFACESEL     0x80000
def CF_NOSTYLESEL    0x100000
def CF_NOSIZESEL     0x200000
def CF_SELECTSCRIPT  0x400000
def CF_NOSCRIPTSEL   0x800000
def CF_NOVERTFONTS   0x1000000
def SIMULATED_FONTTYPE  0x8000
def PRINTER_FONTTYPE  0x4000
def SCREEN_FONTTYPE  0x2000
def BOLD_FONTTYPE    0x100
def ITALIC_FONTTYPE  0x200
def REGULAR_FONTTYPE  0x400
def WM_CHOOSEFONT_GETLOGFONT  (WM_USER + 1)
def WM_CHOOSEFONT_SETLOGFONT  (WM_USER + 101)
def WM_CHOOSEFONT_SETFLAGS  (WM_USER + 102)
def LBSELCHSTRING    "commdlg_LBSelChangedNotify"
def SHAREVISTRING    "commdlg_ShareViolation"
def FILEOKSTRING     "commdlg_FileNameOK"
def COLOROKSTRING    "commdlg_ColorOK"
def SETRGBSTRING     "commdlg_SetRGBColor"
def HELPMSGSTRING    "commdlg_help"
def FINDMSGSTRING    "commdlg_FindReplace"
def CD_LBSELNOITEMS  -1
def CD_LBSELCHANGE   0
def CD_LBSELSUB      1
def CD_LBSELADD      2
type PRINTDLG lStructSize hWndOwner hDevMode hDevNames hDC flags @nFromPage @nToPage @nMinPage @nMaxPage @nCopies hInstance lCustData lpfnPrintHook lpfnSetupHook $lpPrintTemplateName $lpSetupTemplateName hPrintTemplate hSetupTemplate
dll comdlg32.dll #PrintDlg PRINTDLG*pPrintdlg
def PD_ALLPAGES      0x0
def PD_SELECTION     0x1
def PD_PAGENUMS      0x2
def PD_NOSELECTION   0x4
def PD_NOPAGENUMS    0x8
def PD_COLLATE       0x10
def PD_PRINTTOFILE   0x20
def PD_PRINTSETUP    0x40
def PD_NOWARNING     0x80
def PD_RETURNDC      0x100
def PD_RETURNIC      0x200
def PD_RETURNDEFAULT  0x400
def PD_SHOWHELP      0x800
def PD_ENABLEPRINTHOOK  0x1000
def PD_ENABLESETUPHOOK  0x2000
def PD_ENABLEPRINTTEMPLATE  0x4000
def PD_ENABLESETUPTEMPLATE  0x8000
def PD_ENABLEPRINTTEMPLATEHANDLE  0x10000
def PD_ENABLESETUPTEMPLATEHANDLE  0x20000
def PD_USEDEVMODECOPIES  0x40000
def PD_USEDEVMODECOPIESANDCOLLATE  0x40000
def PD_DISABLEPRINTTOFILE  0x80000
def PD_HIDEPRINTTOFILE  0x100000
def PD_NONETWORKBUTTON  0x200000
type DEVNAMES @wDriverOffset @wDeviceOffset @wOutputOffset @wDefault
def DN_DEFAULTPRN    0x1
dll comdlg32.dll #CommDlgExtendedError
def WM_PSD_PAGESETUPDLG  (WM_USER)
def WM_PSD_FULLPAGERECT  (WM_USER + 1)
def WM_PSD_MINMARGINRECT  (WM_USER + 2)
def WM_PSD_MARGINRECT  (WM_USER + 3)
def WM_PSD_GREEKTEXTRECT  (WM_USER + 4)
def WM_PSD_ENVSTAMPRECT  (WM_USER + 5)
def WM_PSD_YAFULLPAGERECT  (WM_USER + 6)
type PAGESETUPDLG lStructSize hWndOwner hDevMode hDevNames flags POINT'ptPaperSize RECT'rtMinMargin RECT'rtMargin hInstance lCustData lpfnPageSetupHook lpfnPagePaintHook $lpPageSetupTemplateName hPageSetupTemplate
dll comdlg32.dll #PageSetupDlg PAGESETUPDLG*pPagesetupdlg
def PSD_DEFAULTMINMARGINS  0x0
def PSD_INWININIINTLMEASURE  0x0
def PSD_MINMARGINS   0x1
def PSD_MARGINS      0x2
def PSD_INTHOUSANDTHSOFINCHES  0x4
def PSD_INHUNDREDTHSOFMILLIMETERS  0x8
def PSD_DISABLEMARGINS  0x10
def PSD_DISABLEPRINTER  0x20
def PSD_NOWARNING    0x80
def PSD_DISABLEORIENTATION  0x100
def PSD_RETURNDEFAULT  0x400
def PSD_DISABLEPAPER  0x200
def PSD_SHOWHELP     0x800
def PSD_ENABLEPAGESETUPHOOK  0x2000
def PSD_ENABLEPAGESETUPTEMPLATE  0x8000
def PSD_ENABLEPAGESETUPTEMPLATEHANDLE  0x20000
def PSD_ENABLEPAGEPAINTHOOK  0x40000
def PSD_DISABLEPAGEPAINTING  0x80000
dll user32 #DdeInitialize *pidInst pfnCallback afCmd ulRes
dll advapi32 #SetServiceBits hServiceStatus dwServiceBits bSetBitsOn bUpdateImmediately
dll lz32 #CopyLZFile n1 n2
dll lz32 #LZStart
dll lz32 LZDone
dll winmm #mciGetYieldProc mciId *pdwYieldData
dll winmm #mciSetYieldProc mciId fpYieldProc dwYieldData
dll winmm #midiOutGetNumDevs
dll winmm #mmioInstallIOProcA $fccIOProc pIOProc dwFlags
dll shell32 #CommandLineToArgvW $lpCmdLine @*pNumArgs
dll advapi32 #IsTextUnicode !*lpBuffer cb *lpi
dll advapi32 #NotifyChangeEventLog hEventLog hEvent
dll advapi32 #ObjectOpenAuditAlarm $SubsystemName !*HandleId $ObjectTypeName $ObjectName SECURITY_DESCRIPTOR*pSecurityDescriptor ClientToken DesiredAccess GrantedAccess PRIVILEGE_SET*Privileges ObjectCreation AccessGranted *GenerateOnClose
dll advapi32 #SetThreadToken *Thread Token
type COMMCONFIG dwSize @wVersion @wReserved DCB'dcbx dwProviderSubType dwProviderOffset dwProviderSize !wcProviderData
dll kernel32 #CommConfigDialog $lpszName hWnd COMMCONFIG*lpCC
dll kernel32 #CreateIoCompletionPort FileHandle ExistingCompletionPort CompletionKey NumberOfConcurrentThreads
dll kernel32 #DisableThreadLibraryCalls hLibModule
dll kernel32 #EnumResourceLanguages hModule $lpType $lpName lpEnumFunc lParam
dll kernel32 #EnumResourceNames hModule $lpType lpEnumFunc lParam
dll kernel32 #EnumResourceTypes hModule lpEnumFunc lParam
dll kernel32 #FreeEnvironmentStrings $lpsz
dll kernel32 FreeLibraryAndExitThread hLibModule dwExitCode
dll kernel32 #FreeResource hResData
dll kernel32 #GetCommConfig hCommDev COMMCONFIG*lpCC *lpdwSize
dll kernel32 #GetCompressedFileSize $lpFileName *lpFileSizeHigh
dll kernel32 #GetDefaultCommConfig $lpszName COMMCONFIG*lpCC *lpdwSize
dll kernel32 #GetHandleInformation hObject *lpdwFlags
dll kernel32 #GetProcessHeaps NumberOfHeaps *ProcessHeaps
dll kernel32 #GetProcessWorkingSetSize hProcess *lpMinimumWorkingSetSize *lpMaximumWorkingSetSize
dll kernel32 #GetQueuedCompletionStatus CompletionPort *lpNumberOfBytesTransferred *lpCompletionKey *lpOverlapped dwMilliseconds
dll kernel32 #GetSystemTimeAdjustment *lpTimeAdjustment *lpTimeIncrement *lpTimeAdjustmentDisabled
dll kernel32 #GlobalCompact dwMinFree
dll kernel32 GlobalFix hMem
dll kernel32 GlobalUnfix hMem
dll kernel32 #GlobalWire hMem
dll kernel32 #GlobalUnWire hMem
dll kernel32 #IsBadCodePtr lpfn
dll kernel32 #LocalCompact uMinFree
dll kernel32 #LocalShrink hMem cbNewSize
dll kernel32 #MapViewOfFile hFileMappingObject dwDesiredAccess dwFileOffsetHigh dwFileOffsetLow dwNumberOfBytesToMap
dll kernel32 #ReadFileEx hFile !*lpBuffer nNumberOfBytesToRead OVERLAPPED*lpOverlapped lpCompletionRoutine
dll kernel32 #SetCommConfig hCommDev COMMCONFIG*lpCC dwSize
dll kernel32 #SetDefaultCommConfig $lpszName COMMCONFIG*lpCC dwSize
dll kernel32 SetFileApisToANSI
dll kernel32 #SetHandleInformation hObject dwMask dwFlags
dll kernel32 #SetProcessWorkingSetSize hProcess dwMinimumWorkingSetSize dwMaximumWorkingSetSize
dll kernel32 #lstrcat $lpString1 $lpString2
dll kernel32 #lstrcpyn $lpString1 $lpString2 iMaxLength
dll kernel32 #lstrcpy $lpString1 $lpString2
dll kernel32 #SetSystemTimeAdjustment dwTimeAdjustment bTimeAdjustmentDisabled
dll kernel32 #SetThreadAffinityMask hThread dwThreadAffinityMask
dll kernel32 #SetUnhandledExceptionFilter lpTopLevelExceptionFilter
dll kernel32 #SystemTimeToTzSpecificLocalTime TIME_ZONE_INFORMATION*lpTimeZoneInformation SYSTEMTIME*lpUniversalTime SYSTEMTIME*lpLocalTime
dll kernel32 #WriteFileEx hFile !*lpBuffer nNumberOfBytesToWrite OVERLAPPED*lpOverlapped lpCompletionRoutine
type PIXELFORMATDESCRIPTOR @nSize @nVersion dwFlags !iPixelType !cColorBits !cRedBits !cRedShift !cGreenBits !cGreenShift !cBlueBits !cBlueShift !cAlphaBits !cAlphaShift !cAccumBits !cAccumRedBits !cAccumGreenBits !cAccumBlueBits !cAccumAlphaBits !cDepthBits !cStencilBits !cAuxBuffers !iLayerType !bReserved dwLayerMask dwVisibleMask dwDamageMask
dll gdi32 #ChoosePixelFormat hDC PIXELFORMATDESCRIPTOR*pPixelFormatDescriptor
dll gdi32 #CreateDIBSection hDC BITMAPINFO*pBitmapInfo un lplpVoid handle dw
dll gdi32 #DescribePixelFormat hDC n un PIXELFORMATDESCRIPTOR*lpPixelFormatDescriptor
dll gdi32 #EndDoc hDC
dll gdi32 #EnumFonts hDC $lpsz lpFontEnumProc lParam
dll gdi32 #EnumMetaFile hDC hMetafile lpMFEnumProc lParam
dll gdi32 #EnumObjects hDC n lpGOBJEnumProc !*lpVoid
dll gdi32 #FixBrushOrgEx hDC n1 n2 POINT*lpPoint
dll gdi32 #GetBrushOrgEx hDC POINT*lpPoint
dll gdi32 #GetCharWidth hDC un1 un2 *lpn
dll gdi32 #GetDIBColorTable hDC un1 un2 RGBQUAD*pRGBQuad
dll gdi32 #GetPixelFormat hDC
dll gdi32 #LineDDA n1 n2 n3 n4 lpLineDDAProc lParam
dll gdi32 #SetAbortProc hDC lpAbortProc
dll gdi32 #SetDIBColorTable hDC un1 un2 RGBQUAD*pcRGBQuad
dll gdi32 #SetPixelFormat hDC n PIXELFORMATDESCRIPTOR*pcPixelFormatDescriptor
dll gdi32 #SwapBuffers hDC
dll kernel32 #EnumCalendarInfo lpCalInfoEnumProc Locale Calendar CalType
dll kernel32 #GetCurrencyFormat Locale dwFlags $lpValue CURRENCYFMT*lpFormat $lpCurrencyStr cchCurrency
dll kernel32 #GetNumberFormat Locale dwFlags $lpValue NUMBERFMT*lpFormat $lpNumberStr cchNumber
dll kernel32 #GetStringTypeEx Locale dwInfoType $lpSrcStr cchSrc @*lpCharType
dll kernel32 #GetStringTypeW dwInfoType $lpSrcStr cchSrc @*lpCharType
dll kernel32 #IsDBCSLeadByte !TestChar
dll kernel32 #SetLocaleInfo Locale LCType $lpLCData
dll winspool #DeletePrinter hPrinter
dll winspool #FindClosePrinterChangeNotification hChange
dll winspool #FindFirstPrinterChangeNotification hPrinter fdwFlags fdwOptions $pPrinterNotifyOptions
dll winspool #FindNextPrinterChangeNotification hChange *pdwChange $pvReserved ppPrinterNotifyInfo
dll winspool #GetPrinter hPrinter Level !*pPrinter cbBuf *pcbNeeded
dll winspool #SetPrinter hPrinter Level !*pPrinter Command
dll user32 #BroadcastSystemMessage dw *pdw un wParam lParam
dll user32 #CallWindowProc lpPrevWndFunc hWnd Msg wParam lParam
dll user32 #CascadeWindows hWndParent wHow RECT*lpRect cKids *lpkids
dll user32 #ChangeMenu hMenu cmd $lpszNewItem cmdInsert flags
dll user32 #CheckMenuRadioItem hMenu un1 un2 un3 un4
dll user32 #ChildWindowFromPoint hWndParent POINT'pt
dll user32 #ChildWindowFromPointEx hWnd POINT'pt un
dll user32 #CloseDesktop hDesktop
dll user32 #CloseWindowStation hWinSta
dll user32 #CopyImage handle un1 n1 n2 un2
dll user32 #CreateDesktop $lpszDesktop $lpszDevice DEVMODE*pDevmode dwFlags dwDesiredAccess SECURITY_ATTRIBUTES*lpsa
dll user32 #CreateDialogIndirectParam hInstance DLGTEMPLATE*lpTemplate hWndParent lpDialogFunc dwInitParam
dll user32 #CreateDialogParam hInstance $lpName hWndParent lpDialogFunc lParamInit
dll user32 #CreateIconFromResource !*presbits dwResSize fIcon dwVer
dll user32 #DialogBoxIndirectParam hInstance DLGTEMPLATE*hDialogTemplate hWndParent lpDialogFunc dwInitParam
dll user32 #DragDetect hWnd POINT'pt
dll user32 #DragObject hWnd1 hWnd2 un dw hCursor
dll user32 #DrawAnimatedRects hWnd idAni RECT*lprcFrom RECT*lprcTo
dll user32 #DrawCaption hWnd hDC RECT*pcRect un
dll user32 #DrawEdge hDC RECT*qrc edge grfFlags
dll user32 #DrawFrameControl hDC RECT*lpRect un1 un2
dll user32 #DrawIconEx hDC xLeft yTop hIcon cxWidth cyWidth istepIfAniCur hbrFlickerFreeDraw diFlags
dll user32 #DrawState hDC hBrush lpDrawStateProc lParam wParam n1 n2 n3 n4 un
def BDR_RAISEDOUTER  0x1
def BDR_SUNKENOUTER  0x2
def BDR_RAISEDINNER  0x4
def BDR_SUNKENINNER  0x8
def BDR_OUTER        0x3
def BDR_INNER        0xC
def BDR_RAISED       0x5
def BDR_SUNKEN       0xA
def EDGE_RAISED      (BDR_RAISEDOUTER |  BDR_RAISEDINNER)
def EDGE_SUNKEN      (BDR_SUNKENOUTER |  BDR_SUNKENINNER)
def EDGE_ETCHED      (BDR_SUNKENOUTER |  BDR_RAISEDINNER)
def EDGE_BUMP        (BDR_RAISEDOUTER |  BDR_SUNKENINNER)
def BF_LEFT          0x1
def BF_TOP           0x2
def BF_RIGHT         0x4
def BF_BOTTOM        0x8
def BF_TOPLEFT       (BF_TOP |  BF_LEFT)
def BF_TOPRIGHT      (BF_TOP |  BF_RIGHT)
def BF_BOTTOMLEFT    (BF_BOTTOM |  BF_LEFT)
def BF_BOTTOMRIGHT   (BF_BOTTOM |  BF_RIGHT)
def BF_RECT          (BF_LEFT |  BF_TOP |  BF_RIGHT |  BF_BOTTOM)
def BF_DIAGONAL      0x10
def BF_DIAGONAL_ENDTOPRIGHT  (BF_DIAGONAL |  BF_TOP |  BF_RIGHT)
def BF_DIAGONAL_ENDTOPLEFT  (BF_DIAGONAL |  BF_TOP |  BF_LEFT)
def BF_DIAGONAL_ENDBOTTOMLEFT  (BF_DIAGONAL |  BF_BOTTOM |  BF_LEFT)
def BF_DIAGONAL_ENDBOTTOMRIGHT  (BF_DIAGONAL |  BF_BOTTOM |  BF_RIGHT)
def BF_MIDDLE        0x800
def BF_SOFT          0x1000
def BF_ADJUST        0x2000
def BF_FLAT          0x4000
def BF_MONO          0x8000
def DFC_CAPTION      1
def DFC_MENU         2
def DFC_SCROLL       3
def DFC_BUTTON       4
def DFCS_CAPTIONCLOSE  0x0
def DFCS_CAPTIONMIN  0x1
def DFCS_CAPTIONMAX  0x2
def DFCS_CAPTIONRESTORE  0x3
def DFCS_CAPTIONHELP  0x4
def DFCS_MENUARROW   0x0
def DFCS_MENUCHECK   0x1
def DFCS_MENUBULLET  0x2
def DFCS_MENUARROWRIGHT  0x4
def DFCS_SCROLLUP    0x0
def DFCS_SCROLLDOWN  0x1
def DFCS_SCROLLLEFT  0x2
def DFCS_SCROLLRIGHT  0x3
def DFCS_SCROLLCOMBOBOX  0x5
def DFCS_SCROLLSIZEGRIP  0x8
def DFCS_SCROLLSIZEGRIPRIGHT  0x10
def DFCS_BUTTONCHECK  0x0
def DFCS_BUTTONRADIOIMAGE  0x1
def DFCS_BUTTONRADIOMASK  0x2
def DFCS_BUTTONRADIO  0x4
def DFCS_BUTTON3STATE  0x8
def DFCS_BUTTONPUSH  0x10
def DFCS_INACTIVE    0x100
def DFCS_PUSHED      0x200
def DFCS_CHECKED     0x400
def DFCS_ADJUSTRECT  0x2000
def DFCS_FLAT        0x4000
def DFCS_MONO        0x8000
type DRAWTEXTPARAMS cbSize iTabLength iLeftMargin iRightMargin uiLengthDrawn
dll user32 #DrawTextEx hDC $lpsz n RECT*lpRect un DRAWTEXTPARAMS*lpDrawTextParams
dll user32 #EnumWindows lpEnumFunc lParam
dll user32 #EnumChildWindows hWndParent lpEnumFunc lParam
dll user32 #EnumDesktops hwinsta lpEnumFunc lParam
dll user32 #EnumDesktopWindows hDesktop lpfn lParam
dll user32 #EnumPropsEx hWnd lpEnumFunc lParam
dll user32 #EnumProps hWnd lpEnumFunc
dll user32 #EnumThreadWindows dwThreadId lpfn lParam
dll user32 #EnumWindowStations lpEnumFunc lParam
dll user32 #FindWindowEx hWnd1 hWnd2 $lpsz1 $lpsz2
dll user32 #GetKeyboardLayoutList nBuff *lpList
dll user32 #GetKeyboardLayout dwLayout
dll user32 #GetMenuContextHelpId hMenu
dll user32 #GetMenuDefaultItem hMenu fByPos gmdiFlags
type MENUITEMINFO cbSize fMask fType fState wID hSubMenu hbmpChecked hbmpUnchecked dwItemData $dwTypeData cch
dll user32 #GetMenuItemInfo hMenu un b MENUITEMINFO*lpMenuItemInfo
dll user32 #GetMenuItemRect hWnd hMenu uItem RECT*lprcItem
type SCROLLINFO cbSize fMask nMin nMax nPage nPos nTrackPos
dll user32 #GetScrollInfo hWnd n SCROLLINFO*lpScrollInfo
dll user32 #GetSysColorBrush nIndex
dll user32 #GetUserObjectInformation hObj nIndex !*pvInfo nLength *lpnLengthNeeded
dll user32 #GetWindowContextHelpId hWnd
dll user32 #GetWindowRgn hWnd hRgn
dll user32 #GrayString hDC hBrush lpOutputFunc lpData nCount X Y nWidth nHeight
dll user32 #InsertMenuItem hMenu un bool MENUITEMINFO'lpcMenuItemInfo
dll user32 #LoadCursorFromFile $lpFileName
dll user32 #LoadImage hInst $lpsz un1 n1 n2 un2
dll user32 #LookupIconIdFromDirectoryEx !*presbits fIcon cxDesired cyDesired Flags
dll user32 #MapVirtualKeyEx uCode uMapType dwhkl
dll user32 #MenuItemFromPoint hWnd hMenu POINT'ptScreen
type MSGBOXPARAMS cbSize hWndOwner hInstance $lpszText $lpszCaption dwStyle $lpszIcon dwContextHelpId lpfnMsgBoxCallback dwLanguageId
dll user32 #MessageBoxIndirect MSGBOXPARAMS*lpMsgBoxParams
dll user32 #OpenDesktop $lpszDesktop dwFlags fInherit dwDesiredAccess
dll user32 #OpenInputDesktop dwFlags fInherit dwDesiredAccess
dll user32 #OpenWindowStation $lpszWinSta fInherit dwDesiredAccess
dll user32 #PaintDesktop hDC
dll user32 #SetMenuContextHelpId hMenu dw
dll user32 #SetMenuDefaultItem hMenu uItem fByPos
dll user32 #SetMenuItemInfo hMenu un bool MENUITEMINFO*lpcMenuItemInfo
dll user32 #SetMessageExtraInfo lParam
dll user32 #SetMessageQueue cMessagesMax
dll user32 #SetProcessWindowStation hWinSta
dll user32 #SetScrollInfo hWnd n SCROLLINFO*lpcScrollInfo bool
dll user32 #SetSystemCursor hcur id
dll user32 #SetThreadDesktop hDesktop
dll user32 #SetTimer hWnd nIDEvent uElapse lpTimerFunc
dll user32 #SetUserObjectInformation hObj nIndex !*pvInfo nLength
dll user32 #SetWindowContextHelpId hWnd dw
dll user32 #SetWindowRgn hWnd hRgn bRedraw
dll user32 #SetWindowsHook nFilterType pfnFilterProc
dll user32 #SetWindowsHookEx idHook lpfn hmod dwThreadId
dll user32 #ShowWindowAsync hWnd nCmdShow
dll user32 #SwitchDesktop hDesktop
dll user32 #TileWindows hWndParent wHow RECT*lpRect cKids *lpKids
dll user32 #ToAsciiEx uVirtKey uScanCode !*lpKeyState @*lpChar uFlags dwhkl
type TPMPARAMS cbSize RECT'rcExclude
dll user32 #TrackPopupMenuEx hMenu un n1 n2 hWnd TPMPARAMS*lpTPMParams
dll user32 #UnhookWindowsHook nCode pfnFilterProc
dll user32 #VkKeyScanEx !ch dwhkl
dll mpr #WNetGetUniversalName $lpLocalPath dwInfoLevel !*lpBuffer *lpBufferSize
dll mpr #WNetGetUser $lpName $lpUserName *lpnLength
dll mpr #WNetOpenEnum dwScope dwType dwUsage NETRESOURCE*lpNetResource *lphEnum
dll Netapi32.dll #NetUserChangePassword !*Domain !*User !*OldPass !*NewPass
dll Netapi32.dll #NetUserGetInfo !*lpServer !*UserName Level *lpBuffer
dll Netapi32.dll #NetUserGetGroups !*lpServer !*UserName Level *lpBuffer PrefMaxLen *lpEntriesRead *lpTotalEntries
dll Netapi32.dll #NetUserGetLocalGroups !*lpServer !*UserName Level Flags *lpBuffer MaxLen *lpEntriesRead *lpTotalEntries
dll netapi32 #NetUserAdd !*lpServer Level USER_INFO_3_API*lpUser *lpError
dll Netapi32.dll #NetWkstaGetInfo !*lpServer Level !*lpBuffer
dll Netapi32.dll #NetWkstaUserGetInfo !*reserved Level !*lpBuffer
dll Netapi32.dll #NetApiBufferFree lpBuffer
dll Netapi32.dll #NetRemoteTOD !*yServer *pBuffer
dll advapi32.dll #GetUserName $lpBuffer *nSize
dll advapi32.dll #GetUserNameW !*lpBuffer *nSize
dll kernel32 #GetComputerName $lpBuffer *nSize
dll kernel32 #GetComputerNameW !*lpBuffer *nSize
dll kernel32 #GetCurrentProcess
dll advapi32.dll #OpenProcessToken ProcessHandle DesiredAccess *TokenHandle
dll advapi32.dll #GetTokenInformation TokenHandle TokenInformationClass !*TokenInformation TokenInformationLength *ReturnLength
dll advapi32.dll #LookupAccountSidW !*lpSystemName !*Sid !*Name *cbName !*ReferencedDomainName *cbReferencedDomainName @*peUse
dll netapi32.dll #NetLocalGroupDelMembers psServer psLocalGroup lLevel LOCALGROUP_MEMBERS_INFO_0*uMember lMemberCount
dll netapi32.dll #NetLocalGroupGetMembers psServer psLocalGroup lLevel *pBuffer lMaxLength *plEntriesRead *plTotalEntries *phResume
dll mpr.dll #WNetAddConnection2 NETRESOURCE*lpNetResource $lpPassword $lpUserName dwFlags
dll mpr.dll #WNetOpenEnum dwScope dwType dwUsage !*lpNetResource *lphEnum
dll mpr.dll #WNetEnumResource hEnum *lpcCount NETRESOURCE*lpBuffer *lpBufferSize
dll mpr.dll #WNetCloseEnum hEnum
type USER_INFO_3 Name Password PasswordAge Privilege HomeDir Comment Flags ScriptPath AuthFlags FullName UserComment Parms Workstations LastLogon LastLogoff AcctExpires MaxStorage UnitsPerWeek LogonHours BadPwCount NumLogons LogonServer CountryCode CodePage UserID PrimaryGroupID Profile HomeDirDrive PasswordExpired
type GROUP_INFO_2 Name Comment GroupID Attributes
type LOCALGROUP_MEMBERS_INFO_0 pSID
type LOCALGROUP_MEMBERS_INFO_1 pSID g_netSID_NAME_USE'eUsage psName
type WKSTA_INFO_102 wki102_platform_id wki102_computername wki102_langroup wki102_ver_major wki102_ver_minor wki102_lanroot wki102_logged_on_users
type WKSTA_USER_INFO_1 wkui1_username wkui1_logon_domain wkui1_oth_domains wkui1_logon_server
type NETRESOURCE dwScope dwType dwDisplayType dwUsage pLocalName pRemoteName pComment pProvider
 Enum g_netSID_NAME_USE
def SidTypeUser      1
def SidTypeGroup     2
def SidTypeDomain    3
def SidTypeAlias     4
def SidTypeWellKnownGroup  5
def SidTypeDeletedAccount  6
def SidTypeInvalid   7
def SidTypeUnknown   8

def FILTER_TEMP_DUPLICATE_ACCOUNT  0x1
def FILTER_NORMAL_ACCOUNT  0x2
def FILTER_PROXY_ACCOUNT  0x4
def FILTER_INTERDOMAIN_TRUST_ACCOUNT  0x8
def FILTER_WORKSTATION_TRUST_ACCOUNT  0x10
def FILTER_SERVER_TRUST_ACCOUNT  0x20
def TIMEQ_FOREVER    -1
def USER_MAXSTORAGE_UNLIMITED  -1
def USER_NO_LOGOFF   -1
def UNITS_PER_DAY    24
def UNITS_PER_WEEK   (UNITS_PER_DAY * 7)
def USER_PRIV_MASK   3
def USER_PRIV_GUEST  0
def USER_PRIV_USER   1
def USER_PRIV_ADMIN  2
def UNLEN            256
def GNLEN            UNLEN
def CNLEN            15
def PWLEN            256
def LM20_PWLEN       14
def MAXCOMMENTSZ     256
def LG_INCLUDE_INDIRECT  0x1
def UF_SCRIPT        0x1
def UF_ACCOUNTDISABLE  0x2
def UF_HOMEDIR_REQUIRED  0x8
def UF_LOCKOUT       0x10
def UF_PASSWD_NOTREQD  0x20
def UF_PASSWD_CANT_CHANGE  0x40
def LG_INCLUDE_INDIRECT  0x1
def NERR_Success     0
def NERR_BASE        2100
def NERR_InvalidComputer  (NERR_BASE + 251)
def NERR_NotPrimary  (NERR_BASE + 126)
def NERR_GroupExists  (NERR_BASE + 123)
def NERR_UserExists  (NERR_BASE + 124)
def NERR_PasswordTooShort  (NERR_BASE + 145)
def RESOURCE_CONNECTED  0x1
def RESOURCE_GLOBALNET  0x2
def RESOURCE_REMEMBERED  0x3
def RESOURCE_ENUM_ALL  0xFFFF
def RESOURCEDISPLAYTYPE_DOMAIN  0x1
def RESOURCEDISPLAYTYPE_FILE  0x4
def RESOURCEDISPLAYTYPE_GENERIC  0x0
def RESOURCEDISPLAYTYPE_GROUP  0x5
def RESOURCEDISPLAYTYPE_SERVER  0x2
def RESOURCEDISPLAYTYPE_SHARE  0x3
def RESOURCETYPE_ANY  0x0
def RESOURCETYPE_DISK  0x1
def RESOURCETYPE_PRINT  0x2
def RESOURCETYPE_UNKNOWN  0xFFFF
def RESOURCEUSAGE_ALL  0x0
def RESOURCEUSAGE_CONNECTABLE  0x1
def RESOURCEUSAGE_CONTAINER  0x2
def RESOURCEUSAGE_RESERVED  0x80000000
dll url.dll #InetIsOffline dwflags
def LVM_FIRST        0x1000
def LVM_GETITEM      (LVM_FIRST + 5)
def LVM_FINDITEM     (LVM_FIRST + 13)
def LVM_ENSUREVISIBLE  (LVM_FIRST + 19)
def LVM_SETCOLUMNWIDTH  (LVM_FIRST + 30)
def LVM_GETTOPINDEX  (LVM_FIRST + 39)
def LVM_SETITEMSTATE  (LVM_FIRST + 43)
def LVM_GETITEMSTATE  (LVM_FIRST + 44)
def LVM_GETITEMTEXT  (LVM_FIRST + 45)
def LVM_SORTITEMS    (LVM_FIRST + 48)
def LVM_SETEXTENDEDLISTVIEWSTYLE  (LVM_FIRST + 54)
def LVM_GETEXTENDEDLISTVIEWSTYLE  (LVM_FIRST + 55)
def LVM_SETCOLUMNORDERARRAY  (LVM_FIRST + 58)
def LVM_GETCOLUMNORDERARRAY  (LVM_FIRST + 59)
def LVS_EX_GRIDLINES  0x1
def LVS_EX_SUBITEMIMAGES  0x2
def LVS_EX_CHECKBOXES  0x4
def LVS_EX_TRACKSELECT  0x8
def LVS_EX_HEADERDRAGDROP  0x10
def LVS_EX_FULLROWSELECT  0x20
def LVFI_PARAM       1
def LVIF_TEXT        1
def LVIF_IMAGE       2
def LVIF_PARAM       4
def LVIF_STATE       8
def LVIF_INDENT      0x10
def LVIF_NORECOMPUTE  0x800
def LVIS_STATEIMAGEMASK  0xF000
type LV_ITEM Mask Index SubItem State StateMask $Text TextMax Icon Param Indent
type LV_FINDINFO Flags $pSz lParam POINT'pt vkDirection
