Announcement

Collapse

Forum Guidelines

This forum is for finished source code that is working properly. If you have questions about this or any other source code, please post it in one of the Discussion Forums, not here.
See more
See less

'MessageName' function

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • 'MessageName' function

    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):
    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
    which generated following 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
    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).]

  • #2
    Also see the WINMSG.BAS project supplied with PB/DLL 6.0.


    ------------------
    Lance
    PowerBASIC Support
    mailto:[email protected][email protected]</A>
    Lance
    mailto:[email protected]

    Comment

    Working...
    X