//[c]Windows Defines //[c] public //[c] //[of]: Imports import "windef" //[cf] //[c] //[c]Winbase //[c] //[of]: Constants //[c] //[of]: Global Memory Flags //[c] equ GMEM_FIXED = 0 equ GMEM_MOVEABLE = 2 equ GMEM_MODIFY = 128 equ GPTR = 64 equ GHND = 66 equ GMEM_DDESHARE = 8192 equ GMEM_DISCARDABLE = 256 equ GMEM_LOWER = 4096 equ GMEM_NOCOMPACT = 16 equ GMEM_NODISCARD = 32 equ GMEM_NOT_BANKED = 4096 equ GMEM_NOTIFY = 16384 equ GMEM_SHARE = 8192 equ GMEM_ZEROINIT = 64 equ GMEM_DISCARDED = 16384 equ GMEM_INVALID_HANDLE = 32768 equ GMEM_LOCKCOUNT = 255 equ GMEM_VALID_FLAGS = 32626 //[cf] //[of]: Startup Info Flags //[c] equ STARTF_USESHOWWINDOW = 0x0001 equ STARTF_USESIZE = 0x0002 equ STARTF_USEPOSITION = 0x0004 equ STARTF_USECOUNTCHARS = 0x0008 equ STARTF_USEFILLATTRIBUTE = 0x0010 equ STARTF_RUNFULLSCREEN = 0x0020 equ STARTF_FORCEONFEEDBACK = 0x0040 equ STARTF_FORCEOFFFEEDBACK = 0x0080 equ STARTF_USESTDHANDLES = 0x0100 equ STARTF_USEHOTKEY = 0x0200 //[cf] //[c] equ INVALID_HANDLE_VALUE = -1 : HANDLE equ INVALID_FILE_SIZE = 0xFFFFFFFF : DWORD //[c] equ STILL_ACTIVE = 0x103 //[c] equ STATUS_WAIT_0 = 0 equ STATUS_ABANDONED_WAIT_0 = 0x80 equ STATUS_USER_APC = 0xC0 equ STATUS_TIMEOUT = 0x102 equ STATUS_PENDING = 0x103 equ STATUS_SEGMENT_NOTIFICATION = 0x40000005 equ STATUS_GUARD_PAGE_VIOLATION = 0x80000001 equ STATUS_DATATYPE_MISALIGNMENT = 0x80000002 equ STATUS_BREAKPOINT = 0x80000003 equ STATUS_SINGLE_STEP = 0x80000004 equ STATUS_ACCESS_VIOLATION = 0xC0000005 equ STATUS_IN_PAGE_ERROR = 0xC0000006 equ STATUS_INVALID_HANDLE = 0xC0000008 equ STATUS_NO_MEMORY = 0xC0000017 equ STATUS_ILLEGAL_INSTRUCTION = 0xC000001D equ STATUS_NONCONTINUABLE_EXCEPTION = 0xC0000025 equ STATUS_INVALID_DISPOSITION = 0xC0000026 equ STATUS_ARRAY_BOUNDS_EXCEEDED = 0xC000008C equ STATUS_FLOAT_DENORMAL_OPERAND = 0xC000008D equ STATUS_FLOAT_DIVIDE_BY_ZERO = 0xC000008E equ STATUS_FLOAT_INEXACT_RESULT = 0xC000008F equ STATUS_FLOAT_INVALID_OPERATION = 0xC0000090 equ STATUS_FLOAT_OVERFLOW = 0xC0000091 equ STATUS_FLOAT_STACK_CHECK = 0xC0000092 equ STATUS_FLOAT_UNDERFLOW = 0xC0000093 equ STATUS_INTEGER_DIVIDE_BY_ZERO = 0xC0000094 equ STATUS_INTEGER_OVERFLOW = 0xC0000095 equ STATUS_PRIVILEGED_INSTRUCTION = 0xC0000096 equ STATUS_STACK_OVERFLOW = 0xC00000FD equ STATUS_CONTROL_C_EXIT = 0xC000013A //[c] equ WAIT_OBJECT_0 = 0 equ WAIT_ABANDONED_0 = 128 equ WAIT_TIMEOUT = 258 equ WAIT_IO_COMPLETION = 0xC0 equ WAIT_ABANDONED = 128 equ WAIT_FAILED = 0xFFFFFFFF:dword //[c] equ DEBUG_PROCESS = 0x00000001 equ DEBUG_ONLY_THIS_PROCESS = 0x00000002 equ CREATE_SUSPENDED = 0x00000004 equ DETACHED_PROCESS = 0x00000008 equ CREATE_NEW_CONSOLE = 0x00000010 equ NORMAL_PRIORITY_CLASS = 0x00000020 equ IDLE_PRIORITY_CLASS = 0x00000040 equ HIGH_PRIORITY_CLASS = 0x00000080 equ REALTIME_PRIORITY_CLASS = 0x00000100 equ CREATE_NEW_PROCESS_GROUP = 0x00000200 equ CREATE_UNICODE_ENVIRONMENT = 0x00000400 equ CREATE_SEPARATE_WOW_VDM = 0x00000800 equ CREATE_SHARED_WOW_VDM = 0x00001000 equ CREATE_FORCEDOS = 0x00002000 equ BELOW_NORMAL_PRIORITY_CLASS = 0x00004000 equ ABOVE_NORMAL_PRIORITY_CLASS = 0x00008000 equ CREATE_BREAKAWAY_FROM_JOB = 0x01000000 equ CREATE_WITH_USERPROFILE = 0x02000000 equ CREATE_DEFAULT_ERROR_MODE = 0x04000000 equ CREATE_NO_WINDOW = 0x08000000 //[c] equ FILE_ATTRIBUTE_READONLY = 0x00000001 equ FILE_ATTRIBUTE_HIDDEN = 0x00000002 equ FILE_ATTRIBUTE_SYSTEM = 0x00000004 equ FILE_ATTRIBUTE_DIRECTORY = 0x00000010 equ FILE_ATTRIBUTE_ARCHIVE = 0x00000020 equ FILE_ATTRIBUTE_DEVICE = 0x00000040 equ FILE_ATTRIBUTE_NORMAL = 0x00000080 equ FILE_ATTRIBUTE_TEMPORARY = 0x00000100 equ FILE_ATTRIBUTE_SPARSE_FILE = 0x00000200 equ FILE_ATTRIBUTE_REPARSE_POINT = 0x00000400 equ FILE_ATTRIBUTE_COMPRESSED = 0x00000800 equ FILE_ATTRIBUTE_OFFLINE = 0x00001000 equ FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 0x00002000 equ FILE_ATTRIBUTE_ENCRYPTED = 0x00004000 equ FILE_ATTRIBUTE_VALID_FLAGS = 0x00007fb7 equ FILE_ATTRIBUTE_VALID_SET_FLAGS = 0x000031a7 //[cf] //[of]: Structures //[c] //[of]: STARTUPINFO //[c] struct LPSTARTUPINFOA cb : DWORD lpReserved : LPSTR lpDesktop : LPSTR lpTitle : LPSTR dwX : DWORD dwY : DWORD dwXSize : DWORD dwYSize : DWORD dwXCountChars : DWORD dwYCountChars : DWORD dwFillAttribute : DWORD dwFlags : DWORD wShowWindow : WORD cbReserved2 : WORD lpReserved2 : LPBYTE hStdInput : HANDLE hStdOutput : HANDLE hStdError : HANDLE end typedef STARTUPINFOA = local LPSTARTUPINFOA //[cf] //[of]: PROCESS_INFORMATION //[c] struct LPPROCESS_INFORMATION hProcess: HANDLE hThread: HANDLE dwProcessId: DWORD dwThreadId: DWORD end typedef PROCESS_INFORMATION = local LPPROCESS_INFORMATION //[cf] //[of]: SECURITY_ATTRIBUTES //[c] struct LPSECURITY_ATTRIBUTES nLength: DWORD lpSecurityDescriptor: LPVOID bInheritHandle: BOOL end typedef SECURITY_ATTRIBUTES = local LPSECURITY_ATTRIBUTES //[cf] //[of]: OVERLAPPED //[c] struct LPOVERLAPPED Internal : DWORD InternalHigh : DWORD Offset : DWORD OffsetHigh : DWORD hEvent : HANDLE end typedef OVERLAPPED = LPOVERLAPPED //[cf] //[of]: FILETIME struct LPFILETIME dwLowDateTime: DWORD dwHighDateTime: DWORD end typedef FILETIME = local LPFILETIME //[cf] //[of]: FIND_DATAA struct LPWIN32_FIND_DATAA dwFileAttributes: DWORD ftCreationTime: FILETIME ftLastAccessTime: FILETIME ftLastWriteTime: FILETIME nFileSizeHigh: DWORD nFileSizeLow: DWORD dwReserved0: DWORD dwReserved1: DWORD cFileName: [MAX_PATH]CHAR cAlternateFileName: [14]CHAR end typedef WIN32_FIND_DATAA = local LPWIN32_FIND_DATAA //[cf] //[c] //[cf] //[of]: Functions //[c] public [name="c", call="__stdcall"] import func OutputDebugStringA(LPCSTR) import func GetCurrentDirectoryA (DWORD,LPSTR): DWORD import func GetModuleFileNameA (HMODULE,LPSTR,DWORD): DWORD import func GetStartupInfoA (LPSTARTUPINFOA) : void import func GetCommandLineA : LPSTR import func CreateDirectoryA (LPCTSTR,LPSECURITY_ATTRIBUTES) : BOOL import func FindFirstFileA (LPCSTR,LPWIN32_FIND_DATAA): HANDLE import func FindNextFileA (HANDLE,LPWIN32_FIND_DATAA): BOOL import func FindClose (HANDLE): BOOL import func GlobalAlloc(UINT,DWORD): HGLOBAL import func GlobalReAlloc(HGLOBAL,DWORD,UINT): HGLOBAL import func GlobalSize(HGLOBAL): DWORD import func GlobalFlags(HGLOBAL): UINT import func GlobalLock(HGLOBAL): LPVOID import func GlobalUnlock(HGLOBAL): BOOL import func GlobalFree(HGLOBAL): HGLOBAL import func CreateProcessA(LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,LPVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION): BOOL import func TerminateProcess(HANDLE,UINT): BOOL import func CreatePipe(PHANDLE,PHANDLE,LPSECURITY_ATTRIBUTES,DWORD): BOOL import func CloseHandle(HANDLE): BOOL import func WaitForMultipleObjectsEx(DWORD,[] HANDLE,BOOL,DWORD,BOOL): DWORD import func PeekNamedPipe(HANDLE,PVOID,DWORD,PDWORD,PDWORD,PDWORD): BOOL import func ReadFile(HANDLE,PVOID,DWORD,PDWORD,LPOVERLAPPED): BOOL import func GetExitCodeProcess (HANDLE,PDWORD): BOOL end //[cf] //[c] //[c]Winuser //[c] //[of]: Constants //[c] typedef WNDPROC = {HWND, UINT, WPARAM, LPARAM} LRESULT typedef TIMERPROC = {HWND, UINT, UINT, DWORD} void typedef WNDENUMPROC = {HWND, LPARAM} BOOL //[c] equ MAKELPARAM(a: int, b: int) = MAKELONG(a,b):LONG //[c] //[of]: System Metrics //[c] equ SM_CXSCREEN = 0 equ SM_CYSCREEN = 1 equ SM_CXVSCROLL = 2 equ SM_CYHSCROLL = 3 equ SM_CYCAPTION = 4 equ SM_CXBORDER = 5 equ SM_CYBORDER = 6 equ SM_CXDLGFRAME = 7 equ SM_CXFIXEDFRAME = 7 equ SM_CYDLGFRAME = 8 equ SM_CYFIXEDFRAME = 8 equ SM_CYVTHUMB = 9 equ SM_CXHTHUMB = 10 equ SM_CXICON = 11 equ SM_CYICON = 12 equ SM_CXCURSOR = 13 equ SM_CYCURSOR = 14 equ SM_CYMENU = 15 equ SM_CXFULLSCREEN = 16 equ SM_CYFULLSCREEN = 17 equ SM_CYKANJIWINDOW = 18 equ SM_MOUSEPRESENT = 19 equ SM_CYVSCROLL = 20 equ SM_CXHSCROLL = 21 equ SM_DEBUG = 22 equ SM_SWAPBUTTON = 23 equ SM_RESERVED1 = 24 equ SM_RESERVED2 = 25 equ SM_RESERVED3 = 26 equ SM_RESERVED4 = 27 equ SM_CXMIN = 28 equ SM_CYMIN = 29 equ SM_CXSIZE = 30 equ SM_CYSIZE = 31 equ SM_CXSIZEFRAME = 32 equ SM_CXFRAME = 32 equ SM_CYSIZEFRAME = 33 equ SM_CYFRAME = 33 equ SM_CXMINTRACK = 34 equ SM_CYMINTRACK = 35 equ SM_CXDOUBLECLK = 36 equ SM_CYDOUBLECLK = 37 equ SM_CXICONSPACING = 38 equ SM_CYICONSPACING = 39 equ SM_MENUDROPALIGNMENT = 40 equ SM_PENWINDOWS = 41 equ SM_DBCSENABLED = 42 equ SM_CMOUSEBUTTONS = 43 equ SM_SECURE = 44 equ SM_CXEDGE = 45 equ SM_CYEDGE = 46 equ SM_CXMINSPACING = 47 equ SM_CYMINSPACING = 48 equ SM_CXSMICON = 49 equ SM_CYSMICON = 50 equ SM_CYSMCAPTION = 51 equ SM_CXSMSIZE = 52 equ SM_CYSMSIZE = 53 equ SM_CXMENUSIZE = 54 equ SM_CYMENUSIZE = 55 equ SM_ARRANGE = 56 equ SM_CXMINIMIZED = 57 equ SM_CYMINIMIZED = 58 equ SM_CXMAXTRACK = 59 equ SM_CYMAXTRACK = 60 equ SM_CXMAXIMIZED = 61 equ SM_CYMAXIMIZED = 62 equ SM_NETWORK = 63 equ LR_DEFAULTSIZE = 64 equ SM_CLEANBOOT = 67 equ SM_CXDRAG = 68 equ SM_CYDRAG = 69 equ SM_SHOWSOUNDS = 70 equ SM_CXMENUCHECK = 71 equ SM_CYMENUCHECK = 72 equ SM_SLOWMACHINE = 73 equ SM_MIDEASTENABLED = 74 equ SM_MOUSEWHEELPRESENT = 75 equ SM_XVIRTUALSCREEN = 76 equ SM_YVIRTUALSCREEN = 77 equ SM_CXVIRTUALSCREEN = 78 equ SM_CYVIRTUALSCREEN = 79 equ SM_CMONITORS = 80 equ SM_SAMEDISPLAYFORMAT = 81 //[cf] //[of]: Virtual Key Codes //[c] equ VK_LBUTTON = 1 equ VK_RBUTTON = 2 equ VK_CANCEL = 3 equ VK_MBUTTON = 4 equ VK_XBUTTON1 = 5 equ VK_XBUTTON2 = 6 equ VK_BACK = 8 equ VK_TAB = 9 equ VK_CLEAR = 12 equ VK_RETURN = 13 equ VK_SHIFT = 16 equ VK_CONTROL = 17 equ VK_MENU = 18 equ VK_PAUSE = 19 equ VK_CAPITAL = 20 equ VK_KANA = 0x15 equ VK_HANGEUL = 0x15 equ VK_HANGUL = 0x15 equ VK_JUNJA = 0x17 equ VK_FINAL = 0x18 equ VK_HANJA = 0x19 equ VK_KANJI = 0x19 equ VK_ESCAPE = 0x1B equ VK_CONVERT = 0x1C equ VK_NONCONVERT = 0x1D equ VK_ACCEPT = 0x1E equ VK_MODECHANGE = 0x1F equ VK_SPACE = 32 equ VK_PRIOR = 33 equ VK_NEXT = 34 equ VK_END = 35 equ VK_HOME = 36 equ VK_LEFT = 37 equ VK_UP = 38 equ VK_RIGHT = 39 equ VK_DOWN = 40 equ VK_SELECT = 41 equ VK_PRINT = 42 equ VK_EXECUTE = 43 equ VK_SNAPSHOT = 44 equ VK_INSERT = 45 equ VK_DELETE = 46 equ VK_HELP = 47 equ VK_LWIN = 0x5B equ VK_RWIN = 0x5C equ VK_APPS = 0x5D equ VK_SLEEP = 0x5F equ VK_NUMPAD0 = 0x60 equ VK_NUMPAD1 = 0x61 equ VK_NUMPAD2 = 0x62 equ VK_NUMPAD3 = 0x63 equ VK_NUMPAD4 = 0x64 equ VK_NUMPAD5 = 0x65 equ VK_NUMPAD6 = 0x66 equ VK_NUMPAD7 = 0x67 equ VK_NUMPAD8 = 0x68 equ VK_NUMPAD9 = 0x69 equ VK_MULTIPLY = 0x6A equ VK_ADD = 0x6B equ VK_SEPARATOR = 0x6C equ VK_SUBTRACT = 0x6D equ VK_DECIMAL = 0x6E equ VK_DIVIDE = 0x6F equ VK_F1 = 0x70 equ VK_F2 = 0x71 equ VK_F3 = 0x72 equ VK_F4 = 0x73 equ VK_F5 = 0x74 equ VK_F6 = 0x75 equ VK_F7 = 0x76 equ VK_F8 = 0x77 equ VK_F9 = 0x78 equ VK_F10 = 0x79 equ VK_F11 = 0x7A equ VK_F12 = 0x7B equ VK_F13 = 0x7C equ VK_F14 = 0x7D equ VK_F15 = 0x7E equ VK_F16 = 0x7F equ VK_F17 = 0x80 equ VK_F18 = 0x81 equ VK_F19 = 0x82 equ VK_F20 = 0x83 equ VK_F21 = 0x84 equ VK_F22 = 0x85 equ VK_F23 = 0x86 equ VK_F24 = 0x87 equ VK_NUMLOCK = 0x90 equ VK_SCROLL = 0x91 equ VK_LSHIFT = 0xA0 equ VK_RSHIFT = 0xA1 equ VK_LCONTROL = 0xA2 equ VK_RCONTROL = 0xA3 equ VK_LMENU = 0xA4 equ VK_RMENU = 0xA5 equ VK_BROWSER_BACK = 0xA6 equ VK_BROWSER_FORWARD = 0xA7 equ VK_BROWSER_REFRESH = 0xA8 equ VK_BROWSER_STOP = 0xA9 equ VK_BROWSER_SEARCH = 0xAA equ VK_BROWSER_FAVORITES = 0xAB equ VK_BROWSER_HOME = 0xAC equ VK_VOLUME_MUTE = 0xAD equ VK_VOLUME_DOWN = 0xAE equ VK_VOLUME_UP = 0xAF equ VK_MEDIA_NEXT_TRACK = 0xB0 equ VK_MEDIA_PREV_TRACK = 0xB1 equ VK_MEDIA_STOP = 0xB2 equ VK_MEDIA_PLAY_PAUSE = 0xB3 equ VK_LAUNCH_MAIL = 0xB4 equ VK_LAUNCH_MEDIA_SELECT = 0xB5 equ VK_LAUNCH_APP1 = 0xB6 equ VK_LAUNCH_APP2 = 0xB7 equ VK_OEM_1 = 0xBA equ VK_OEM_PLUS = 0xBB equ VK_OEM_COMMA = 0xBC equ VK_OEM_MINUS = 0xBD equ VK_OEM_PERIOD = 0xBE equ VK_OEM_2 = 0xBF equ VK_OEM_3 = 0xC0 equ VK_OEM_4 = 0xDB equ VK_OEM_5 = 0xDC equ VK_OEM_6 = 0xDD equ VK_OEM_7 = 0xDE equ VK_OEM_8 = 0xDF equ VK_OEM_102 = 0xE2 equ VK_PROCESSKEY = 0xE5 equ VK_PACKET = 0xE7 equ VK_ATTN = 0xF6 equ VK_CRSEL = 0xF7 equ VK_EXSEL = 0xF8 equ VK_EREOF = 0xF9 equ VK_PLAY = 0xFA equ VK_ZOOM = 0xFB equ VK_NONAME = 0xFC equ VK_PA1 = 0xFD equ VK_OEM_CLEAR = 0xFE //[cf] //[of]: Field Offets //[c] equ GWL_WNDPROC = -4 equ GWL_HINSTANCE = -6 equ GWL_HWNDPARENT = -8 equ GWL_STYLE = -16 equ GWL_EXSTYLE = -20 equ GWL_USERDATA = -21 equ GWL_ID = -12 //[c] equ GCL_MENUNAME = -8 equ GCL_HBRBACKGROUND = -10 equ GCL_HCURSOR = -12 equ GCL_HICON = -14 equ GCL_HMODULE = -16 equ GCL_CBWNDEXTRA = -18 equ GCL_CBCLSEXTRA = -20 equ GCL_WNDPROC = -24 equ GCL_STYLE = -26 equ GCW_ATOM = -32 equ GCL_HICONSM = -34 //[cf] //[of]: Window Messages //[c] equ WM_NULL = 0x0000:UINT equ WM_CREATE = 0x0001:UINT equ WM_DESTROY = 0x0002:UINT equ WM_MOVE = 0x0003:UINT equ WM_SIZE = 0x0005:UINT equ WM_ACTIVATE = 0x0006:UINT equ WM_SETFOCUS = 0x0007:UINT equ WM_KILLFOCUS = 0x0008:UINT equ WM_ENABLE = 0x000A:UINT equ WM_SETREDRAW = 0x000B:UINT equ WM_SETTEXT = 0x000C:UINT equ WM_GETTEXT = 0x000D:UINT equ WM_GETTEXTLENGTH = 0x000E:UINT equ WM_PAINT = 0x000F:UINT equ WM_CLOSE = 0x0010:UINT equ WM_QUERYENDSESSION = 0x0011:UINT equ WM_QUIT = 0x0012:UINT equ WM_QUERYOPEN = 0x0013:UINT equ WM_ERASEBKGND = 0x0014:UINT equ WM_SYSCOLORCHANGE = 0x0015:UINT equ WM_ENDSESSION = 0x0016:UINT equ WM_SHOWWINDOW = 0x0018:UINT equ WM_WININICHANGE = 0x001A:UINT equ WM_SETTINGCHANGE = 0x001A:UINT equ WM_DEVMODECHANGE = 0x001B:UINT equ WM_ACTIVATEAPP = 0x001C:UINT equ WM_FONTCHANGE = 0x001D:UINT equ WM_TIMECHANGE = 0x001E:UINT equ WM_CANCELMODE = 0x001F:UINT equ WM_SETCURSOR = 0x0020:UINT equ WM_MOUSEACTIVATE = 0x0021:UINT equ WM_CHILDACTIVATE = 0x0022:UINT equ WM_QUEUESYNC = 0x0023:UINT equ WM_GETMINMAXINFO = 0x0024:UINT equ WM_PAINTICON = 0x0026:UINT equ WM_ICONERASEBKGND = 0x0027:UINT equ WM_NEXTDLGCTL = 0x0028:UINT equ WM_SPOOLERSTATUS = 0x002A:UINT equ WM_DRAWITEM = 0x002B:UINT equ WM_MEASUREITEM = 0x002C:UINT equ WM_DELETEITEM = 0x002D:UINT equ WM_VKEYTOITEM = 0x002E:UINT equ WM_CHARTOITEM = 0x002F:UINT equ WM_SETFONT = 0x0030:UINT equ WM_GETFONT = 0x0031:UINT equ WM_SETHOTKEY = 0x0032:UINT equ WM_GETHOTKEY = 0x0033:UINT equ WM_QUERYDRAGICON = 0x0037:UINT equ WM_COMPAREITEM = 0x0039:UINT equ WM_GETOBJECT = 0x003D:UINT equ WM_COMPACTING = 0x0041:UINT equ WM_COMMNOTIFY = 0x0044:UINT equ WM_WINDOWPOSCHANGING = 0x0046:UINT equ WM_WINDOWPOSCHANGED = 0x0047:UINT equ WM_POWER = 0x0048:UINT equ WM_COPYDATA = 0x004A:UINT equ WM_NOTIFY = 0x004E:UINT equ WM_INPUTLANGCHANGEREQUEST = 0x0050:UINT equ WM_INPUTLANGCHANGE = 0x0051:UINT equ WM_TCARD = 0x0052:UINT equ WM_HELP = 0x0053:UINT equ WM_USERCHANGED = 0x0054:UINT equ WM_NOTIFYFORMAT = 0x0055:UINT equ WM_CONTEXTMENU = 0x007B:UINT equ WM_STYLECHANGING = 0x007C:UINT equ WM_STYLECHANGED = 0x007D:UINT equ WM_DISPLAYCHANGE = 0x007E:UINT equ WM_GETICON = 0x007F:UINT equ WM_SETICON = 0x0080:UINT equ WM_NCCREATE = 0x0081:UINT equ WM_NCDESTROY = 0x0082:UINT equ WM_NCCALCSIZE = 0x0083:UINT equ WM_NCHITTEST = 0x0084:UINT equ WM_NCPAINT = 0x0085:UINT equ WM_NCACTIVATE = 0x0086:UINT equ WM_GETDLGCODE = 0x0087:UINT equ WM_SYNCPAINT = 0x0088:UINT equ WM_NCMOUSEMOVE = 0x00A0:UINT equ WM_NCLBUTTONDOWN = 0x00A1:UINT equ WM_NCLBUTTONUP = 0x00A2:UINT equ WM_NCLBUTTONDBLCLK = 0x00A3:UINT equ WM_NCRBUTTONDOWN = 0x00A4:UINT equ WM_NCRBUTTONUP = 0x00A5:UINT equ WM_NCRBUTTONDBLCLK = 0x00A6:UINT equ WM_NCMBUTTONDOWN = 0x00A7:UINT equ WM_NCMBUTTONUP = 0x00A8:UINT equ WM_NCMBUTTONDBLCLK = 0x00A9:UINT equ WM_KEYFIRST = 0x0100:UINT equ WM_KEYDOWN = 0x0100:UINT equ WM_KEYUP = 0x0101:UINT equ WM_CHAR = 0x0102:UINT equ WM_DEADCHAR = 0x0103:UINT equ WM_SYSKEYDOWN = 0x0104:UINT equ WM_SYSKEYUP = 0x0105:UINT equ WM_SYSCHAR = 0x0106:UINT equ WM_SYSDEADCHAR = 0x0107:UINT equ WM_KEYLAST = 0x0108:UINT equ WM_IME_STARTCOMPOSITION = 0x010D:UINT equ WM_IME_ENDCOMPOSITION = 0x010E:UINT equ WM_IME_COMPOSITION = 0x010F:UINT equ WM_IME_KEYLAST = 0x010F:UINT equ WM_INITDIALOG = 0x0110:UINT equ WM_COMMAND = 0x0111:UINT equ WM_SYSCOMMAND = 0x0112:UINT equ WM_TIMER = 0x0113:UINT equ WM_HSCROLL = 0x0114:UINT equ WM_VSCROLL = 0x0115:UINT equ WM_INITMENU = 0x0116:UINT equ WM_INITMENUPOPUP = 0x0117:UINT equ WM_MENUSELECT = 0x011F:UINT equ WM_MENUCHAR = 0x0120:UINT equ WM_ENTERIDLE = 0x0121:UINT equ WM_MENURBUTTONUP = 0x0122:UINT equ WM_MENUDRAG = 0x0123:UINT equ WM_MENUGETOBJECT = 0x0124:UINT equ WM_UNINITMENUPOPUP = 0x0125:UINT equ WM_MENUCOMMAND = 0x0126:UINT equ WM_CTLCOLORMSGBOX = 0x0132:UINT equ WM_CTLCOLOREDIT = 0x0133:UINT equ WM_CTLCOLORLISTBOX = 0x0134:UINT equ WM_CTLCOLORBTN = 0x0135:UINT equ WM_CTLCOLORDLG = 0x0136:UINT equ WM_CTLCOLORSCROLLBAR = 0x0137:UINT equ WM_CTLCOLORSTATIC = 0x0138:UINT equ WM_MOUSEFIRST = 0x0200:UINT equ WM_MOUSEMOVE = 0x0200:UINT equ WM_LBUTTONDOWN = 0x0201:UINT equ WM_LBUTTONUP = 0x0202:UINT equ WM_LBUTTONDBLCLK = 0x0203:UINT equ WM_RBUTTONDOWN = 0x0204:UINT equ WM_RBUTTONUP = 0x0205:UINT equ WM_RBUTTONDBLCLK = 0x0206:UINT equ WM_MBUTTONDOWN = 0x0207:UINT equ WM_MBUTTONUP = 0x0208:UINT equ WM_MBUTTONDBLCLK = 0x0209:UINT equ WM_MOUSEWHEEL = 0x020A:UINT equ WM_MOUSELAST = 0x020A:UINT equ WM_PARENTNOTIFY = 0x0210:UINT equ WM_ENTERMENULOOP = 0x0211:UINT equ WM_EXITMENULOOP = 0x0212:UINT equ WM_NEXTMENU = 0x0213:UINT equ WM_SIZING = 0x0214:UINT equ WM_CAPTURECHANGED = 0x0215:UINT equ WM_MOVING = 0x0216:UINT equ WM_POWERBROADCAST = 0x0218:UINT equ WM_DEVICECHANGE = 0x0219:UINT equ WM_MDICREATE = 0x0220:UINT equ WM_MDIDESTROY = 0x0221:UINT equ WM_MDIACTIVATE = 0x0222:UINT equ WM_MDIRESTORE = 0x0223:UINT equ WM_MDINEXT = 0x0224:UINT equ WM_MDIMAXIMIZE = 0x0225:UINT equ WM_MDITILE = 0x0226:UINT equ WM_MDICASCADE = 0x0227:UINT equ WM_MDIICONARRANGE = 0x0228:UINT equ WM_MDIGETACTIVE = 0x0229:UINT equ WM_MDISETMENU = 0x0230:UINT equ WM_ENTERSIZEMOVE = 0x0231:UINT equ WM_EXITSIZEMOVE = 0x0232:UINT equ WM_DROPFILES = 0x0233:UINT equ WM_MDIREFRESHMENU = 0x0234:UINT equ WM_IME_SETCONTEXT = 0x0281:UINT equ WM_IME_NOTIFY = 0x0282:UINT equ WM_IME_CONTROL = 0x0283:UINT equ WM_IME_COMPOSITIONFULL = 0x0284:UINT equ WM_IME_SELECT = 0x0285:UINT equ WM_IME_CHAR = 0x0286:UINT equ WM_IME_REQUEST = 0x0288:UINT equ WM_IME_KEYDOWN = 0x0290:UINT equ WM_IME_KEYUP = 0x0291:UINT equ WM_MOUSEHOVER = 0x02A1:UINT equ WM_MOUSELEAVE = 0x02A3:UINT equ WM_CUT = 0x0300:UINT equ WM_COPY = 0x0301:UINT equ WM_PASTE = 0x0302:UINT equ WM_CLEAR = 0x0303:UINT equ WM_UNDO = 0x0304:UINT equ WM_RENDERFORMAT = 0x0305:UINT equ WM_RENDERALLFORMATS = 0x0306:UINT equ WM_DESTROYCLIPBOARD = 0x0307:UINT equ WM_DRAWCLIPBOARD = 0x0308:UINT equ WM_PAINTCLIPBOARD = 0x0309:UINT equ WM_VSCROLLCLIPBOARD = 0x030A:UINT equ WM_SIZECLIPBOARD = 0x030B:UINT equ WM_ASKCBFORMATNAME = 0x030C:UINT equ WM_CHANGECBCHAIN = 0x030D:UINT equ WM_HSCROLLCLIPBOARD = 0x030E:UINT equ WM_QUERYNEWPALETTE = 0x030F:UINT equ WM_PALETTEISCHANGING = 0x0310:UINT equ WM_PALETTECHANGED = 0x0311:UINT equ WM_HOTKEY = 0x0312:UINT equ WM_PRINT = 0x0317:UINT equ WM_PRINTCLIENT = 0x0318:UINT equ WM_HANDHELDFIRST = 0x0358:UINT equ WM_HANDHELDLAST = 0x035F:UINT equ WM_AFXFIRST = 0x0360:UINT equ WM_AFXLAST = 0x037F:UINT equ WM_PENWINFIRST = 0x0380:UINT equ WM_PENWINLAST = 0x038F:UINT equ WM_APP = 0x8000:UINT equ WM_USER = 0x0400:UINT //[cf] //[of]: RedrawWindow() Flags //[c] equ RDW_INVALIDATE = 0x0001 equ RDW_INTERNALPAINT = 0x0002 equ RDW_ERASE = 0x0004 equ RDW_VALIDATE = 0x0008 equ RDW_NOINTERNALPAINT = 0x0010 equ RDW_NOERASE = 0x0020 equ RDW_NOCHILDREN = 0x0040 equ RDW_ALLCHILDREN = 0x0080 equ RDW_UPDATENOW = 0x0100 equ RDW_ERASENOW = 0x0200 equ RDW_FRAME = 0x0400 equ RDW_NOFRAME = 0x0800 //[cf] //[of]: Dialog Box Constants //[c] equ IDOK = 1 equ IDCANCEL = 2 equ IDABORT = 3 equ IDRETRY = 4 equ IDIGNORE = 5 equ IDYES = 6 equ IDNO = 7 equ IDCLOSE = 8 equ IDHELP = 9 //[cf] //[of]: Message Box Constants //[c] equ MB_USERICON = 128 equ MB_ICONASTERISK = 64 equ MB_ICONEXCLAMATION = 0x30 equ MB_ICONWARNING = 0x30 equ MB_ICONERROR = 16 equ MB_ICONHAND = 16 equ MB_ICONQUESTION = 32 equ MB_OK = 0 equ MB_ABORTRETRYIGNORE = 2 equ MB_APPLMODAL = 0 equ MB_DEFAULT_DESKTOP_ONLY = 0x20000 equ MB_HELP = 0x4000 equ MB_RIGHT = 0x80000 equ MB_RTLREADING = 0x100000 equ MB_DEFBUTTON1 = 0 equ MB_DEFBUTTON2 = 256 equ MB_DEFBUTTON3 = 512 equ MB_DEFBUTTON4 = 0x300 equ MB_ICONINFORMATION = 64 equ MB_ICONSTOP = 16 equ MB_OKCANCEL = 1 equ MB_RETRYCANCEL = 5 equ MB_SETFOREGROUND = 0x10000 equ MB_SYSTEMMODAL = 4096 equ MB_TASKMODAL = 0x2000 equ MB_YESNO = 4 equ MB_YESNOCANCEL = 3 equ MB_ICONMASK = 240 equ MB_DEFMASK = 3840 equ MB_MODEMASK = 0x00003000 equ MB_MISCMASK = 0x0000C000 equ MB_NOFOCUS = 0x00008000 equ MB_TYPEMASK = 15 equ MB_TOPMOST = 0x40000 //[cf] //[c] //[of]: Builtin Icons //[c] equ IDI_HAND = 32513:LPCSTR equ IDI_APPLICATION = 32512:LPCSTR equ IDI_QUESTION = 32514:LPCSTR equ IDI_EXCLAMATION = 32515:LPCSTR equ IDI_ASTERISK = 32516:LPCSTR //[cf] //[of]: Builtin Cursors //[c] equ IDC_ARROW = 32512:LPCSTR equ IDC_IBEAM = 32513:LPCSTR equ IDC_WAIT = 32514:LPCSTR equ IDC_CROSS = 32515:LPCSTR equ IDC_UPARROW = 32516:LPCSTR equ IDC_SIZE = 32640:LPCSTR equ IDC_ICON = 32641:LPCSTR equ IDC_SIZENWSE = 32642:LPCSTR equ IDC_SIZENESW = 32643:LPCSTR equ IDC_SIZEWE = 32644:LPCSTR equ IDC_SIZENS = 32645:LPCSTR equ IDC_SIZEALL = 32646:LPCSTR equ IDC_NO = 32648:LPCSTR equ IDC_HAND = 32649:LPCSTR equ IDC_APPSTARTING = 32650:LPCSTR equ IDC_HELP = 32651:LPCSTR //[cf] //[c] //[of]: Color Constants //[c] equ COLOR_SCROLLBAR = 0 equ COLOR_BACKGROUND = 1 equ COLOR_ACTIVECAPTION = 2 equ COLOR_INACTIVECAPTION = 3 equ COLOR_MENU = 4 equ COLOR_WINDOW = 5 equ COLOR_WINDOWFRAME = 6 equ COLOR_MENUTEXT = 7 equ COLOR_WINDOWTEXT = 8 equ COLOR_CAPTIONTEXT = 9 equ COLOR_ACTIVEBORDER = 10 equ COLOR_INACTIVEBORDER = 11 equ COLOR_APPWORKSPACE = 12 equ COLOR_HIGHLIGHT = 13 equ COLOR_HIGHLIGHTTEXT = 14 equ COLOR_BTNFACE = 15 equ COLOR_BTNSHADOW = 16 equ COLOR_GRAYTEXT = 17 equ COLOR_BTNTEXT = 18 equ COLOR_INACTIVECAPTIONTEXT = 19 equ COLOR_BTNHIGHLIGHT = 20 equ COLOR_3DDKSHADOW = 21 equ COLOR_3DLIGHT = 22 equ COLOR_INFOTEXT = 23 equ COLOR_INFOBK = 24 equ COLOR_HOTLIGHT = 26 equ COLOR_GRADIENTACTIVECAPTION = 27 equ COLOR_GRADIENTINACTIVECAPTION = 28 equ COLOR_DESKTOP = COLOR_BACKGROUND equ COLOR_3DFACE = COLOR_BTNFACE equ COLOR_3DSHADOW = COLOR_BTNSHADOW equ COLOR_3DHIGHLIGHT = COLOR_BTNHIGHLIGHT equ COLOR_3DHILIGHT = COLOR_BTNHIGHLIGHT equ COLOR_BTNHILIGHT = COLOR_BTNHIGHLIGHT //[cf] //[of]: Window Styles //[c] equ WS_OVERLAPPED = 0x00000000:DWORD equ WS_POPUP = 0x80000000:DWORD equ WS_CHILD = 0x40000000:DWORD equ WS_MINIMIZE = 0x20000000:DWORD equ WS_VISIBLE = 0x10000000:DWORD equ WS_DISABLED = 0x08000000:DWORD equ WS_CLIPSIBLINGS = 0x04000000:DWORD equ WS_CLIPCHILDREN = 0x02000000:DWORD equ WS_MAXIMIZE = 0x01000000:DWORD equ WS_CAPTION = 0x00C00000:DWORD equ WS_BORDER = 0x00800000:DWORD equ WS_DLGFRAME = 0x00400000:DWORD equ WS_VSCROLL = 0x00200000:DWORD equ WS_HSCROLL = 0x00100000:DWORD equ WS_SYSMENU = 0x00080000:DWORD equ WS_THICKFRAME = 0x00040000:DWORD equ WS_GROUP = 0x00020000:DWORD equ WS_TABSTOP = 0x00010000:DWORD equ WS_MINIMIZEBOX = 0x00020000:DWORD equ WS_MAXIMIZEBOX = 0x00010000:DWORD equ WS_TILED = 0x00000000:DWORD equ WS_ICONIC = 0x20000000:DWORD equ WS_SIZEBOX = 0x00040000:DWORD equ WS_OVERLAPPEDWINDOW = 0x00CF0000:DWORD equ WS_POPUPWINDOW = 0x80880000:DWORD equ WS_CHILDWINDOW = 0x40000000:DWORD equ WS_TILEDWINDOW = 0x00CF0000:DWORD //[c] equ WS_EX_DLGMODALFRAME = 0x00000001:DWORD equ WS_EX_NOPARENTNOTIFY = 0x00000004:DWORD equ WS_EX_TOPMOST = 0x00000008:DWORD equ WS_EX_ACCEPTFILES = 0x00000010:DWORD equ WS_EX_TRANSPARENT = 0x00000020:DWORD equ WS_EX_MDICHILD = 0x00000040:DWORD equ WS_EX_TOOLWINDOW = 0x00000080:DWORD equ WS_EX_WINDOWEDGE = 0x00000100:DWORD equ WS_EX_CLIENTEDGE = 0x00000200:DWORD equ WS_EX_CONTEXTHELP = 0x00000400:DWORD equ WS_EX_RIGHT = 0x00001000:DWORD equ WS_EX_LEFT = 0x00000000:DWORD equ WS_EX_RTLREADING = 0x00002000:DWORD equ WS_EX_LTRREADING = 0x00000000:DWORD equ WS_EX_LEFTSCROLLBAR = 0x00004000:DWORD equ WS_EX_RIGHTSCROLLBAR = 0x00000000:DWORD equ WS_EX_CONTROLPARENT = 0x00010000:DWORD equ WS_EX_STATICEDGE = 0x00020000:DWORD equ WS_EX_APPWINDOW = 0x00040000:DWORD equ WS_EX_OVERLAPPEDWINDOW = 0x00000300:DWORD equ WS_EX_PALETTEWINDOW = 0x00000188:DWORD //[cf] //[of]: Class Styles //[c] equ CS_VREDRAW = 0x0001 equ CS_HREDRAW = 0x0002 equ CS_DBLCLKS = 0x0008 equ CS_OWNDC = 0x0020 equ CS_CLASSDC = 0x0040 equ CS_PARENTDC = 0x0080 equ CS_NOCLOSE = 0x0200 equ CS_SAVEBITS = 0x0800 equ CS_BYTEALIGNCLIENT = 0x1000 equ CS_BYTEALIGNWINDOW = 0x2000 equ CS_GLOBALCLASS = 0x4000 equ CS_IME = 0x00010000 //[cf] //[of]: SetWindowPos() Flags //[c] equ SWP_NOSIZE = 0x0001 equ SWP_NOMOVE = 0x0002 equ SWP_NOZORDER = 0x0004 equ SWP_NOREDRAW = 0x0008 equ SWP_NOACTIVATE = 0x0010 equ SWP_FRAMECHANGED = 0x0020 equ SWP_SHOWWINDOW = 0x0040 equ SWP_HIDEWINDOW = 0x0080 equ SWP_NOCOPYBITS = 0x0100 equ SWP_NOOWNERZORDER = 0x0200 equ SWP_NOSENDCHANGING = 0x0400 equ SWP_DRAWFRAME = 0x0020 equ SWP_NOREPOSITION = 0x0200 //[cf] //[of]: ShowWindow() Commands //[c] equ SW_HIDE = 0 equ SW_SHOWNORMAL = 1 equ SW_NORMAL = 1 equ SW_SHOWMINIMIZED = 2 equ SW_SHOWMAXIMIZED = 3 equ SW_MAXIMIZE = 3 equ SW_SHOWNOACTIVATE = 4 equ SW_SHOW = 5 equ SW_MINIMIZE = 6 equ SW_SHOWMINNOACTIVE = 7 equ SW_SHOWNA = 8 equ SW_RESTORE = 9 equ SW_SHOWDEFAULT = 10 equ SW_FORCEMINIMIZE = 11 equ SW_MAX = 11 //[cf] //[c] //[of]: Edit Control Constants //[c] equ ES_LEFT = 0x0000:DWORD equ ES_CENTER = 0x0001:DWORD equ ES_RIGHT = 0x0002:DWORD equ ES_MULTILINE = 0x0004:DWORD equ ES_UPPERCASE = 0x0008:DWORD equ ES_LOWERCASE = 0x0010:DWORD equ ES_PASSWORD = 0x0020:DWORD equ ES_AUTOVSCROLL = 0x0040:DWORD equ ES_AUTOHSCROLL = 0x0080:DWORD equ ES_NOHIDESEL = 0x0100:DWORD equ ES_OEMCONVERT = 0x0400:DWORD equ ES_READONLY = 0x0800:DWORD equ ES_WANTRETURN = 0x1000:DWORD equ ES_NUMBER = 0x2000:DWORD //[c] equ EN_SETFOCUS = 0x0100:DWORD equ EN_KILLFOCUS = 0x0200:DWORD equ EN_CHANGE = 0x0300:DWORD equ EN_UPDATE = 0x0400:DWORD equ EN_ERRSPACE = 0x0500:DWORD equ EN_MAXTEXT = 0x0501:DWORD equ EN_HSCROLL = 0x0601:DWORD equ EN_VSCROLL = 0x0602:DWORD //[c] equ EC_LEFTMARGIN = 0x0001:DWORD equ EC_RIGHTMARGIN = 0x0002:DWORD equ EC_USEFONTINFO = 0xFFFF:DWORD //[c] equ EM_GETSEL = 0x00B0:DWORD equ EM_SETSEL = 0x00B1:DWORD equ EM_GETRECT = 0x00B2:DWORD equ EM_SETRECT = 0x00B3:DWORD equ EM_SETRECTNP = 0x00B4:DWORD equ EM_SCROLL = 0x00B5:DWORD equ EM_LINESCROLL = 0x00B6:DWORD equ EM_SCROLLCARET = 0x00B7:DWORD equ EM_GETMODIFY = 0x00B8:DWORD equ EM_SETMODIFY = 0x00B9:DWORD equ EM_GETLINECOUNT = 0x00BA:DWORD equ EM_LINEINDEX = 0x00BB:DWORD equ EM_SETHANDLE = 0x00BC:DWORD equ EM_GETHANDLE = 0x00BD:DWORD equ EM_GETTHUMB = 0x00BE:DWORD equ EM_LINELENGTH = 0x00C1:DWORD equ EM_REPLACESEL = 0x00C2:DWORD equ EM_GETLINE = 0x00C4:DWORD equ EM_LIMITTEXT = 0x00C5:DWORD equ EM_CANUNDO = 0x00C6:DWORD equ EM_UNDO = 0x00C7:DWORD equ EM_FMTLINES = 0x00C8:DWORD equ EM_LINEFROMCHAR = 0x00C9:DWORD equ EM_SETTABSTOPS = 0x00CB:DWORD equ EM_SETPASSWORDCHAR = 0x00CC:DWORD equ EM_EMPTYUNDOBUFFER = 0x00CD:DWORD equ EM_GETFIRSTVISIBLELINE = 0x00CE:DWORD equ EM_SETREADONLY = 0x00CF:DWORD equ EM_SETWORDBREAKPROC = 0x00D0:DWORD equ EM_GETWORDBREAKPROC = 0x00D1:DWORD equ EM_GETPASSWORDCHAR = 0x00D2:DWORD equ EM_SETMARGINS = 0x00D3:DWORD equ EM_GETMARGINS = 0x00D4:DWORD equ EM_SETLIMITTEXT = 0x00C5:DWORD equ EM_GETLIMITTEXT = 0x00D5:DWORD equ EM_POSFROMCHAR = 0x00D6:DWORD equ EM_CHARFROMPOS = 0x00D7:DWORD equ EM_SETIMESTATUS = 0x00D8:DWORD equ EM_GETIMESTATUS = 0x00D9:DWORD //[cf] //[of]: Button Control Constants //[c] equ BS_PUSHBUTTON = 0x00000000:DWORD equ BS_DEFPUSHBUTTON = 0x00000001:DWORD equ BS_CHECKBOX = 0x00000002:DWORD equ BS_AUTOCHECKBOX = 0x00000003:DWORD equ BS_RADIOBUTTON = 0x00000004:DWORD equ BS_3STATE = 0x00000005:DWORD equ BS_AUTO3STATE = 0x00000006:DWORD equ BS_GROUPBOX = 0x00000007:DWORD equ BS_USERBUTTON = 0x00000008:DWORD equ BS_AUTORADIOBUTTON = 0x00000009:DWORD equ BS_OWNERDRAW = 0x0000000B:DWORD equ BS_LEFTTEXT = 0x00000020:DWORD equ BS_TEXT = 0x00000000:DWORD equ BS_ICON = 0x00000040:DWORD equ BS_BITMAP = 0x00000080:DWORD equ BS_LEFT = 0x00000100:DWORD equ BS_RIGHT = 0x00000200:DWORD equ BS_CENTER = 0x00000300:DWORD equ BS_TOP = 0x00000400:DWORD equ BS_BOTTOM = 0x00000800:DWORD equ BS_VCENTER = 0x00000C00:DWORD equ BS_PUSHLIKE = 0x00001000:DWORD equ BS_MULTILINE = 0x00002000:DWORD equ BS_NOTIFY = 0x00004000:DWORD equ BS_FLAT = 0x00008000:DWORD equ BS_RIGHTBUTTON = 0x00000020:DWORD //[c] equ BN_CLICKED = 0:DWORD equ BN_PAINT = 1:DWORD equ BN_HILITE = 2:DWORD equ BN_UNHILITE = 3:DWORD equ BN_DISABLE = 4:DWORD equ BN_DOUBLECLICKED = 5:DWORD equ BN_PUSHED = 2:DWORD equ BN_UNPUSHED = 3:DWORD equ BN_DBLCLK = 5:DWORD equ BN_SETFOCUS = 6:DWORD equ BN_KILLFOCUS = 7:DWORD //[c] equ BM_GETCHECK = 0x00F0 equ BM_SETCHECK = 0x00F1 equ BM_GETSTATE = 0x00F2 equ BM_SETSTATE = 0x00F3 equ BM_SETSTYLE = 0x00F4 equ BM_CLICK = 0x00F5 equ BM_GETIMAGE = 0x00F6 equ BM_SETIMAGE = 0x00F7 equ BST_UNCHECKED = 0x0000 equ BST_CHECKED = 0x0001 equ BST_INDETERMINATE = 0x0002 equ BST_PUSHED = 0x0004 equ BST_FOCUS = 0x0008 //[cf] //[of]: Listbox Constants //[c] equ LB_OKAY = 0 equ LB_ERR = -1 equ LB_ERRSPACE = -2 //[c] equ LBN_ERRSPACE = -2 equ LBN_SELCHANGE = 1 equ LBN_DBLCLK = 2 equ LBN_SELCANCEL = 3 equ LBN_SETFOCUS = 4 equ LBN_KILLFOCUS = 5 //[c] equ LB_ADDSTRING = 0x0180 equ LB_INSERTSTRING = 0x0181 equ LB_DELETESTRING = 0x0182 equ LB_SELITEMRANGEEX = 0x0183 equ LB_RESETCONTENT = 0x0184 equ LB_SETSEL = 0x0185 equ LB_SETCURSEL = 0x0186 equ LB_GETSEL = 0x0187 equ LB_GETCURSEL = 0x0188 equ LB_GETTEXT = 0x0189 equ LB_GETTEXTLEN = 0x018A equ LB_GETCOUNT = 0x018B equ LB_SELECTSTRING = 0x018C equ LB_DIR = 0x018D equ LB_GETTOPINDEX = 0x018E equ LB_FINDSTRING = 0x018F equ LB_GETSELCOUNT = 0x0190 equ LB_GETSELITEMS = 0x0191 equ LB_SETTABSTOPS = 0x0192 equ LB_GETHORIZONTALEXTENT = 0x0193 equ LB_SETHORIZONTALEXTENT = 0x0194 equ LB_SETCOLUMNWIDTH = 0x0195 equ LB_ADDFILE = 0x0196 equ LB_SETTOPINDEX = 0x0197 equ LB_GETITEMRECT = 0x0198 equ LB_GETITEMDATA = 0x0199 equ LB_SETITEMDATA = 0x019A equ LB_SELITEMRANGE = 0x019B equ LB_SETANCHORINDEX = 0x019C equ LB_GETANCHORINDEX = 0x019D equ LB_SETCARETINDEX = 0x019E equ LB_GETCARETINDEX = 0x019F equ LB_SETITEMHEIGHT = 0x01A0 equ LB_GETITEMHEIGHT = 0x01A1 equ LB_FINDSTRINGEXACT = 0x01A2 equ LB_SETLOCALE = 0x01A5 equ LB_GETLOCALE = 0x01A6 equ LB_SETCOUNT = 0x01A7 equ LB_INITSTORAGE = 0x01A8 equ LB_ITEMFROMPOINT = 0x01A9 //[c] equ LBS_NOTIFY = 0x0001 equ LBS_SORT = 0x0002 equ LBS_NOREDRAW = 0x0004 equ LBS_MULTIPLESEL = 0x0008 equ LBS_OWNERDRAWFIXED = 0x0010 equ LBS_OWNERDRAWVARIABLE = 0x0020 equ LBS_HASSTRINGS = 0x0040 equ LBS_USETABSTOPS = 0x0080 equ LBS_NOINTEGRALHEIGHT = 0x0100 equ LBS_MULTICOLUMN = 0x0200 equ LBS_WANTKEYBOARDINPUT = 0x0400 equ LBS_EXTENDEDSEL = 0x0800 equ LBS_DISABLENOSCROLL = 0x1000 equ LBS_NODATA = 0x2000 equ LBS_NOSEL = 0x4000 equ LBS_STANDARD = 0xA00003 //[cf] //[of]: Combo Box Constants //[c] equ CB_OKAY = 0 equ CB_ERR = -1 equ CB_ERRSPACE = -2 //[c] equ CBN_ERRSPACE = -1 equ CBN_SELCHANGE = 1 equ CBN_DBLCLK = 2 equ CBN_SETFOCUS = 3 equ CBN_KILLFOCUS = 4 equ CBN_EDITCHANGE = 5 equ CBN_EDITUPDATE = 6 equ CBN_DROPDOWN = 7 equ CBN_CLOSEUP = 8 equ CBN_SELENDOK = 9 equ CBN_SELENDCANCEL = 10 //[c] equ CBS_SIMPLE = 0x0001 equ CBS_DROPDOWN = 0x0002 equ CBS_DROPDOWNLIST = 0x0003 equ CBS_OWNERDRAWFIXED = 0x0010 equ CBS_OWNERDRAWVARIABLE = 0x0020 equ CBS_AUTOHSCROLL = 0x0040 equ CBS_OEMCONVERT = 0x0080 equ CBS_SORT = 0x0100 equ CBS_HASSTRINGS = 0x0200 equ CBS_NOINTEGRALHEIGHT = 0x0400 equ CBS_DISABLENOSCROLL = 0x0800 equ CBS_UPPERCASE = 0x2000 equ CBS_LOWERCASE = 0x4000 //[c] equ CB_GETEDITSEL = 0x0140 equ CB_LIMITTEXT = 0x0141 equ CB_SETEDITSEL = 0x0142 equ CB_ADDSTRING = 0x0143 equ CB_DELETESTRING = 0x0144 equ CB_DIR = 0x0145 equ CB_GETCOUNT = 0x0146 equ CB_GETCURSEL = 0x0147 equ CB_GETLBTEXT = 0x0148 equ CB_GETLBTEXTLEN = 0x0149 equ CB_INSERTSTRING = 0x014A equ CB_RESETCONTENT = 0x014B equ CB_FINDSTRING = 0x014C equ CB_SELECTSTRING = 0x014D equ CB_SETCURSEL = 0x014E equ CB_SHOWDROPDOWN = 0x014F equ CB_GETITEMDATA = 0x0150 equ CB_SETITEMDATA = 0x0151 equ CB_GETDROPPEDCONTROLRECT = 0x0152 equ CB_SETITEMHEIGHT = 0x0153 equ CB_GETITEMHEIGHT = 0x0154 equ CB_SETEXTENDEDUI = 0x0155 equ CB_GETEXTENDEDUI = 0x0156 equ CB_GETDROPPEDSTATE = 0x0157 equ CB_FINDSTRINGEXACT = 0x0158 equ CB_SETLOCALE = 0x0159 equ CB_GETLOCALE = 0x015A equ CB_GETTOPINDEX = 0x015b equ CB_SETTOPINDEX = 0x015c equ CB_GETHORIZONTALEXTENT = 0x015d equ CB_SETHORIZONTALEXTENT = 0x015e equ CB_GETDROPPEDWIDTH = 0x015f equ CB_SETDROPPEDWIDTH = 0x0160 equ CB_INITSTORAGE = 0x0161 equ CB_MSGMAX= 0x0162 //[c] equ DDL_READWRITE = 0x0000 equ DDL_READONLY = 0x0001 equ DDL_HIDDEN = 0x0002 equ DDL_SYSTEM = 0x0004 equ DDL_DIRECTORY = 0x0010 equ DDL_ARCHIVE = 0x0020 equ DDL_POSTMSGS = 0x2000 equ DDL_DRIVES = 0x4000 equ DDL_EXCLUSIVE = 0x8000 //[cf] //[of]: ScrollBars Constants //[c] equ SBS_BOTTOMALIGN = 4 equ SBS_HORZ = 0 equ SBS_LEFTALIGN = 2 equ SBS_RIGHTALIGN = 4 equ SBS_SIZEBOX = 8 equ SBS_SIZEBOXBOTTOMRIGHTALIGN = 4 equ SBS_SIZEBOXTOPLEFTALIGN = 2 equ SBS_SIZEGRIP = 16 equ SBS_TOPALIGN = 2 equ SBS_VERT = 1 //[c] equ SIF_ALL = 23 equ SIF_PAGE = 2 equ SIF_POS = 4 equ SIF_RANGE = 1 equ SIF_DISABLENOSCROLL = 8 equ SIF_TRACKPOS = 16 //[c] equ SB_HORZ = 0 equ SB_VERT = 1 equ SB_CTL = 2 equ SB_BOTH = 3 equ ESB_DISABLE_BOTH = 3 equ ESB_DISABLE_DOWN = 2 equ ESB_DISABLE_LEFT = 1 equ ESB_DISABLE_LTUP = 1 equ ESB_DISABLE_RIGHT= 2 equ ESB_DISABLE_RTDN = 2 equ ESB_DISABLE_UP = 1 equ ESB_ENABLE_BOTH = 0 equ SB_LINEUP = 0 equ SB_LINEDOWN = 1 equ SB_LINELEFT = 0 equ SB_LINERIGHT = 1 equ SB_PAGEUP = 2 equ SB_PAGEDOWN = 3 equ SB_PAGELEFT = 2 equ SB_PAGERIGHT = 3 equ SB_THUMBPOSITION = 4 equ SB_THUMBTRACK = 5 equ SB_ENDSCROLL = 8 equ SB_LEFT = 6 equ SB_RIGHT = 7 equ SB_BOTTOM = 7 equ SB_TOP = 6 //[cf] //[c] //[of]: Clipboard Formats //[c] equ CF_TEXT = 1:DWORD equ CF_BITMAP = 2:DWORD equ CF_METAFILEPICT = 3:DWORD equ CF_SYLK = 4:DWORD equ CF_DIF = 5:DWORD equ CF_TIFF = 6:DWORD equ CF_OEMTEXT = 7:DWORD equ CF_DIB = 8:DWORD equ CF_PALETTE = 9:DWORD equ CF_PENDATA = 10:DWORD equ CF_RIFF = 11:DWORD equ CF_WAVE = 12:DWORD equ CF_UNICODETEXT = 13:DWORD equ CF_ENHMETAFILE = 14:DWORD equ CF_HDROP = 15:DWORD equ CF_LOCALE = 16:DWORD equ CF_MAX = 17:DWORD equ CF_OWNERDISPLAY = 0x0080:DWORD equ CF_DSPTEXT = 0x0081:DWORD equ CF_DSPBITMAP = 0x0082:DWORD equ CF_DSPMETAFILEPICT = 0x0083:DWORD equ CF_DSPENHMETAFILE = 0x008E:DWORD equ CF_PRIVATEFIRST = 0x0200:DWORD equ CF_PRIVATELAST = 0x02FF:DWORD equ CF_GDIOBJFIRST = 0x0300:DWORD equ CF_GDIOBJLAST = 0x03FF:DWORD //[cf] //[of]: DrawText() Flags //[c] equ DT_TOP = 0x00000000:UINT equ DT_LEFT = 0x00000000:UINT equ DT_CENTER = 0x00000001:UINT equ DT_RIGHT = 0x00000002:UINT equ DT_VCENTER = 0x00000004:UINT equ DT_BOTTOM = 0x00000008:UINT equ DT_WORDBREAK = 0x00000010:UINT equ DT_SINGLELINE = 0x00000020:UINT equ DT_EXPANDTABS = 0x00000040:UINT equ DT_TABSTOP = 0x00000080:UINT equ DT_NOCLIP = 0x00000100:UINT equ DT_EXTERNALLEADING = 0x00000200:UINT equ DT_CALCRECT = 0x00000400:UINT equ DT_NOPREFIX = 0x00000800:UINT equ DT_INTERNAL = 0x00001000:UINT equ DT_EDITCONTROL = 0x00002000:UINT equ DT_PATH_ELLIPSIS = 0x00004000:UINT equ DT_END_ELLIPSIS = 0x00008000:UINT equ DT_MODIFYSTRING = 0x00010000:UINT equ DT_RTLREADING = 0x00020000:UINT equ DT_WORD_ELLIPSIS = 0x00040000:UINT //[cf] //[of]: Menu Flags //[c] equ MF_INSERT = 0x00000000:UINT equ MF_CHANGE = 0x00000080:UINT equ MF_APPEND = 0x00000100:UINT equ MF_DELETE = 0x00000200:UINT equ MF_REMOVE = 0x00001000:UINT equ MF_BYCOMMAND = 0x00000000:UINT equ MF_BYPOSITION = 0x00000400:UINT equ MF_SEPARATOR = 0x00000800:UINT equ MF_ENABLED = 0x00000000:UINT equ MF_GRAYED = 0x00000001:UINT equ MF_DISABLED = 0x00000002:UINT equ MF_UNCHECKED = 0x00000000:UINT equ MF_CHECKED = 0x00000008:UINT equ MF_USECHECKBITMAPS= 0x00000200:UINT equ MF_STRING = 0x00000000:UINT equ MF_BITMAP = 0x00000004:UINT equ MF_OWNERDRAW = 0x00000100:UINT equ MF_POPUP = 0x00000010:UINT equ MF_MENUBARBREAK = 0x00000020:UINT equ MF_MENUBREAK = 0x00000040:UINT equ MF_UNHILITE = 0x00000000:UINT equ MF_HILITE = 0x00000080:UINT equ MF_DEFAULT = 0x00001000:UINT equ MF_SYSMENU = 0x00002000:UINT equ MF_HELP = 0x00004000:UINT equ MF_RIGHTJUSTIFY = 0x00004000:UINT equ MF_MOUSESELECT = 0x00008000:UINT //[c] equ TPM_CENTERALIGN = 4 equ TPM_LEFTALIGN = 0 equ TPM_RIGHTALIGN = 8 equ TPM_LEFTBUTTON = 0 equ TPM_RIGHTBUTTON = 2 equ TPM_HORIZONTAL = 0 equ TPM_VERTICAL = 64 equ TPM_TOPALIGN = 0 equ TPM_VCENTERALIGN = 16 equ TPM_BOTTOMALIGN = 32 equ TPM_NONOTIFY = 128 equ TPM_RETURNCMD = 256 equ TPM_RECURSE = 1 //[cf] //[c] equ CW_USEDEFAULT = 0x80000000:int equ ICON_SMALL = 0 equ ICON_BIG = 1 equ PM_NOREMOVE = 0 equ PM_REMOVE = 1 equ PM_NOYIELD = 2 //[cf] //[of]: Structures //[c] //[of]: MINMAXINFO //[c] struct MINMAXINFO ptReserved: POINT ptMaxSize: POINT ptMaxPosition: POINT ptMinTrackSize: POINT ptMaxTrackSize: POINT end //[cf] //[of]: WNDCLASS //[c] struct WNDCLASSA style: UINT lpfnWndProc: WNDPROC cbClsExtra: int cbWndExtra: int hInstance: HINSTANCE hIcon: HICON hCursor: HCURSOR hbrBackground: HBRUSH lpszMenuName: LPCSTR lpszClassName: LPCSTR end //[cf] //[of]: LPMSG //[c] struct LPMSG hwnd: HWND message: UINT wParam: WPARAM lParam: LPARAM time: DWORD pt: POINT end //[cf] //[of]: LPNMHDR //[c] struct LPNMHDR hwndFrom: HWND idFrom: UINT code: UINT end typedef NMHDR = local LPNMHDR //[cf] //[of]: PAINTSTRUCT //[c] struct LPPAINTSTRUCT hdc: HDC fErase: BOOL rcPaint: RECT fRestore: BOOL fIncUpdate: BOOL rgbReserved: [32] BYTE end typedef PAINTSTRUCT = local LPPAINTSTRUCT //[cf] //[of]: SCROLLINFO //[c] struct LPSCROLLINFO cbSize: UINT fMask: UINT nMin: int nMax: int nPage: UINT nPos: int ; nTrackPos: int end typedef SCROLLINFO = local LPSCROLLINFO typedef LPCSCROLLINFO = LPSCROLLINFO //[cf] //[of]: COPYDATASTRUCT struct PCOPYDATASTRUCT dwData: DWORD cbData: DWORD lpData: PVOID end typedef COPYDATASTRUCT = local PCOPYDATASTRUCT //[cf] //[cf] //[of]: Functions //[c] public [name="c", call="__stdcall"] import func MessageBoxA(HWND,LPCSTR,LPCSTR,int): int import func CreateWindowExA(DWORD,LPCSTR ,LPCSTR ,DWORD,int,int,int,int,HWND,HMENU,HINSTANCE,LPVOID): HWND import func DefWindowProcA(HWND,UINT,WPARAM ,LPARAM ): LRESULT import func CallWindowProcA(WNDPROC,HWND,UINT,WPARAM ,LPARAM ): LRESULT import func ExitProcess(UINT) import func GetSysColor(int): DWORD import func GetSysColorBrush(int): HBRUSH import func RegisterClassA(WNDCLASSA): ATOM import func GetLastError: DWORD import func ShowWindow(HWND,int): BOOL import func EnableWindow(HWND,BOOL): BOOL import func UpdateWindow(HWND): BOOL import func SetActiveWindow(HWND): HWND import func LoadIconA(HINSTANCE,LPCSTR): HICON import func LoadCursorA(HINSTANCE,LPCSTR): HCURSOR import func PostQuitMessage(int) import func AdjustWindowRect(LPRECT,DWORD,BOOL): BOOL import func AdjustWindowRectEx(LPRECT,DWORD,BOOL,DWORD): BOOL import func GetClientRect(HWND,LPRECT): int import func GetWindowRect(HWND,LPRECT): BOOL import func GetMessageA(LPMSG,HWND,UINT,UINT): BOOL import func PeekMessageA(LPMSG,HWND,UINT,UINT, UINT): BOOL import func TranslateMessage(LPMSG): BOOL import func DispatchMessageA(LPMSG): LONG import func SetFocus(HWND): HWND import func GetWindowLongA(HWND,int): LONG import func SetWindowLongA(HWND,int,LONG): LONG import func GetWindowTextLengthA (HWND): int import func GetWindowTextA(HWND,LPSTR,int): int import func SetWindowTextA(HWND,LPCSTR): BOOL import func FindWindowA(LPCSTR, LPCSTR): HWND import func FindWindowExA (HWND,HWND,LPCSTR,LPCSTR): HWND import func GetWindowDC(HWND): HDC import func ReleaseDC(HWND,HDC): int import func BeginPaint(HWND,LPPAINTSTRUCT): HDC import func EndPaint(HWND,LPPAINTSTRUCT): BOOL import func GetUpdateRect(HWND,LPRECT,BOOL): BOOL import func InvalidateRect(HWND,LPRECT,BOOL): BOOL import func ValidateRect(HWND,LPRECT): BOOL import func RedrawWindow (HWND,LPRECT,HRGN,UINT): BOOL import func DestroyWindow (HWND): BOOL import func GetKeyState(int):SHORT import func GetAsyncKeyState(int):SHORT import func GetKeyboardState([]BYTE):BOOL import func SetWindowPos(HWND,HWND,int,int,int,int,UINT): BOOL import func SendMessageA(HWND,UINT,WPARAM,LPARAM): LRESULT import func PostMessageA(HWND,UINT,WPARAM,LPARAM): BOOL import func MoveWindow(HWND,int,int,int,int,BOOL ): BOOL import func GetDC(HWND): HDC import func DrawFocusRect(HDC,LPRECT): BOOL import func FillRect(HDC,LPRECT,HBRUSH): int import func FrameRect(HDC,LPRECT,HBRUSH): int import func InvertRect(HDC,LPRECT): BOOL import func DrawTextA(HDC,LPCSTR,int,LPRECT,UINT): int import func OpenClipboard(HWND): BOOL import func CloseClipboard: BOOL import func EnumClipboardFormats(UINT): UINT import func RegisterClipboardFormatA(LPCTSTR): UINT import func SetClipboardData(UINT,HANDLE): HANDLE import func GetClipboardData(UINT): HANDLE import func EmptyClipboard: BOOL import func IsClipboardFormatAvailable(UINT): BOOL import func GetSystemMenu(HWND,BOOL): HMENU import func CreateMenu: HMENU import func CreatePopupMenu: HMENU import func DestroyMenu(HMENU): BOOL import func CheckMenuItem(HMENU,UINT,UINT): DWORD import func EnableMenuItem(HMENU,UINT,UINT): BOOL import func GetSubMenu(HMENU,int): HMENU import func GetMenuItemID(HMENU,int):UINT import func GetMenuItemCount(HMENU): int import func InsertMenuA(HMENU,UINT,UINT,UINT,LPCSTR): BOOL import func AppendMenuA(HMENU,UINT,UINT,LPCSTR): BOOL import func ModifyMenuA(HMENU,UINT,UINT,UINT,LPCSTR): BOOL import func RemoveMenu(HMENU,UINT,UINT): BOOL import func SetMenu(HWND, HMENU): BOOL import func DeleteMenu(HMENU,UINT,UINT): BOOL import func SetMenuItemBitmaps(HMENU,UINT,UINT,HBITMAP,HBITMAP): BOOL import func GetMenuCheckMarkDimensions: LONG import func TrackPopupMenu(HMENU,UINT,int,int,int,HWND,LPRECT): BOOL import func GetFocus: HWND import func SetCapture (HWND): HWND import func ReleaseCapture: BOOL import func SetTimer(HWND,UINT,UINT,TIMERPROC): UINT import func KillTimer(HWND,UINT): BOOL import func GetSystemMetrics(int): int import func SetScrollInfo(HWND,int,LPCSCROLLINFO,BOOL): int import func GetScrollInfo(HWND,int,LPSCROLLINFO): BOOL import func ShowScrollBar(HWND,int,BOOL): BOOL import func ClientToScreen(HWND,LPPOINT): BOOL import func ScreenToClient(HWND,LPPOINT): BOOL import func SetCursor(HCURSOR): HCURSOR import func GetCursorPos(LPPOINT): BOOL import func SetCursorPos(int,int): BOOL import func SetForegroundWindow(HWND): BOOL import func SetPropA(HWND, LPCTSTR, HANDLE): BOOL import func GetPropA(HWND, LPCTSTR): HANDLE import func EnumWindows(WNDENUMPROC, LPARAM): BOOL import func OpenIcon(HWND): BOOL import func IsIconic(HWND): BOOL import func IsZoomed(HWND): BOOL end //[cf] //[c] //[c]Wingdi //[c] //[of]: Constants //[c] //[of]: Font Constants //[c] equ OUT_DEFAULT_PRECIS = 0:DWORD equ OUT_STRING_PRECIS = 1:DWORD equ OUT_CHARACTER_PRECIS = 2:DWORD equ OUT_STROKE_PRECIS = 3:DWORD equ OUT_TT_PRECIS = 4:DWORD equ OUT_DEVICE_PRECIS = 5:DWORD equ OUT_RASTER_PRECIS = 6:DWORD equ OUT_TT_ONLY_PRECIS = 7:DWORD equ OUT_OUTLINE_PRECIS = 8:DWORD equ OUT_SCREEN_OUTLINE_PRECIS = 9:DWORD //[c] equ CLIP_DEFAULT_PRECIS = 0:DWORD equ CLIP_CHARACTER_PRECIS = 1:DWORD equ CLIP_STROKE_PRECIS = 2:DWORD equ CLIP_MASK = 0xf:DWORD equ CLIP_LH_ANGLES = 14:DWORD equ CLIP_TT_ALWAYS = 24:DWORD equ CLIP_EMBEDDED = 84:DWORD //[c] equ DEFAULT_QUALITY = 0:DWORD equ DRAFT_QUALITY = 1:DWORD equ PROOF_QUALITY = 2:DWORD equ NONANTIALIASED_QUALITY = 3:DWORD equ ANTIALIASED_QUALITY = 4:DWORD //[c] equ DEFAULT_PITCH = 0:DWORD equ FIXED_PITCH = 1:DWORD equ VARIABLE_PITCH = 2:DWORD equ MONO_FONT = 8:DWORD //[c] equ ANSI_CHARSET = 0:DWORD equ DEFAULT_CHARSET = 1:DWORD equ SYMBOL_CHARSET = 2:DWORD equ SHIFTJIS_CHARSET = 128:DWORD equ HANGEUL_CHARSET = 129:DWORD equ HANGUL_CHARSET = 129:DWORD equ GB2312_CHARSET = 134:DWORD equ CHINESEBIG5_CHARSET = 136:DWORD equ OEM_CHARSET = 255:DWORD equ JOHAB_CHARSET = 130:DWORD equ HEBREW_CHARSET = 177:DWORD equ ARABIC_CHARSET = 178:DWORD equ GREEK_CHARSET = 161:DWORD equ TURKISH_CHARSET = 162:DWORD equ VIETNAMESE_CHARSET = 163:DWORD equ THAI_CHARSET = 222:DWORD equ EASTEUROPE_CHARSET = 238:DWORD equ RUSSIAN_CHARSET = 204:DWORD equ MAC_CHARSET = 77:DWORD equ BALTIC_CHARSET = 186:DWORD //[c] equ FS_LATIN1 = 0x00000001 equ FS_LATIN2 = 0x00000002 equ FS_CYRILLIC = 0x00000004 equ FS_GREEK = 0x00000008 equ FS_TURKISH = 0x00000010 equ FS_HEBREW = 0x00000020 equ FS_ARABIC = 0x00000040 equ FS_BALTIC = 0x00000080 equ FS_VIETNAMESE = 0x00000100 equ FS_THAI = 0x00010000 equ FS_JISJAPAN = 0x00020000 equ FS_CHINESESIMP = 0x00040000 equ FS_WANSUNG = 0x00080000 equ FS_CHINESETRAD = 0x00100000 equ FS_JOHAB = 0x00200000 equ FS_SYMBOL = 0x80000000 //[c] equ FF_DONTCARE = 04:DWORD equ FF_ROMAN = 14:DWORD equ FF_SWISS = 24:DWORD equ FF_MODERN = 34:DWORD equ FF_SCRIPT = 44:DWORD equ FF_DECORATIVE = 54:DWORD //[c] equ FW_DONTCARE = 0 equ FW_THIN = 100 equ FW_EXTRALIGHT = 200 equ FW_LIGHT = 300 equ FW_NORMAL = 400 equ FW_MEDIUM = 500 equ FW_SEMIBOLD = 600 equ FW_BOLD = 700 equ FW_EXTRABOLD = 800 equ FW_HEAVY = 900 //[c] equ FW_ULTRALIGHT = FW_EXTRALIGHT equ FW_REGULAR = FW_NORMAL equ FW_DEMIBOLD = FW_SEMIBOLD equ FW_ULTRABOLD = FW_EXTRABOLD equ FW_BLACK = FW_HEAVY //[cf] //[c] equ PS_SOLID = 0 equ PS_DASH = 1 equ PS_DOT = 2 equ PS_DASHDOT = 3 equ PS_DASHDOTDOT = 4 equ PS_NULL = 5 equ PS_INSIDEFRAME = 6 equ PS_USERSTYLE = 7 equ PS_ALTERNATE = 8 equ PS_STYLE_MASK = 0x0000000F equ PS_ENDCAP_ROUND = 0x00000000 equ PS_ENDCAP_SQUARE = 0x00000100 equ PS_ENDCAP_FLAT = 0x00000200 equ PS_ENDCAP_MASK = 0x00000F00 equ PS_JOIN_ROUND = 0x00000000 equ PS_JOIN_BEVEL = 0x00001000 equ PS_JOIN_MITER = 0x00002000 equ PS_JOIN_MASK = 0x0000F000 equ PS_COSMETIC = 0x00000000 equ PS_GEOMETRIC = 0x00010000 equ PS_TYPE_MASK = 0x000F0000 //[c] equ DRIVERVERSION = 0 equ TECHNOLOGY = 2 equ HORZSIZE = 4 equ VERTSIZE = 6 equ HORZRES = 8 equ VERTRES = 10 equ BITSPIXEL = 12 equ PLANES = 14 equ NUMBRUSHES = 16 equ NUMPENS = 18 equ NUMMARKERS = 20 equ NUMFONTS = 22 equ NUMCOLORS = 24 equ PDEVICESIZE = 26 equ CURVECAPS = 28 equ LINECAPS = 30 equ POLYGONALCAPS = 32 equ TEXTCAPS = 34 equ CLIPCAPS = 36 equ RASTERCAPS = 38 equ ASPECTX = 40 equ ASPECTY = 42 equ ASPECTXY = 44 equ SHADEBLENDCAPS = 45 equ LOGPIXELSX = 88 equ LOGPIXELSY = 90 equ SIZEPALETTE = 104 equ NUMRESERVED = 106 equ COLORRES = 108 equ PHYSICALWIDTH = 110 equ PHYSICALHEIGHT = 111 equ PHYSICALOFFSETX = 112 equ PHYSICALOFFSETY = 113 equ SCALINGFACTORX = 114 equ SCALINGFACTORY = 115 equ VREFRESH = 116 equ DESKTOPVERTRES = 117 equ DESKTOPHORZRES = 118 equ BLTALIGNMENT = 119 //[c] equ TRANSPARENT = 1 equ OPAQUE = 2 equ BKMODE_LAST = 2 //[c] equ LF_FACESIZE = 32 //[c] equ ETO_OPAQUE = 2 equ ETO_CLIPPED = 4 //[cf] //[of]: Structures //[c] //[of]: TEXTMETRIC //[c] struct LPTEXTMETRICA tmHeight: LONG tmAscent: LONG tmDescent: LONG tmInternalLeading: LONG tmExternalLeading: LONG tmAveCharWidth: LONG tmMaxCharWidth: LONG tmWeight: LONG tmOverhang: LONG tmDigitizedAspectX: LONG tmDigitizedAspectY: LONG tmFirstChar: BYTE tmLastChar: BYTE tmDefaultChar: BYTE tmBreakChar: BYTE tmItalic: BYTE tmUnderlined: BYTE tmStruckOut: BYTE tmPitchAndFamily: BYTE tmCharSet: BYTE end //[cf] //[of]: LOGFONT //[c] struct LPLOGFONTA lfHeight : LONG lfWidth : LONG lfEscapement : LONG lfOrientation : LONG lfWeight : LONG lfItalic : BYTE lfUnderline : BYTE lfStrikeOut : BYTE lfCharSet : BYTE lfOutPrecision : BYTE lfClipPrecision : BYTE lfQuality : BYTE lfPitchAndFamily : BYTE lfFaceName : [LF_FACESIZE] CHAR end typedef LOGFONTA = local LPLOGFONTA typedef PLOGFONTA = LPLOGFONTA struct LPLOGFONTW lfHeight : LONG lfWidth : LONG lfEscapement : LONG lfOrientation : LONG lfWeight : LONG lfItalic : BYTE lfUnderline : BYTE lfStrikeOut : BYTE lfCharSet : BYTE lfOutPrecision : BYTE lfClipPrecision : BYTE lfQuality : BYTE lfPitchAndFamily : BYTE lfFaceName : [LF_FACESIZE] WCHAR end typedef LOGFONTW = local LPLOGFONTW typedef PLOGFONTW = LPLOGFONTW //[cf] //[cf] //[of]: Functions //[c] public [name="c", call="__stdcall"] import func CreatePen(int,int,COLORREF): HPEN import func CreatePatternBrush(HBITMAP): HBRUSH import func CreateSolidBrush(COLORREF) : HBRUSH import func DeleteObject(HGDIOBJ) : BOOL import func CreateFontA(int,int,int,int,int,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCSTR): HFONT import func SelectObject(HDC,HGDIOBJ): HGDIOBJ import func GetTextMetricsA(HDC,LPTEXTMETRICA): BOOL import func GetTextExtentPointA(HDC,LPCSTR,int ,LPSIZE): BOOL import func GetTextExtentPoint32A(HDC, LPCSTR, int, LPSIZE): BOOL import func TextOutA(HDC,int,int,LPCSTR,int): BOOL import func ExtTextOutA(HDC,int,int,UINT,LPRECT,LPCSTR,int,[]int): BOOL import func SetBkMode(HDC,int): int import func SetBkColor(HDC,COLORREF): COLORREF import func SetTextColor(HDC,COLORREF): COLORREF import func SaveDC(HDC): int import func RestoreDC(HDC,int): BOOL import func IntersectClipRect(HDC,int,int,int,int): int import func Ellipse(HDC,int,int,int,int): BOOL import func GetDeviceCaps (HDC,int): int import func SetTextCharacterExtra (HDC, int): int end //[cf] //[c] //[c]Shell API //[c] //[of]: Constants //[c] typedef HDROP = HANDLE //[cf] //[of]: Functions //[c] public [name="c", call="__stdcall"] import func DragAcceptFiles (HWND,BOOL) : void import func DragFinish (HDROP) : void import func DragQueryFileA (HDROP,UINT,LPSTR,UINT) : UINT import func DragQueryFileW (HDROP,UINT,LPWSTR,UINT) : UINT import func DragQueryPoint (HDROP,LPPOINT) : BOOL end //[cf] //[c] //[c]Shell Obj //[c] //[of]: Constants //[of]:CSIDL equ CSIDL_DESKTOP = 0 equ CSIDL_INTERNET = 1 equ CSIDL_PROGRAMS = 2 equ CSIDL_CONTROLS = 3 equ CSIDL_PRINTERS = 4 equ CSIDL_PERSONAL = 5 equ CSIDL_FAVORITES = 6 equ CSIDL_STARTUP = 7 equ CSIDL_RECENT = 8 equ CSIDL_SENDTO = 9 equ CSIDL_BITBUCKET = 10 equ CSIDL_STARTMENU = 11 equ CSIDL_DESKTOPDIRECTORY = 16 equ CSIDL_DRIVES = 17 equ CSIDL_NETWORK = 18 equ CSIDL_NETHOOD = 19 equ CSIDL_FONTS = 20 equ CSIDL_TEMPLATES = 21 equ CSIDL_COMMON_STARTMENU = 22 equ CSIDL_COMMON_PROGRAMS = 23 equ CSIDL_COMMON_STARTUP = 24 equ CSIDL_COMMON_DESKTOPDIRECTORY = 25 equ CSIDL_APPDATA = 26 equ CSIDL_PRINTHOOD = 27 equ CSIDL_LOCAL_APPDATA = 28 equ CSIDL_ALTSTARTUP = 29 equ CSIDL_COMMON_ALTSTARTUP = 30 equ CSIDL_COMMON_FAVORITES = 31 equ CSIDL_INTERNET_CACHE = 32 equ CSIDL_COOKIES = 33 equ CSIDL_HISTORY = 34 equ CSIDL_COMMON_APPDATA = 35 equ CSIDL_WINDOWS = 36 equ CSIDL_SYSTEM = 37 equ CSIDL_PROGRAM_FILES = 38 equ CSIDL_MYPICTURES = 39 equ CSIDL_PROFILE = 40 equ CSIDL_SYSTEMX86 = 41 equ CSIDL_PROGRAM_FILESX86 = 42 equ CSIDL_PROGRAM_FILES_COMMON = 43 equ CSIDL_PROGRAM_FILES_COMMONX86 = 44 equ CSIDL_COMMON_TEMPLATES = 45 equ CSIDL_COMMON_DOCUMENTS = 46 equ CSIDL_COMMON_ADMINTOOLS = 47 equ CSIDL_ADMINTOOLS = 48 equ CSIDL_CONNECTIONS = 49 equ CSIDL_COMMON_MUSIC = 53 equ CSIDL_COMMON_PICTURES = 54 equ CSIDL_COMMON_VIDEO = 55 equ CSIDL_RESOURCES = 56 equ CSIDL_RESOURCES_LOCALIZED = 57 equ CSIDL_COMMON_OEM_LINKS = 58 equ CSIDL_CDBURN_AREA = 59 equ CSIDL_COMPUTERSNEARME = 61 //[cf] //[cf] //[of]: Functions public [name="c", call="__stdcall"] import func SHGetSpecialFolderPathA(HWND,LPSTR,int,BOOL): BOOL import func SHGetSpecialFolderPathW(HWND,LPWSTR,int,BOOL): BOOL end //[cf] //[c] end