I need to know, which "unknown" messages appeared in WndProc.
To have matter with numbers was enough difficult (it was necessary to look win32api.inc).
That's why I decided to take a fragment of Win32Api.Inc and saved it as MsgName.Txt.
Then I wrote following small utility (I wrote to PbCC20, but you can also write to PbDll60):
which generated following function
Of course, the same utility can be used for other messages.
------------------
E-MAIL: [email protected]
[This message has been edited by Semen Matusovski (edited October 12, 2000).]
To have matter with numbers was enough difficult (it was necessary to look win32api.inc).
That's why I decided to take a fragment of Win32Api.Inc and saved it as MsgName.Txt.
Then I wrote following small utility (I wrote to PbCC20, but you can also write to PbDll60):
Code:
#Compile Exe #Dim All #Register None #Include "Win32Api.Inc" Function PbMain Open "MsgName.Txt" For Input As #1 Open "C:\PbCC20\WinApi\MsgName.Inc" For Output As #2 If Err Then Exit Function Dim w As String, j As Long Print #2, " Function MessageName (wMsg As Long) As String" Print #2, " Select Case wMsg" While Not Eof(1) Line Input #1, w$ If Left$(w$, 1) = "%" Then j = Instr(w$, " ") Else j = 0 If j Then If Left$(w$, j - 1) = "%WM_USER" Then Print #2, " Case " + Left$(">= %WM_USER" + Space$(30), 30) + " : Function = ""%WM_USER +"" + Str$(wMsg - %WM_USER)" Else Print #2, " Case " + Left$(Left$(w$, j - 1) + Space$(30), 30) + " : Function = """ + Left$(w$, j - 1) + """" End If End If Wend Print #2, " End Select" Print #2, " End Function" Close End Function
Code:
Function MessageName (wMsg As Long) As String Select Case wMsg Case >= %WM_USER : Function = "%WM_USER +" + Str$(wMsg - %WM_USER) Case %WM_NULL : Function = "%WM_NULL" Case %WM_CREATE : Function = "%WM_CREATE" Case %WM_DESTROY : Function = "%WM_DESTROY" Case %WM_MOVE : Function = "%WM_MOVE" Case %WM_SIZE : Function = "%WM_SIZE" Case %WM_ACTIVATE : Function = "%WM_ACTIVATE" Case %WA_INACTIVE : Function = "%WA_INACTIVE" Case %WA_ACTIVE : Function = "%WA_ACTIVE" Case %WA_CLICKACTIVE : Function = "%WA_CLICKACTIVE" Case %WM_SETFOCUS : Function = "%WM_SETFOCUS" Case %WM_KILLFOCUS : Function = "%WM_KILLFOCUS" Case %WM_ENABLE : Function = "%WM_ENABLE" Case %WM_SETREDRAW : Function = "%WM_SETREDRAW" Case %WM_SETTEXT : Function = "%WM_SETTEXT" Case %WM_GETTEXT : Function = "%WM_GETTEXT" Case %WM_GETTEXTLENGTH : Function = "%WM_GETTEXTLENGTH" Case %WM_PAINT : Function = "%WM_PAINT" Case %WM_CLOSE : Function = "%WM_CLOSE" Case %WM_QUERYENDSESSION : Function = "%WM_QUERYENDSESSION" Case %WM_QUIT : Function = "%WM_QUIT" Case %WM_QUERYOPEN : Function = "%WM_QUERYOPEN" Case %WM_ERASEBKGND : Function = "%WM_ERASEBKGND" Case %WM_SYSCOLORCHANGE : Function = "%WM_SYSCOLORCHANGE" Case %WM_ENDSESSION : Function = "%WM_ENDSESSION" Case %WM_SHOWWINDOW : Function = "%WM_SHOWWINDOW" Case %WM_WININICHANGE : Function = "%WM_WININICHANGE" Case %WM_SETTINGCHANGE : Function = "%WM_SETTINGCHANGE" Case %WM_DEVMODECHANGE : Function = "%WM_DEVMODECHANGE" Case %WM_ACTIVATEAPP : Function = "%WM_ACTIVATEAPP" Case %WM_FONTCHANGE : Function = "%WM_FONTCHANGE" Case %WM_TIMECHANGE : Function = "%WM_TIMECHANGE" Case %WM_CANCELMODE : Function = "%WM_CANCELMODE" Case %WM_SETCURSOR : Function = "%WM_SETCURSOR" Case %WM_MOUSEACTIVATE : Function = "%WM_MOUSEACTIVATE" Case %WM_CHILDACTIVATE : Function = "%WM_CHILDACTIVATE" Case %WM_QUEUESYNC : Function = "%WM_QUEUESYNC" Case %WM_GETMINMAXINFO : Function = "%WM_GETMINMAXINFO" Case %WM_PAINTICON : Function = "%WM_PAINTICON" Case %WM_ICONERASEBKGND : Function = "%WM_ICONERASEBKGND" Case %WM_NEXTDLGCTL : Function = "%WM_NEXTDLGCTL" Case %WM_SPOOLERSTATUS : Function = "%WM_SPOOLERSTATUS" Case %WM_DRAWITEM : Function = "%WM_DRAWITEM" Case %WM_MEASUREITEM : Function = "%WM_MEASUREITEM" Case %WM_DELETEITEM : Function = "%WM_DELETEITEM" Case %WM_VKEYTOITEM : Function = "%WM_VKEYTOITEM" Case %WM_CHARTOITEM : Function = "%WM_CHARTOITEM" Case %WM_SETFONT : Function = "%WM_SETFONT" Case %WM_GETFONT : Function = "%WM_GETFONT" Case %WM_SETHOTKEY : Function = "%WM_SETHOTKEY" Case %WM_GETHOTKEY : Function = "%WM_GETHOTKEY" Case %WM_QUERYDRAGICON : Function = "%WM_QUERYDRAGICON" Case %WM_COMPAREITEM : Function = "%WM_COMPAREITEM" Case %WM_COMPACTING : Function = "%WM_COMPACTING" Case %WM_OTHERWINDOWCREATED : Function = "%WM_OTHERWINDOWCREATED" Case %WM_OTHERWINDOWDESTROYED : Function = "%WM_OTHERWINDOWDESTROYED" Case %WM_COMMNOTIFY : Function = "%WM_COMMNOTIFY" Case %CN_RECEIVE : Function = "%CN_RECEIVE" Case %CN_TRANSMIT : Function = "%CN_TRANSMIT" Case %CN_EVENT : Function = "%CN_EVENT" Case %WM_WINDOWPOSCHANGING : Function = "%WM_WINDOWPOSCHANGING" Case %WM_WINDOWPOSCHANGED : Function = "%WM_WINDOWPOSCHANGED" Case %WM_POWER : Function = "%WM_POWER" Case %PWR_OK : Function = "%PWR_OK" Case %PWR_FAIL : Function = "%PWR_FAIL" Case %PWR_SUSPENDREQUEST : Function = "%PWR_SUSPENDREQUEST" Case %PWR_SUSPENDRESUME : Function = "%PWR_SUSPENDRESUME" Case %PWR_CRITICALRESUME : Function = "%PWR_CRITICALRESUME" Case %WM_COPYDATA : Function = "%WM_COPYDATA" Case %WM_CANCELJOURNAL : Function = "%WM_CANCELJOURNAL" Case %WM_NOTIFY : Function = "%WM_NOTIFY" Case %WM_INPUTLANGUAGECHANGEREQUEST : Function = "%WM_INPUTLANGUAGECHANGEREQUEST" Case %WM_INPUTLANGUAGECHANGE : Function = "%WM_INPUTLANGUAGECHANGE" Case %WM_TCARD : Function = "%WM_TCARD" Case %WM_HELP : Function = "%WM_HELP" Case %WM_USERCHANGED : Function = "%WM_USERCHANGED" Case %WM_NOTIFYFORMAT : Function = "%WM_NOTIFYFORMAT" Case %WM_CONTEXTMENU : Function = "%WM_CONTEXTMENU" Case %WM_STYLECHANGING : Function = "%WM_STYLECHANGING" Case %WM_STYLECHANGED : Function = "%WM_STYLECHANGED" Case %WM_DISPLAYCHANGE : Function = "%WM_DISPLAYCHANGE" Case %WM_GETICON : Function = "%WM_GETICON" Case %WM_SETICON : Function = "%WM_SETICON" Case %WM_NCCREATE : Function = "%WM_NCCREATE" Case %WM_NCDESTROY : Function = "%WM_NCDESTROY" Case %WM_NCCALCSIZE : Function = "%WM_NCCALCSIZE" Case %WM_NCHITTEST : Function = "%WM_NCHITTEST" Case %WM_NCPAINT : Function = "%WM_NCPAINT" Case %WM_NCACTIVATE : Function = "%WM_NCACTIVATE" Case %WM_GETDLGCODE : Function = "%WM_GETDLGCODE" Case %WM_NCMOUSEMOVE : Function = "%WM_NCMOUSEMOVE" Case %WM_NCLBUTTONDOWN : Function = "%WM_NCLBUTTONDOWN" Case %WM_NCLBUTTONUP : Function = "%WM_NCLBUTTONUP" Case %WM_NCLBUTTONDBLCLK : Function = "%WM_NCLBUTTONDBLCLK" Case %WM_NCRBUTTONDOWN : Function = "%WM_NCRBUTTONDOWN" Case %WM_NCRBUTTONUP : Function = "%WM_NCRBUTTONUP" Case %WM_NCRBUTTONDBLCLK : Function = "%WM_NCRBUTTONDBLCLK" Case %WM_NCMBUTTONDOWN : Function = "%WM_NCMBUTTONDOWN" Case %WM_NCMBUTTONUP : Function = "%WM_NCMBUTTONUP" Case %WM_NCMBUTTONDBLCLK : Function = "%WM_NCMBUTTONDBLCLK" Case %WM_KEYFIRST : Function = "%WM_KEYFIRST" Case %WM_KEYDOWN : Function = "%WM_KEYDOWN" Case %WM_KEYUP : Function = "%WM_KEYUP" Case %WM_CHAR : Function = "%WM_CHAR" Case %WM_DEADCHAR : Function = "%WM_DEADCHAR" Case %WM_SYSKEYDOWN : Function = "%WM_SYSKEYDOWN" Case %WM_SYSKEYUP : Function = "%WM_SYSKEYUP" Case %WM_SYSCHAR : Function = "%WM_SYSCHAR" Case %WM_SYSDEADCHAR : Function = "%WM_SYSDEADCHAR" Case %WM_KEYLAST : Function = "%WM_KEYLAST" Case %WM_INITDIALOG : Function = "%WM_INITDIALOG" Case %WM_COMMAND : Function = "%WM_COMMAND" Case %WM_SYSCOMMAND : Function = "%WM_SYSCOMMAND" Case %WM_TIMER : Function = "%WM_TIMER" Case %WM_HSCROLL : Function = "%WM_HSCROLL" Case %WM_VSCROLL : Function = "%WM_VSCROLL" Case %WM_INITMENU : Function = "%WM_INITMENU" Case %WM_INITMENUPOPUP : Function = "%WM_INITMENUPOPUP" Case %WM_MENUSELECT : Function = "%WM_MENUSELECT" Case %WM_MENUCHAR : Function = "%WM_MENUCHAR" Case %WM_ENTERIDLE : Function = "%WM_ENTERIDLE" Case %WM_CTLCOLORMSGBOX : Function = "%WM_CTLCOLORMSGBOX" Case %WM_CTLCOLOREDIT : Function = "%WM_CTLCOLOREDIT" Case %WM_CTLCOLORLISTBOX : Function = "%WM_CTLCOLORLISTBOX" Case %WM_CTLCOLORBTN : Function = "%WM_CTLCOLORBTN" Case %WM_CTLCOLORDLG : Function = "%WM_CTLCOLORDLG" Case %WM_CTLCOLORSCROLLBAR : Function = "%WM_CTLCOLORSCROLLBAR" Case %WM_CTLCOLORSTATIC : Function = "%WM_CTLCOLORSTATIC" Case %WM_MOUSEFIRST : Function = "%WM_MOUSEFIRST" Case %WM_MOUSEMOVE : Function = "%WM_MOUSEMOVE" Case %WM_LBUTTONDOWN : Function = "%WM_LBUTTONDOWN" Case %WM_LBUTTONUP : Function = "%WM_LBUTTONUP" Case %WM_LBUTTONDBLCLK : Function = "%WM_LBUTTONDBLCLK" Case %WM_RBUTTONDOWN : Function = "%WM_RBUTTONDOWN" Case %WM_RBUTTONUP : Function = "%WM_RBUTTONUP" Case %WM_RBUTTONDBLCLK : Function = "%WM_RBUTTONDBLCLK" Case %WM_MBUTTONDOWN : Function = "%WM_MBUTTONDOWN" Case %WM_MBUTTONUP : Function = "%WM_MBUTTONUP" Case %WM_MBUTTONDBLCLK : Function = "%WM_MBUTTONDBLCLK" Case %WM_MOUSEWHEEL : Function = "%WM_MOUSEWHEEL" Case %WM_MOUSELAST : Function = "%WM_MOUSELAST" Case %WM_PARENTNOTIFY : Function = "%WM_PARENTNOTIFY" Case %WM_ENTERMENULOOP : Function = "%WM_ENTERMENULOOP" Case %WM_EXITMENULOOP : Function = "%WM_EXITMENULOOP" Case %WM_SIZING : Function = "%WM_SIZING" Case %WM_CAPTURECHANGED : Function = "%WM_CAPTURECHANGED" Case %WM_MOVING : Function = "%WM_MOVING" Case %WM_POWERBROADCAST : Function = "%WM_POWERBROADCAST" Case %WM_DEVICECHANGE : Function = "%WM_DEVICECHANGE" Case %WM_MDICREATE : Function = "%WM_MDICREATE" Case %WM_MDIDESTROY : Function = "%WM_MDIDESTROY" Case %WM_MDIACTIVATE : Function = "%WM_MDIACTIVATE" Case %WM_MDIRESTORE : Function = "%WM_MDIRESTORE" Case %WM_MDINEXT : Function = "%WM_MDINEXT" Case %WM_MDIMAXIMIZE : Function = "%WM_MDIMAXIMIZE" Case %WM_MDITILE : Function = "%WM_MDITILE" Case %WM_MDICASCADE : Function = "%WM_MDICASCADE" Case %WM_MDIICONARRANGE : Function = "%WM_MDIICONARRANGE" Case %WM_MDIGETACTIVE : Function = "%WM_MDIGETACTIVE" Case %WM_MDISETMENU : Function = "%WM_MDISETMENU" Case %WM_DROPFILES : Function = "%WM_DROPFILES" Case %WM_MDIREFRESHMENU : Function = "%WM_MDIREFRESHMENU" Case %WM_CUT : Function = "%WM_CUT" Case %WM_COPY : Function = "%WM_COPY" Case %WM_PASTE : Function = "%WM_PASTE" Case %WM_CLEAR : Function = "%WM_CLEAR" Case %WM_UNDO : Function = "%WM_UNDO" Case %WM_RENDERFORMAT : Function = "%WM_RENDERFORMAT" Case %WM_RENDERALLFORMATS : Function = "%WM_RENDERALLFORMATS" Case %WM_DESTROYCLIPBOARD : Function = "%WM_DESTROYCLIPBOARD" Case %WM_DRAWCLIPBOARD : Function = "%WM_DRAWCLIPBOARD" Case %WM_PAINTCLIPBOARD : Function = "%WM_PAINTCLIPBOARD" Case %WM_VSCROLLCLIPBOARD : Function = "%WM_VSCROLLCLIPBOARD" Case %WM_SIZECLIPBOARD : Function = "%WM_SIZECLIPBOARD" Case %WM_ASKCBFORMATNAME : Function = "%WM_ASKCBFORMATNAME" Case %WM_CHANGECBCHAIN : Function = "%WM_CHANGECBCHAIN" Case %WM_HSCROLLCLIPBOARD : Function = "%WM_HSCROLLCLIPBOARD" Case %WM_QUERYNEWPALETTE : Function = "%WM_QUERYNEWPALETTE" Case %WM_PALETTEISCHANGING : Function = "%WM_PALETTEISCHANGING" Case %WM_PALETTECHANGED : Function = "%WM_PALETTECHANGED" Case %WM_HOTKEY : Function = "%WM_HOTKEY" Case %WM_PRINTCLIENT : Function = "%WM_PRINTCLIENT" Case %WM_PENWINFIRST : Function = "%WM_PENWINFIRST" Case %WM_PENWINLAST : Function = "%WM_PENWINLAST" End Select End Function
------------------
E-MAIL: [email protected]
[This message has been edited by Semen Matusovski (edited October 12, 2000).]
Comment