Hopefully im not violating a dozen Forum rules by "bumping" such an old thread but i needed this function for debugging.
PolyVector wrote:And here's
Constants.pb It's bulky because I ripped all the constants from APIViewer... Half of them are already defined in PB so I suppose that's a waste... Maybe we can clean it up?
Too much work to do it manually and i seriously dislike collisions of definitions as it can introduce very hard to spot bugs. I couldnt find a simple way using macros and/or compiler directives to do it in PB 3.94, so i did this "hack":
Code: Select all
Procedure.s GetCurrentDir()
Protected CurDir.s
CurDir.s = Space(2048)
CompilerIf #PB_Compiler_OS = #PB_OS_Linux
getcwd_(CurDir, 2048)
CompilerElse
GetCurrentDirectory_(2048,CurDir)
CompilerEndIf
ProcedureReturn CurDir
EndProcedure
Procedure.l testifdef(define$)
DeleteFile("test.exe")
fileID = CreateFile(#PB_Any, "test.pb")
WriteStringN("f = " + define$)
WriteStringN("end")
CloseFile(fileID)
currdir.s = GetCurrentDir()
RunProgram("c:\programme\purebasic\compilers\pbcompiler.exe", "/exe " + Chr(34) + currdir + "\test.exe" + Chr(34) + " " + Chr(34) + currdir + "\test.pb" + Chr(34), "c:\programme\purebasic\compiler", 1 | 2)
fsize = FileSize("test.exe")
DeleteFile("test.pb")
DeleteFile("test.exe")
ProcedureReturn fsize
EndProcedure
Procedure testifdef_file(filename$)
fileID = ReadFile(#PB_Any, filename$)
If (fileID <> 0)
While (Eof(fileID) = 0)
UseFile(fileID)
srcline$ = ReadString()
define$ = Trim(srcline$)
If (Left(define$, 1) = "#")
define$ = StringField(define$, 1, " ")
If (testifdef(define$) >= 0)
Debug "; " + srcline$
Else
Debug srcline$
EndIf
Else
Debug srcline$
EndIf
Wend
CloseFile(fileID)
EndIf
EndProcedure
This can be used to cleanup any definition file automatically. Ugly but it works
Here is the cleanup up version of "constants.pb":
Code: Select all
; #WM_ACTIVATE = $6
; #WM_ACTIVATEAPP = $1C
#WM_ADSPROP_NOTIFY_APPLY = (#WM_USER + 1104)
#WM_ADSPROP_NOTIFY_CHANGE = (#WM_USER + 1103)
#WM_ADSPROP_NOTIFY_ERROR = (#WM_USER + 1110)
#WM_ADSPROP_NOTIFY_EXIT = (#WM_USER + 1107)
#WM_ADSPROP_NOTIFY_FOREGROUND = (#WM_USER + 1106)
#WM_ADSPROP_NOTIFY_PAGEHWND = (#WM_USER + 1102)
#WM_ADSPROP_NOTIFY_PAGEINIT = (#WM_USER + 1101)
#WM_ADSPROP_NOTIFY_SETFOCUS = (#WM_USER + 1105)
#WM_ADSPROP_NOTIFY_SHOW_ERROR_DIALOG = (#WM_USER + 1111)
#WM_AFXFIRST = $360
#WM_AFXLAST = $37F
#WM_APP = $8000
#WM_APPCOMMAND = $319
; #WM_ASKCBFORMATNAME = $30C
; #WM_CANCELJOURNAL = $4B
; #WM_CANCELMODE = $1F
#WM_CAP_START = #WM_USER
#WM_CAP_UNICODE_START = #WM_USER+100
#WM_CAP_ABORT = (#WM_CAP_START+ 69)
#WM_CAP_DLG_VIDEOCOMPRESSION = (#WM_CAP_START+ 46)
#WM_CAP_DLG_VIDEODISPLAY = (#WM_CAP_START+ 43)
#WM_CAP_DLG_VIDEOFORMAT = (#WM_CAP_START+ 41)
#WM_CAP_DLG_VIDEOSOURCE = (#WM_CAP_START+ 42)
#WM_CAP_DRIVER_CONNECT = (#WM_CAP_START+ 10)
#WM_CAP_DRIVER_DISCONNECT = (#WM_CAP_START+ 11)
#WM_CAP_DRIVER_GET_CAPS = (#WM_CAP_START+ 14)
#WM_CAP_DRIVER_GET_NAMEA = (#WM_CAP_START+ 12)
#WM_CAP_DRIVER_GET_NAMEW = (#WM_CAP_UNICODE_START+ 12)
#WM_CAP_DRIVER_GET_VERSIONA = (#WM_CAP_START+ 13)
#WM_CAP_DRIVER_GET_VERSIONW = (#WM_CAP_UNICODE_START+ 13)
#WM_CAP_EDIT_COPY = (#WM_CAP_START+ 30)
#WM_CAP_FILE_ALLOCATE = (#WM_CAP_START+ 22)
#WM_CAP_FILE_GET_CAPTURE_FILEA = (#WM_CAP_START+ 21)
#WM_CAP_FILE_GET_CAPTURE_FILEW = (#WM_CAP_UNICODE_START+ 21)
#WM_CAP_FILE_SAVEASA = (#WM_CAP_START+ 23)
#WM_CAP_FILE_SAVEASW = (#WM_CAP_UNICODE_START+ 23)
#WM_CAP_FILE_SAVEDIBA = (#WM_CAP_START+ 25)
#WM_CAP_FILE_SAVEDIBW = (#WM_CAP_UNICODE_START+ 25)
#WM_CAP_FILE_SET_CAPTURE_FILEA = (#WM_CAP_START+ 20)
#WM_CAP_FILE_SET_CAPTURE_FILEW = (#WM_CAP_UNICODE_START+ 20)
#WM_CAP_FILE_SET_INFOCHUNK = (#WM_CAP_START+ 24)
#WM_CAP_GET_AUDIOFORMAT = (#WM_CAP_START+ 36)
#WM_CAP_GET_CAPSTREAMPTR = (#WM_CAP_START+ 1)
#WM_CAP_GET_MCI_DEVICEA = (#WM_CAP_START+ 67)
#WM_CAP_GET_MCI_DEVICEW = (#WM_CAP_UNICODE_START+ 67)
#WM_CAP_GET_SEQUENCE_SETUP = (#WM_CAP_START+ 65)
#WM_CAP_GET_STATUS = (#WM_CAP_START+ 54)
#WM_CAP_GET_USER_DATA = (#WM_CAP_START+ 8)
#WM_CAP_GET_VIDEOFORMAT = (#WM_CAP_START+ 44)
#WM_CAP_GRAB_FRAME = (#WM_CAP_START+ 60)
#WM_CAP_GRAB_FRAME_NOSTOP = (#WM_CAP_START+ 61)
#WM_CAP_PAL_AUTOCREATE = (#WM_CAP_START+ 83)
#WM_CAP_PAL_MANUALCREATE = (#WM_CAP_START+ 84)
#WM_CAP_PAL_OPENA = (#WM_CAP_START+ 80)
#WM_CAP_PAL_OPENW = (#WM_CAP_UNICODE_START+ 80)
#WM_CAP_PAL_PASTE = (#WM_CAP_START+ 82)
#WM_CAP_PAL_SAVEA = (#WM_CAP_START+ 81)
#WM_CAP_PAL_SAVEW = (#WM_CAP_UNICODE_START+ 81)
#WM_CAP_SEQUENCE = (#WM_CAP_START+ 62)
#WM_CAP_SEQUENCE_NOFILE = (#WM_CAP_START+ 63)
#WM_CAP_SET_AUDIOFORMAT = (#WM_CAP_START+ 35)
#WM_CAP_SET_CALLBACK_CAPCONTROL = (#WM_CAP_START+ 85)
#WM_CAP_SET_CALLBACK_ERRORA = (#WM_CAP_START+ 2)
#WM_CAP_SET_CALLBACK_ERRORW = (#WM_CAP_UNICODE_START+ 2)
#WM_CAP_SET_CALLBACK_FRAME = (#WM_CAP_START+ 5)
#WM_CAP_SET_CALLBACK_STATUSA = (#WM_CAP_START+ 3)
#WM_CAP_SET_CALLBACK_STATUSW = (#WM_CAP_UNICODE_START+ 3)
#WM_CAP_SET_CALLBACK_VIDEOSTREAM = (#WM_CAP_START+ 6)
#WM_CAP_SET_CALLBACK_WAVESTREAM = (#WM_CAP_START+ 7)
#WM_CAP_SET_CALLBACK_YIELD = (#WM_CAP_START+ 4)
#WM_CAP_SET_MCI_DEVICEA = (#WM_CAP_START+ 66)
#WM_CAP_SET_MCI_DEVICEW = (#WM_CAP_UNICODE_START+ 66)
#WM_CAP_SET_OVERLAY = (#WM_CAP_START+ 51)
#WM_CAP_SET_PREVIEW = (#WM_CAP_START+ 50)
#WM_CAP_SET_PREVIEWRATE = (#WM_CAP_START+ 52)
#WM_CAP_SET_SCALE = (#WM_CAP_START+ 53)
#WM_CAP_SET_SCROLL = (#WM_CAP_START+ 55)
#WM_CAP_SET_SEQUENCE_SETUP = (#WM_CAP_START+ 64)
#WM_CAP_SET_USER_DATA = (#WM_CAP_START+ 9)
#WM_CAP_SET_VIDEOFORMAT = (#WM_CAP_START+ 45)
#WM_CAP_SINGLE_FRAME = (#WM_CAP_START+ 72)
#WM_CAP_SINGLE_FRAME_CLOSE = (#WM_CAP_START+ 71)
#WM_CAP_SINGLE_FRAME_OPEN = (#WM_CAP_START+ 70)
#WM_CAP_STOP = (#WM_CAP_START+ 68)
#WM_CAP_UNICODE_END = #WM_CAP_PAL_SAVEW
#WM_CAP_END = #WM_CAP_UNICODE_END
#WM_CAPTURECHANGED = $215
; #WM_CHANGECBCHAIN = $30D
#WM_CHANGEUISTATE = $127
; #WM_CHAR = $102
; #WM_CHARTOITEM = $2F
; #WM_CHILDACTIVATE = $22
; #WM_CHOOSEFONT_GETLOGFONT = (#WM_USER + 1)
#WM_CHOOSEFONT_SETFLAGS = (#WM_USER + 102)
#WM_CHOOSEFONT_SETLOGFONT = (#WM_USER + 101)
; #WM_CLEAR = $303
; #WM_CLOSE = $10
; #WM_COMMAND = $111
; #WM_COMMNOTIFY = $44
; #WM_COMPACTING = $41
; #WM_COMPAREITEM = $39
; #WM_CONTEXTMENU = $7B
#WM_CONVERTREQUEST = $10A
; #WM_CONVERTREQUESTEX = $108
#WM_CONVERTRESULT = $10B
; #WM_COPY = $301
; #WM_COPYDATA = $4A
#WM_CPL_LAUNCH = (#WM_USER+1000)
#WM_CPL_LAUNCHED = (#WM_USER+1001)
; #WM_CREATE = $1
#WM_CTLCOLOR = $19
; #WM_CTLCOLORBTN = $135
; #WM_CTLCOLORDLG = $136
; #WM_CTLCOLOREDIT = $133
; #WM_CTLCOLORLISTBOX = $134
; #WM_CTLCOLORMSGBOX = $132
; #WM_CTLCOLORSCROLLBAR = $137
; #WM_CTLCOLORSTATIC = $138
; #WM_CUT = $300
; #WM_DDE_ACK = (#WM_DDE_FIRST + 4)
; #WM_DDE_ADVISE = (#WM_DDE_FIRST + 2)
; #WM_DDE_DATA = (#WM_DDE_FIRST + 5)
; #WM_DDE_EXECUTE = (#WM_DDE_FIRST + 8)
; #WM_DDE_FIRST = $3E0
; #WM_DDE_INITIATE = (#WM_DDE_FIRST)
; #WM_DDE_LAST = (#WM_DDE_FIRST + 8)
; #WM_DDE_POKE = (#WM_DDE_FIRST + 7)
; #WM_DDE_REQUEST = (#WM_DDE_FIRST + 6)
; #WM_DDE_TERMINATE = (#WM_DDE_FIRST + 1)
; #WM_DDE_UNADVISE = (#WM_DDE_FIRST + 3)
; #WM_DEADCHAR = $103
; #WM_DELETEITEM = $2D
; #WM_DESTROY = $2
; #WM_DESTROYCLIPBOARD = $307
#WM_DEVICECHANGE = $219
; #WM_DEVMODECHANGE = $1B
; #WM_DISPLAYCHANGE = $7E
; #WM_DRAWCLIPBOARD = $308
; #WM_DRAWITEM = $2B
; #WM_DROPFILES = $233
; #WM_ENABLE = $A
; #WM_ENDSESSION = $16
; #WM_ENTERIDLE = $121
; #WM_ENTERMENULOOP = $211
#WM_ENTERSIZEMOVE = $231
; #WM_ERASEBKGND = $14
; #WM_EXITMENULOOP = $212
#WM_EXITSIZEMOVE = $232
; #WM_FONTCHANGE = $1D
#WM_FORWARDMSG = $37F
; #WM_GETDLGCODE = $87
; #WM_GETFONT = $31
; #WM_GETHOTKEY = $33
; #WM_GETICON = $7F
; #WM_GETMINMAXINFO = $24
#WM_GETOBJECT = $3D
; #WM_GETTEXT = $D
; #WM_GETTEXTLENGTH = $E
#WM_HANDHELDFIRST = $358
#WM_HANDHELDLAST = $35F
; #WM_HELP = $53
; #WM_HOTKEY = $312
; #WM_HSCROLL = $114
; #WM_HSCROLLCLIPBOARD = $30E
; #WM_ICONERASEBKGND = $27
; #WM_IME_CHAR = $286
; #WM_IME_COMPOSITION = $10F
; #WM_IME_COMPOSITIONFULL = $284
; #WM_IME_CONTROL = $283
; #WM_IME_ENDCOMPOSITION = $10E
; #WM_IME_KEYDOWN = $290
; #WM_IME_KEYLAST = $10F
; #WM_IME_KEYUP = $291
; #WM_IME_NOTIFY = $282
#WM_IME_REPORT = $280
#WM_IME_REQUEST = $288
; #WM_IME_SELECT = $285
; #WM_IME_SETCONTEXT = $281
; #WM_IME_STARTCOMPOSITION = $10D
#WM_IMEKEYDOWN = $290
#WM_IMEKEYUP = $291
; #WM_INITDIALOG = $110
; #WM_INITMENU = $116
; #WM_INITMENUPOPUP = $117
#WM_INPUTLANGCHANGE = $51
#WM_INPUTLANGCHANGEREQUEST = $50
#WM_INTERIM = $10C
; #WM_KEYDOWN = $100
; #WM_KEYFIRST = $100
; #WM_KEYLAST = $108
; #WM_KEYUP = $101
; #WM_KILLFOCUS = $8
; #WM_LBUTTONDBLCLK = $203
; #WM_LBUTTONDOWN = $201
; #WM_LBUTTONUP = $202
; #WM_MBUTTONDBLCLK = $209
; #WM_MBUTTONDOWN = $207
; #WM_MBUTTONUP = $208
; #WM_MDIACTIVATE = $222
; #WM_MDICASCADE = $227
; #WM_MDICREATE = $220
; #WM_MDIDESTROY = $221
; #WM_MDIGETACTIVE = $229
; #WM_MDIICONARRANGE = $228
; #WM_MDIMAXIMIZE = $225
; #WM_MDINEXT = $224
; #WM_MDIREFRESHMENU = $234
; #WM_MDIRESTORE = $223
; #WM_MDISETMENU = $230
; #WM_MDITILE = $226
; #WM_MEASUREITEM = $2C
; #WM_MENUCHAR = $120
#WM_MENUCOMMAND = $126
#WM_MENUDRAG = $123
#WM_MENUGETOBJECT = $124
#WM_MENURBUTTONUP = $122
; #WM_MENUSELECT = $11F
; #WM_MOUSEACTIVATE = $21
; #WM_MOUSEFIRST = $200
#WM_MOUSEHOVER = $2A1
; #WM_MOUSELAST = $209
#WM_MOUSELEAVE = $2A3
; #WM_MOUSEMOVE = $200
; #WM_MOUSEWHEEL = $20A
; #WM_MOVE = $3
; #WM_MOVING = $216
; #WM_NCACTIVATE = $86
; #WM_NCCALCSIZE = $83
; #WM_NCCREATE = $81
; #WM_NCDESTROY = $82
; #WM_NCHITTEST = $84
; #WM_NCLBUTTONDBLCLK = $A3
; #WM_NCLBUTTONDOWN = $A1
; #WM_NCLBUTTONUP = $A2
; #WM_NCMBUTTONDBLCLK = $A9
; #WM_NCMBUTTONDOWN = $A7
; #WM_NCMBUTTONUP = $A8
#WM_NCMOUSEHOVER = $2A0
#WM_NCMOUSELEAVE = $2A2
; #WM_NCMOUSEMOVE = $A0
; #WM_NCPAINT = $85
; #WM_NCRBUTTONDBLCLK = $A6
; #WM_NCRBUTTONDOWN = $A4
; #WM_NCRBUTTONUP = $A5
#WM_NCXBUTTONDBLCLK = $AD
#WM_NCXBUTTONDOWN = $AB
#WM_NCXBUTTONUP = $AC
; #WM_NEXTDLGCTL = $28
#WM_NEXTMENU = $213
; #WM_NOTIFY = $4E
; #WM_NOTIFYFORMAT = $55
; #WM_NULL = $0
; #WM_OTHERWINDOWCREATED = $42
; #WM_OTHERWINDOWDESTROYED = $43
; #WM_PAINT = $F
; #WM_PAINTCLIPBOARD = $309
; #WM_PAINTICON = $26
; #WM_PALETTECHANGED = $311
; #WM_PALETTEISCHANGING = $310
; #WM_PARENTNOTIFY = $210
; #WM_PASTE = $302
; #WM_PENWINFIRST = $380
; #WM_PENWINLAST = $38F
; #WM_POWER = $48
#WM_POWERBROADCAST = $218
#WM_PRINT = $317
; #WM_PRINTCLIENT = $318
; #WM_PSD_ENVSTAMPRECT = (#WM_USER + 5)
; #WM_PSD_FULLPAGERECT = (#WM_USER + 1)
; #WM_PSD_GREEKTEXTRECT = (#WM_USER + 4)
; #WM_PSD_MARGINRECT = (#WM_USER + 3)
; #WM_PSD_MINMARGINRECT = (#WM_USER + 2)
; #WM_PSD_PAGESETUPDLG = (#WM_USER)
; #WM_PSD_YAFULLPAGERECT = (#WM_USER + 6)
; #WM_QUERYDRAGICON = $37
; #WM_QUERYENDSESSION = $11
; #WM_QUERYNEWPALETTE = $30F
; #WM_QUERYOPEN = $13
#WM_QUERYUISTATE = $129
; #WM_QUEUESYNC = $23
; #WM_QUIT = $12
#WM_RASDIALEVENT = $CCCD
; #WM_RBUTTONDBLCLK = $206
; #WM_RBUTTONDOWN = $204
; #WM_RBUTTONUP = $205
; #WM_RENDERALLFORMATS = $306
; #WM_RENDERFORMAT = $305
; #WM_SETCURSOR = $20
; #WM_SETFOCUS = $7
; #WM_SETFONT = $30
; #WM_SETHOTKEY = $32
; #WM_SETICON = $80
; #WM_SETREDRAW = $B
; #WM_SETTEXT = $C
; #WM_SETTINGCHANGE = #WM_WININICHANGE
; #WM_SHOWWINDOW = $18
; #WM_SIZE = $5
; #WM_SIZECLIPBOARD = $30B
; #WM_SIZING = $214
; #WM_SPOOLERSTATUS = $2A
; #WM_STYLECHANGED = $7D
; #WM_STYLECHANGING = $7C
#WM_SYNCPAINT = $88
; #WM_SYSCHAR = $106
; #WM_SYSCOLORCHANGE = $15
; #WM_SYSCOMMAND = $112
; #WM_SYSDEADCHAR = $107
; #WM_SYSKEYDOWN = $104
; #WM_SYSKEYUP = $105
; #WM_TCARD = $52
; #WM_TIMECHANGE = $1E
; #WM_TIMER = $113
; #WM_UNDO = $304
#WM_UNINITMENUPOPUP = $125
#WM_UPDATEUISTATE = $128
; #WM_USER = $400
; #WM_USERCHANGED = $54
; #WM_VKEYTOITEM = $2E
; #WM_VSCROLL = $115
; #WM_VSCROLLCLIPBOARD = $30A
; #WM_WINDOWPOSCHANGED = $47
; #WM_WINDOWPOSCHANGING = $46
; #WM_WININICHANGE = $1A
#WM_WNT_CONVERTREQUESTEX = $109
#WM_XBUTTONDBLCLK = $20D
#WM_XBUTTONDOWN = $20B
#WM_XBUTTONUP = $20C
;-Button
; #BM_CLICK = $F5
; #BM_GETCHECK = $F0
; #BM_GETIMAGE = $F6
; #BM_GETSTATE = $F2
; #BM_SETCHECK = $F1
; #BM_SETIMAGE = $F7
; #BM_SETSTATE = $F3
; #BM_SETSTYLE = $F4
;-ListView32
#LVM_GETCOLUMNA = (#LVM_FIRST + 25)
#LVM_GETCOLUMNORDERARRAY = (#LVM_FIRST + 59)
; #LVM_GETCOLUMNW = (#LVM_FIRST + 95)
; #LVM_GETCOLUMNWIDTH = (#LVM_FIRST + 29)
; #LVM_GETCOUNTPERPAGE = (#LVM_FIRST + 40)
; #LVM_GETEDITCONTROL = (#LVM_FIRST + 24)
#LVM_GETEXTENDEDLISTVIEWSTYLE = (#LVM_FIRST + 55)
#LVM_GETGROUPINFO = (#LVM_FIRST + 149)
#LVM_GETGROUPMETRICS = (#LVM_FIRST + 156)
#LVM_GETHEADER = (#LVM_FIRST + 31)
#LVM_GETHOTCURSOR = (#LVM_FIRST + 63)
#LVM_GETHOTITEM = (#LVM_FIRST + 61)
#LVM_GETHOVERTIME = (#LVM_FIRST + 72)
; #LVM_GETIMAGELIST = (#LVM_FIRST + 2)
#LVM_GETINSERTMARK = (#LVM_FIRST + 167)
#LVM_GETINSERTMARKCOLOR = (#LVM_FIRST + 171)
#LVM_GETINSERTMARKRECT = (#LVM_FIRST + 169)
#LVM_GETISEARCHSTRINGA = (#LVM_FIRST + 52)
; #LVM_GETISEARCHSTRINGW = (#LVM_FIRST + 117)
#LVM_GETITEMA = (#LVM_FIRST + 5)
; #LVM_GETITEMCOUNT = (#LVM_FIRST + 4)
; #LVM_GETITEMPOSITION = (#LVM_FIRST + 16)
; #LVM_GETITEMRECT = (#LVM_FIRST + 14)
; #LVM_GETITEMSPACING = (#LVM_FIRST + 51)
; #LVM_GETITEMSTATE = (#LVM_FIRST + 44)
#LVM_GETITEMTEXTA = (#LVM_FIRST + 45)
; #LVM_GETITEMTEXTW = (#LVM_FIRST + 115)
; #LVM_GETITEMW = (#LVM_FIRST + 75)
; #LVM_GETNEXTITEM = (#LVM_FIRST + 12)
#LVM_GETNUMBEROFWORKAREAS = (#LVM_FIRST + 73)
; #LVM_GETORIGIN = (#LVM_FIRST + 41)
#LVM_GETOUTLINECOLOR = (#LVM_FIRST + 176)
#LVM_GETSELECTEDCOLUMN = (#LVM_FIRST + 174)
; #LVM_GETSELECTEDCOUNT = (#LVM_FIRST + 50)
#LVM_GETSELECTIONMARK = (#LVM_FIRST + 66)
#LVM_GETSTRINGWIDTHA = (#LVM_FIRST + 17)
; #LVM_GETSTRINGWIDTHW = (#LVM_FIRST + 87)
#LVM_GETSUBITEMRECT = (#LVM_FIRST + 56)
; #LVM_GETTEXTBKCOLOR = (#LVM_FIRST + 37)
; #LVM_GETTEXTCOLOR = (#LVM_FIRST + 35)
#LVM_GETTILEINFO = (#LVM_FIRST + 165)
#LVM_GETTILEVIEWINFO = (#LVM_FIRST + 163)
#LVM_GETTOOLTIPS = (#LVM_FIRST + 78)
; #LVM_GETTOPINDEX = (#LVM_FIRST + 39)
#LVM_GETUNICODEFORMAT = #CCM_GETUNICODEFORMAT
#LVM_GETVIEW = (#LVM_FIRST + 143)
; #LVM_GETVIEWRECT = (#LVM_FIRST + 34)
#LVM_GETWORKAREAS = (#LVM_FIRST + 70)
#LVM_HASGROUP = (#LVM_FIRST + 161)
; #LVM_HITTEST = (#LVM_FIRST + 18)
#LVM_INSERTCOLUMNA = (#LVM_FIRST + 27)
; #LVM_INSERTCOLUMNW = (#LVM_FIRST + 97)
#LVM_INSERTGROUP = (#LVM_FIRST + 145)
#LVM_INSERTGROUPSORTED = (#LVM_FIRST + 159)
#LVM_INSERTITEMA = (#LVM_FIRST + 7)
; #LVM_INSERTITEMW = (#LVM_FIRST + 77)
#LVM_INSERTMARKHITTEST = (#LVM_FIRST + 168)
#LVM_ISGROUPVIEWENABLED = (#LVM_FIRST + 175)
#LVM_MOVEGROUP = (#LVM_FIRST + 151)
#LVM_MOVEITEMTOGROUP = (#LVM_FIRST + 154)
; #LVM_REDRAWITEMS = (#LVM_FIRST + 21)
#LVM_REMOVEALLGROUPS = (#LVM_FIRST + 160)
#LVM_REMOVEGROUP = (#LVM_FIRST + 150)
; #LVM_SCROLL = (#LVM_FIRST + 20)
; #LVM_SETBKCOLOR = (#LVM_FIRST + 1)
#LVM_SETBKIMAGEA = (#LVM_FIRST + 68)
#LVM_SETBKIMAGEW = (#LVM_FIRST + 138)
; #LVM_SETCALLBACKMASK = (#LVM_FIRST + 11)
#LVM_SETCOLUMNA = (#LVM_FIRST + 26)
#LVM_SETCOLUMNORDERARRAY = (#LVM_FIRST + 58)
; #LVM_SETCOLUMNW = (#LVM_FIRST + 96)
; #LVM_SETCOLUMNWIDTH = (#LVM_FIRST + 30)
#LVM_SETEXTENDEDLISTVIEWSTYLE = (#LVM_FIRST + 54)
#LVM_SETGROUPINFO = (#LVM_FIRST + 147)
#LVM_SETGROUPMETRICS = (#LVM_FIRST + 155)
#LVM_SETHOTCURSOR = (#LVM_FIRST + 62)
#LVM_SETHOTITEM = (#LVM_FIRST + 60)
#LVM_SETHOVERTIME = (#LVM_FIRST + 71)
#LVM_SETICONSPACING = (#LVM_FIRST + 53)
; #LVM_SETIMAGELIST = (#LVM_FIRST + 3)
#LVM_SETINFOTIP = (#LVM_FIRST + 173)
#LVM_SETINSERTMARK = (#LVM_FIRST + 166)
#LVM_SETINSERTMARKCOLOR = (#LVM_FIRST + 170)
#LVM_SETITEMA = (#LVM_FIRST + 6)
; #LVM_SETITEMCOUNT = (#LVM_FIRST + 47)
; #LVM_SETITEMPOSITION = (#LVM_FIRST + 15)
; #LVM_SETITEMPOSITION32 = (#LVM_FIRST + 49)
; #LVM_SETITEMSTATE = (#LVM_FIRST + 43)
#LVM_SETITEMTEXTA = (#LVM_FIRST + 46)
; #LVM_SETITEMTEXTW = (#LVM_FIRST + 116)
; #LVM_SETITEMW = (#LVM_FIRST + 76)
#LVM_SETOUTLINECOLOR = (#LVM_FIRST + 177)
#LVM_SETSELECTEDCOLUMN = (#LVM_FIRST + 140)
#LVM_SETSELECTIONMARK = (#LVM_FIRST + 67)
; #LVM_SETTEXTBKCOLOR = (#LVM_FIRST + 38)
; #LVM_SETTEXTCOLOR = (#LVM_FIRST + 36)
#LVM_SETTILEINFO = (#LVM_FIRST + 164)
#LVM_SETTILEVIEWINFO = (#LVM_FIRST + 162)
#LVM_SETTILEWIDTH = (#LVM_FIRST + 141)
#LVM_SETTOOLTIPS = (#LVM_FIRST + 74)
#LVM_SETUNICODEFORMAT = #CCM_SETUNICODEFORMAT
#LVM_SETVIEW = (#LVM_FIRST + 142)
#LVM_SETWORKAREAS = (#LVM_FIRST + 65)
#LVM_SORTGROUPS = (#LVM_FIRST + 158)
; #LVM_SORTITEMS = (#LVM_FIRST + 48)
#LVM_SORTITEMSEX = (#LVM_FIRST + 81)
#LVM_SUBITEMHITTEST = (#LVM_FIRST + 57)
; #LVM_UPDATE = (#LVM_FIRST + 42)
;-TabControl32
; #TCM_ADJUSTRECT = (#TCM_FIRST + 40)
; #TCM_DELETEALLITEMS = (#TCM_FIRST + 9)
; #TCM_DELETEITEM = (#TCM_FIRST + 8)
#TCM_DESELECTALL = (#TCM_FIRST + 50)
; #TCM_FIRST = $1300
; #TCM_GETCURFOCUS = (#TCM_FIRST + 47)
; #TCM_GETCURSEL = (#TCM_FIRST + 11)
#TCM_GETEXTENDEDSTYLE = (#TCM_FIRST + 53)
; #TCM_GETIMAGELIST = (#TCM_FIRST + 2)
#TCM_GETITEMA = (#TCM_FIRST + 5)
; #TCM_GETITEMCOUNT = (#TCM_FIRST + 4)
; #TCM_GETITEMRECT = (#TCM_FIRST + 10)
#TCM_GETITEMW = (#TCM_FIRST + 60)
; #TCM_GETROWCOUNT = (#TCM_FIRST + 44)
; #TCM_GETTOOLTIPS = (#TCM_FIRST + 45)
#TCM_GETUNICODEFORMAT = #CCM_GETUNICODEFORMAT
#TCM_HIGHLIGHTITEM = (#TCM_FIRST + 51)
; #TCM_HITTEST = (#TCM_FIRST + 13)
#TCM_INSERTITEMA = (#TCM_FIRST + 7)
; #TCM_INSERTITEMW = (#TCM_FIRST + 62)
; #TCM_REMOVEIMAGE = (#TCM_FIRST + 42)
; #TCM_SETCURFOCUS = (#TCM_FIRST + 48)
; #TCM_SETCURSEL = (#TCM_FIRST + 12)
#TCM_SETEXTENDEDSTYLE = (#TCM_FIRST + 52)
; #TCM_SETIMAGELIST = (#TCM_FIRST + 3)
#TCM_SETITEMA = (#TCM_FIRST + 6)
; #TCM_SETITEMEXTRA = (#TCM_FIRST + 14)
; #TCM_SETITEMSIZE = (#TCM_FIRST + 41)
; #TCM_SETITEMW = (#TCM_FIRST + 61)
#TCM_SETMINTABWIDTH = (#TCM_FIRST + 49)
; #TCM_SETPADDING = (#TCM_FIRST + 43)
; #TCM_SETTOOLTIPS = (#TCM_FIRST + 46)
#TCM_SETUNICODEFORMAT = #CCM_SETUNICODEFORMAT
;-Edit/RichEdit
; #EM_AUTOURLDETECT = (#WM_USER + 91)
; #EM_CANPASTE = (#WM_USER + 50)
; #EM_CANREDO = (#WM_USER + 85)
; #EM_CANUNDO = $C6
; #EM_CHARFROMPOS = $D7
; #EM_CONVPOSITION = (#WM_USER + 108)
; #EM_DISPLAYBAND = (#WM_USER + 51)
; #EM_EMPTYUNDOBUFFER = $CD
; #EM_EXGETSEL = (#WM_USER + 52)
; #EM_EXLIMITTEXT = (#WM_USER + 53)
; #EM_EXLINEFROMCHAR = (#WM_USER + 54)
; #EM_EXSETSEL = (#WM_USER + 55)
; #EM_FINDTEXT = (#WM_USER + 56)
; #EM_FINDTEXTEX = (#WM_USER + 79)
; #EM_FINDTEXTEXW = (#WM_USER + 124)
; #EM_FINDTEXTW = (#WM_USER + 123)
; #EM_FINDWORDBREAK = (#WM_USER + 76)
; #EM_FMTLINES = $C8
; #EM_FORMATRANGE = (#WM_USER + 57)
; #EM_GETAUTOURLDETECT = (#WM_USER + 92)
; #EM_GETBIDIOPTIONS = (#WM_USER + 201)
; #EM_GETCHARFORMAT = (#WM_USER + 58)
; #EM_GETEDITSTYLE = (#WM_USER + 205)
; #EM_GETEVENTMASK = (#WM_USER + 59)
; #EM_GETFIRSTVISIBLELINE = $CE
; #EM_GETHANDLE = $BD
; #EM_GETIMECOLOR = (#WM_USER + 105)
; #EM_GETIMECOMPMODE = (#WM_USER + 122)
; #EM_GETIMEMODEBIAS = (#WM_USER + 127)
; #EM_GETIMEOPTIONS = (#WM_USER + 107)
#EM_GETIMESTATUS = $D9
; #EM_GETLANGOPTIONS = (#WM_USER + 121)
;/#EM_GETLIMITTEXT = (#WM_USER + 37)
; #EM_GETLINE = $C4
; #EM_GETLINECOUNT = $BA
; #EM_GETMARGINS = $D4
; #EM_GETMODIFY = $B8
; #EM_GETOLEINTERFACE = (#WM_USER + 60)
; #EM_GETOPTIONS = (#WM_USER + 78)
; #EM_GETPARAFORMAT = (#WM_USER + 61)
; #EM_GETPASSWORDCHAR = $D2
; #EM_GETPUNCTUATION = (#WM_USER + 101)
; #EM_GETRECT = $B2
; #EM_GETREDONAME = (#WM_USER + 87)
; #EM_GETSCROLLPOS = (#WM_USER + 221)
; #EM_GETSEL = $B0
; #EM_GETSELTEXT = (#WM_USER + 62)
; #EM_GETTEXTEX = (#WM_USER + 94)
; #EM_GETTEXTLENGTHEX = (#WM_USER + 95)
#EM_GETTEXTMODE = (#WM_USER + 90)
; #EM_GETTEXTRANGE = (#WM_USER + 75)
; #EM_GETTHUMB = $BE
; #EM_GETTYPOGRAPHYOPTIONS = (#WM_USER + 203)
; #EM_GETUNDONAME = (#WM_USER + 86)
; #EM_GETWORDBREAKPROC = $D1
; #EM_GETWORDBREAKPROCEX = (#WM_USER + 80)
; #EM_GETWORDWRAPMODE = (#WM_USER + 103)
; #EM_GETZOOM = (#WM_USER + 224)
; #EM_HIDESELECTION = (#WM_USER + 63)
; #EM_LIMITTEXT = $C5
; #EM_LINEFROMCHAR = $C9
; #EM_LINEINDEX = $BB
; #EM_LINELENGTH = $C1
; #EM_LINESCROLL = $B6
; #EM_OUTLINE = (#WM_USER + 220)
; #EM_PASTESPECIAL = (#WM_USER + 64)
;/#EM_POSFROMCHAR = (#WM_USER + 38)
; #EM_RECONVERSION = (#WM_USER + 125)
; #EM_REDO = (#WM_USER + 84)
; #EM_REPLACESEL = $C2
; #EM_REQUESTRESIZE = (#WM_USER + 65)
; #EM_SCROLL = $B5
; #EM_SCROLLCARET = $B7
; #EM_SELECTIONTYPE = (#WM_USER + 66)
; #EM_SETBIDIOPTIONS = (#WM_USER + 200)
; #EM_SETBKGNDCOLOR = (#WM_USER + 67)
; #EM_SETCHARFORMAT = (#WM_USER + 68)
#ECM_FIRST=$1500
#EM_SETCUEBANNER = (#ECM_FIRST + 1)
; #EM_SETEDITSTYLE = (#WM_USER + 204)
; #EM_SETEVENTMASK = (#WM_USER + 69)
; #EM_SETFONTSIZE = (#WM_USER + 223)
; #EM_SETHANDLE = $BC
; #EM_SETIMECOLOR = (#WM_USER + 104)
; #EM_SETIMEMODEBIAS = (#WM_USER + 126)
; #EM_SETIMEOPTIONS = (#WM_USER + 106)
#EM_SETIMESTATUS = $D8
; #EM_SETLANGOPTIONS = (#WM_USER + 120)
; #EM_SETLIMITTEXT = #EM_LIMITTEXT
; #EM_SETMARGINS = $D3
; #EM_SETMODIFY = $B9
; #EM_SETOLECALLBACK = (#WM_USER + 70)
; #EM_SETOPTIONS = (#WM_USER + 77)
; #EM_SETPALETTE = (#WM_USER + 93)
; #EM_SETPARAFORMAT = (#WM_USER + 71)
; #EM_SETPASSWORDCHAR = $CC
; #EM_SETPUNCTUATION = (#WM_USER + 100)
; #EM_SETREADONLY = $CF
; #EM_SETRECT = $B3
; #EM_SETRECTNP = $B4
; #EM_SETSCROLLPOS = (#WM_USER + 222)
; #EM_SETSEL = $B1
; #EM_SETTABSTOPS = $CB
; #EM_SETTARGETDEVICE = (#WM_USER + 72)
; #EM_SETTEXTEX = (#WM_USER + 97)
; #EM_SETTEXTMODE = (#WM_USER + 89)
; #EM_SETTYPOGRAPHYOPTIONS = (#WM_USER + 202)
#EM_SETUNDOLIMIT = (#WM_USER + 82)
; #EM_SETWORDBREAKPROC = $D0
; #EM_SETWORDBREAKPROCEX = (#WM_USER + 81)
; #EM_SETWORDWRAPMODE = (#WM_USER + 102)
; #EM_SETZOOM = (#WM_USER + 225)
; #EM_SHOWSCROLLBAR = (#WM_USER + 96)
; #EM_STOPGROUPTYPING = (#WM_USER + 88)
; #EM_STREAMIN = (#WM_USER + 73)
; #EM_STREAMOUT = (#WM_USER + 74)
;-Static
; #STM_GETICON = $171
; #STM_GETIMAGE = $173
; #STM_SETICON = $170
; #STM_SETIMAGE = $172
#STN_CLICKED = 0
#STN_DBLCLK = 1
#STN_DISABLE = 3
#STN_ENABLE = 2
Additionally i changed the last Default line in "DecodeWindowMessage" to
Code: Select all
Result="*Unknown Message " + Str(Message) + "*"