Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Можно ли по коду сообщения получить его название?


MegaVolt ©   (2005-06-23 12:29:00) 

Например 513 это WM_LBUTTONDOWN. Для системных ошибок такая функция есть может и для сообщений есть?


ANB   (2005-06-28 09:14:00) [1]


  (Name : 'LB_SELECTSTRING'; Msg : $018C),
  (Name : 'LB_DIR'; Msg : $018D),
  (Name : 'LB_GETTOPINDEX'; Msg : $018E),
  (Name : 'LB_FINDSTRING'; Msg : $018F),
  (Name : 'LB_GETSELCOUNT'; Msg : $0190),
  (Name : 'LB_GETSELITEMS'; Msg : $0191),
  (Name : 'LB_SETTABSTOPS'; Msg : $0192),
  (Name : 'LB_GETHORIZONTALEXTENT'; Msg : $0193),
  (Name : 'LB_SETHORIZONTALEXTENT'; Msg : $0194),
  (Name : 'LB_SETCOLUMNWIDTH'; Msg : $0195),
  (Name : 'LB_ADDFILE'; Msg : $0196),
  (Name : 'LB_SETTOPINDEX'; Msg : $0197),
  (Name : 'LB_GETITEMRECT'; Msg : $0198),
  (Name : 'LB_GETITEMDATA'; Msg : $0199),
  (Name : 'LB_SETITEMDATA'; Msg : $019A),
  (Name : 'LB_SELITEMRANGE'; Msg : $019B),
  (Name : 'LB_SETANCHORINDEX'; Msg : $019C),
  (Name : 'LB_GETANCHORINDEX'; Msg : $019D),
  (Name : 'LB_SETCARETINDEX'; Msg : $019E),
  (Name : 'LB_GETCARETINDEX'; Msg : $019F),
  (Name : 'LB_SETITEMHEIGHT'; Msg : $01A0),
  (Name : 'LB_GETITEMHEIGHT'; Msg : $01A1),
  (Name : 'LB_FINDSTRINGEXACT'; Msg : $01A2),
  (Name : 'LB_SETLOCALE'; Msg : $01A5),
  (Name : 'LB_GETLOCALE'; Msg : $01A6),
  (Name : 'LB_SETCOUNT'; Msg : $01A7),
  (Name : 'LB_INITSTORAGE'; Msg : $01A8),
  (Name : 'LB_ITEMFROMPOINT'; Msg : $01A9),
  (Name : 'LB_MSGMAX'; Msg : 432),
  (Name : 'CBN_ERRSPACE'; Msg : UINT(-1)),
  (Name : 'CBN_SELCHANGE'; Msg : 1),
  (Name : 'CBN_DBLCLK'; Msg : 2),
  (Name : 'CBN_SETFOCUS'; Msg : 3),
  (Name : 'CBN_KILLFOCUS'; Msg : 4),
  (Name : 'CBN_EDITCHANGE'; Msg : 5),
  (Name : 'CBN_EDITUPDATE'; Msg : 6),
  (Name : 'CBN_DROPDOWN'; Msg : 7),
  (Name : 'CBN_CLOSEUP'; Msg : 8),
  (Name : 'CBN_SELENDOK'; Msg : 9),
  (Name : 'CBN_SELENDCANCEL'; Msg : 10),
  (Name : 'CB_GETEDITSEL'; Msg : $0140),
  (Name : 'CB_LIMITTEXT'; Msg : $0141),
  (Name : 'CB_SETEDITSEL'; Msg : $0142),
  (Name : 'CB_ADDSTRING'; Msg : $0143),
  (Name : 'CB_DELETESTRING'; Msg : $0144),
  (Name : 'CB_DIR'; Msg : $0145),
  (Name : 'CB_GETCOUNT'; Msg : $0146),
  (Name : 'CB_GETCURSEL'; Msg : $0147),
  (Name : 'CB_GETLBTEXT'; Msg : $0148),
  (Name : 'CB_GETLBTEXTLEN'; Msg : $0149),
  (Name : 'CB_INSERTSTRING'; Msg : $014A),
  (Name : 'CB_RESETCONTENT'; Msg : $014B),
  (Name : 'CB_FINDSTRING'; Msg : $014C),
  (Name : 'CB_SELECTSTRING'; Msg : $014D),
  (Name : 'CB_SETCURSEL'; Msg : $014E),
  (Name : 'CB_SHOWDROPDOWN'; Msg : $014F),
  (Name : 'CB_GETITEMDATA'; Msg : $0150),
  (Name : 'CB_SETITEMDATA'; Msg : $0151),
  (Name : 'CB_GETDROPPEDCONTROLRECT'; Msg : $0152),
  (Name : 'CB_SETITEMHEIGHT'; Msg : $0153),
  (Name : 'CB_GETITEMHEIGHT'; Msg : $0154),
  (Name : 'CB_SETEXTENDEDUI'; Msg : $0155),
  (Name : 'CB_GETEXTENDEDUI'; Msg : $0156),
  (Name : 'CB_GETDROPPEDSTATE'; Msg : $0157),
  (Name : 'CB_FINDSTRINGEXACT'; Msg : $0158),
  (Name : 'CB_SETLOCALE'; Msg : 345),
  (Name : 'CB_GETLOCALE'; Msg : 346),
  (Name : 'CB_GETTOPINDEX'; Msg : 347),
  (Name : 'CB_SETTOPINDEX'; Msg : 348),
  (Name : 'CB_GETHORIZONTALEXTENT'; Msg : 349),
  (Name : 'CB_SETHORIZONTALEXTENT'; Msg : 350),
  (Name : 'CB_GETDROPPEDWIDTH'; Msg : 351),
  (Name : 'CB_SETDROPPEDWIDTH'; Msg : 352),
  (Name : 'CB_INITSTORAGE'; Msg : 353),
  (Name : 'CB_MSGMAX'; Msg : 354),
  (Name : 'EN_SETFOCUS'; Msg : $0100),
  (Name : 'EN_KILLFOCUS'; Msg : $0200),
  (Name : 'EN_CHANGE'; Msg : $0300),
  (Name : 'EN_UPDATE'; Msg : $0400),
  (Name : 'EN_ERRSPACE'; Msg : $0500),
  (Name : 'EN_MAXTEXT'; Msg : $0501),
  (Name : 'EN_HSCROLL'; Msg : $0601),
  (Name : 'EN_VSCROLL'; Msg : $0602),
  (Name : 'EM_GETSEL'; Msg : $00B0),
  (Name : 'EM_SETSEL'; Msg : $00B1),
  (Name : 'EM_GETRECT'; Msg : $00B2),
  (Name : 'EM_SETRECT'; Msg : $00B3),
  (Name : 'EM_SETRECTNP'; Msg : $00B4),
  (Name : 'EM_SCROLL'; Msg : $00B5),
  (Name : 'EM_LINESCROLL'; Msg : $00B6),
  (Name : 'EM_SCROLLCARET'; Msg : $00B7),
  (Name : 'EM_GETMODIFY'; Msg : $00B8),
  (Name : 'EM_SETMODIFY'; Msg : $00B9),
  (Name : 'EM_GETLINECOUNT'; Msg : $00BA),
  (Name : 'EM_LINEINDEX'; Msg : $00BB),
  (Name : 'EM_SETHANDLE'; Msg : $00BC),
  (Name : 'EM_GETHANDLE'; Msg : $00BD),
  (Name : 'EM_GETTHUMB'; Msg : $00BE),
  (Name : 'EM_LINELENGTH'; Msg : $00C1),
  (Name : 'EM_REPLACESEL'; Msg : $00C2),
  (Name : 'EM_GETLINE'; Msg : $00C4),
  (Name : 'EM_LIMITTEXT'; Msg : $00C5),
  (Name : 'EM_CANUNDO'; Msg : $00C6),
  (Name : 'EM_UNDO'; Msg : $00C7),
  (Name : 'EM_FMTLINES'; Msg : $00C8),
  (Name : 'EM_LINEFROMCHAR'; Msg : $00C9),
  (Name : 'EM_SETTABSTOPS'; Msg : $00CB),
  (Name : 'EM_SETPASSWORDCHAR'; Msg : $00CC),
  (Name : 'EM_EMPTYUNDOBUFFER'; Msg : $00CD),
  (Name : 'EM_GETFIRSTVISIBLELINE'; Msg : $00CE),
  (Name : 'EM_SETREADONLY'; Msg : $00CF),
  (Name : 'EM_SETWORDBREAKPROC'; Msg : $00D0),
  (Name : 'EM_GETWORDBREAKPROC'; Msg : $00D1),
  (Name : 'EM_GETPASSWORDCHAR'; Msg : $00D2),
  (Name : 'EM_SETMARGINS'; Msg : 211),
  (Name : 'EM_GETMARGINS'; Msg : 212),
  (Name : 'EM_SETLIMITTEXT'; Msg : EM_LIMITTEXT),
  (Name : 'EM_GETLIMITTEXT'; Msg : 213),
  (Name : 'EM_POSFROMCHAR'; Msg : 214),
  (Name : 'EM_CHARFROMPOS'; Msg : 215),
  (Name : 'EM_SETIMESTATUS'; Msg : 216),
  (Name : 'EM_GETIMESTATUS'; Msg : 217),
  (Name : 'SBM_SETPOS'; Msg : 224),
  (Name : 'SBM_GETPOS'; Msg : 225),
  (Name : 'SBM_SETRANGE'; Msg : 226),
  (Name : 'SBM_SETRANGEREDRAW'; Msg : 230),
  (Name : 'SBM_GETRANGE'; Msg : 227),
  (Name : 'SBM_ENABLE_ARROWS'; Msg : 228),
  (Name : 'SBM_SETSCROLLINFO'; Msg : 233),
  (Name : 'SBM_GETSCROLLINFO'; Msg : 234)
 );

function MessageToName(Msg : UINT) : String;

implementation

function MessageToName(Msg : UINT) : String;
var i, n : Integer;
begin
Result := '';
n := High(WindowMessagesRecs);
for i := 1 to n do begin
 if (UINT(WindowMessagesRecs[i].Msg) = UINT(Msg))
 then begin
  Result := WindowMessagesRecs[i].Name;
  Exit;
 end;
end;
end;

end.


ANB   (2005-06-28 09:13:00) [2]

Во, мне не жалко, так как автомат парсил (здесь только Windows.pas) :

unit WindowsMessagesList_U;

interface

uses Messages, Windows;

type
TWindowMessagesName = record
 Name : ShortString;
 Msg :  UINT;
end;

const
 MaxWindowMessagesRecs = 394;
 WindowMessagesRecs : array[1..MaxWindowMessagesRecs] of TWindowMessagesName =
 (
  (Name : 'WM_NULL'; Msg : $0000),
  (Name : 'WM_CREATE'; Msg : $0001),
  (Name : 'WM_DESTROY'; Msg : $0002),
  (Name : 'WM_MOVE'; Msg : $0003),
  (Name : 'WM_SIZE'; Msg : $0005),
  (Name : 'WM_ACTIVATE'; Msg : $0006),
  (Name : 'WM_SETFOCUS'; Msg : $0007),
  (Name : 'WM_KILLFOCUS'; Msg : $0008),
  (Name : 'WM_ENABLE'; Msg : $000A),
  (Name : 'WM_SETREDRAW'; Msg : $000B),
  (Name : 'WM_SETTEXT'; Msg : $000C),
  (Name : 'WM_GETTEXT'; Msg : $000D),
  (Name : 'WM_GETTEXTLENGTH'; Msg : $000E),
  (Name : 'WM_PAINT'; Msg : $000F),
  (Name : 'WM_CLOSE'; Msg : $0010),
  (Name : 'WM_QUERYENDSESSION'; Msg : $0011),
  (Name : 'WM_QUIT'; Msg : $0012),
  (Name : 'WM_QUERYOPEN'; Msg : $0013),
  (Name : 'WM_ERASEBKGND'; Msg : $0014),
  (Name : 'WM_SYSCOLORCHANGE'; Msg : $0015),
  (Name : 'WM_ENDSESSION'; Msg : $0016),
  (Name : 'WM_SYSTEMERROR'; Msg : $0017),
  (Name : 'WM_SHOWWINDOW'; Msg : $0018),
  (Name : 'WM_CTLCOLOR'; Msg : $0019),
  (Name : 'WM_WININICHANGE'; Msg : $001A),
  (Name : 'WM_SETTINGCHANGE'; Msg : WM_WININICHANGE),
  (Name : 'WM_DEVMODECHANGE'; Msg : $001B),
  (Name : 'WM_ACTIVATEAPP'; Msg : $001C),
  (Name : 'WM_FONTCHANGE'; Msg : $001D),
  (Name : 'WM_TIMECHANGE'; Msg : $001E),
  (Name : 'WM_CANCELMODE'; Msg : $001F),
  (Name : 'WM_SETCURSOR'; Msg : $0020),
  (Name : 'WM_MOUSEACTIVATE'; Msg : $0021),
  (Name : 'WM_CHILDACTIVATE'; Msg : $0022),
  (Name : 'WM_QUEUESYNC'; Msg : $0023),
  (Name : 'WM_GETMINMAXINFO'; Msg : $0024),
  (Name : 'WM_PAINTICON'; Msg : $0026),
  (Name : 'WM_ICONERASEBKGND'; Msg : $0027),
  (Name : 'WM_NEXTDLGCTL'; Msg : $0028),
  (Name : 'WM_SPOOLERSTATUS'; Msg : $002A),
  (Name : 'WM_DRAWITEM'; Msg : $002B),
  (Name : 'WM_MEASUREITEM'; Msg : $002C),
  (Name : 'WM_DELETEITEM'; Msg : $002D),
  (Name : 'WM_VKEYTOITEM'; Msg : $002E),
  (Name : 'WM_CHARTOITEM'; Msg : $002F),
  (Name : 'WM_SETFONT'; Msg : $0030),
  (Name : 'WM_GETFONT'; Msg : $0031),
  (Name : 'WM_SETHOTKEY'; Msg : $0032),
  (Name : 'WM_GETHOTKEY'; Msg : $0033),
  (Name : 'WM_QUERYDRAGICON'; Msg : $0037),
  (Name : 'WM_COMPAREITEM'; Msg : $0039),
  (Name : 'WM_GETOBJECT'; Msg : $003D),
  (Name : 'WM_COMPACTING'; Msg : $0041),
  (Name : 'WM_COMMNOTIFY'; Msg : $0044),
  (Name : 'WM_WINDOWPOSCHANGING'; Msg : $0046),
  (Name : 'WM_WINDOWPOSCHANGED'; Msg : $0047),
  (Name : 'WM_POWER'; Msg : $0048),
  (Name : 'WM_COPYDATA'; Msg : $004A),
  (Name : 'WM_CANCELJOURNAL'; Msg : $004B),
  (Name : 'WM_NOTIFY'; Msg : $004E),
  (Name : 'WM_INPUTLANGCHANGEREQUEST'; Msg : $0050),
  (Name : 'WM_INPUTLANGCHANGE'; Msg : $0051),
  (Name : 'WM_TCARD'; Msg : $0052),
  (Name : 'WM_HELP'; Msg : $0053),
  (Name : 'WM_USERCHANGED'; Msg : $0054),
  (Name : 'WM_NOTIFYFORMAT'; Msg : $0055),
  (Name : 'WM_CONTEXTMENU'; Msg : $007B),
  (Name : 'WM_STYLECHANGING'; Msg : $007C),
  (Name : 'WM_STYLECHANGED'; Msg : $007D),
  (Name : 'WM_DISPLAYCHANGE'; Msg : $007E),
  (Name : 'WM_GETICON'; Msg : $007F),
  (Name : 'WM_SETICON'; Msg : $0080),
  (Name : 'WM_NCCREATE'; Msg : $0081),
  (Name : 'WM_NCDESTROY'; Msg : $0082),
  (Name : 'WM_NCCALCSIZE'; Msg : $0083),
  (Name : 'WM_NCHITTEST'; Msg : $0084),
  (Name : 'WM_NCPAINT'; Msg : $0085),
  (Name : 'WM_NCACTIVATE'; Msg : $0086),
  (Name : 'WM_GETDLGCODE'; Msg : $0087),
  (Name : 'WM_NCMOUSEMOVE'; Msg : $00A0),
  (Name : 'WM_NCLBUTTONDOWN'; Msg : $00A1),
  (Name : 'WM_NCLBUTTONUP'; Msg : $00A2),
  (Name : 'WM_NCLBUTTONDBLCLK'; Msg : $00A3),
  (Name : 'WM_NCRBUTTONDOWN'; Msg : $00A4),
  (Name : 'WM_NCRBUTTONUP'; Msg : $00A5),
  (Name : 'WM_NCRBUTTONDBLCLK'; Msg : $00A6),
  (Name : 'WM_NCMBUTTONDOWN'; Msg : $00A7),
  (Name : 'WM_NCMBUTTONUP'; Msg : $00A8),
  (Name : 'WM_NCMBUTTONDBLCLK'; Msg : $00A9),
  (Name : 'WM_NCXBUTTONDOWN'; Msg : $00AB),
  (Name : 'WM_NCXBUTTONUP'; Msg : $00AC),
  (Name : 'WM_NCXBUTTONDBLCLK'; Msg : $00AD),
  (Name : 'WM_INPUT'; Msg : $00FF),
  (Name : 'WM_KEYDOWN'; Msg : $0100),
  (Name : 'WM_KEYUP'; Msg : $0101),
  (Name : 'WM_CHAR'; Msg : $0102),
  (Name : 'WM_DEADCHAR'; Msg : $0103),
  (Name : 'WM_SYSKEYDOWN'; Msg : $0104),
  (Name : 'WM_SYSKEYUP'; Msg : $0105),
  (Name : 'WM_SYSCHAR'; Msg : $0106),
  (Name : 'WM_SYSDEADCHAR'; Msg : $0107),
  (Name : 'WM_KEYLAST'; Msg : $0108),
  (Name : 'WM_INITDIALOG'; Msg : $0110),
  (Name : 'WM_COMMAND'; Msg : $0111),
  (Name : 'WM_SYSCOMMAND'; Msg : $0112),
  (Name : 'WM_TIMER'; Msg : $0113),
  (Name : 'WM_HSCROLL'; Msg : $0114),
  (Name : 'WM_VSCROLL'; Msg : $0115),
  (Name : 'WM_INITMENU'; Msg : $0116),
  (Name : 'WM_INITMENUPOPUP'; Msg : $0117),
  (Name : 'WM_MENUSELECT'; Msg : $011F),
  (Name : 'WM_MENUCHAR'; Msg : $0120),
  (Name : 'WM_ENTERIDLE'; Msg : $0121),
  (Name : 'WM_MENURBUTTONUP'; Msg : $0122),
  (Name : 'WM_MENUDRAG'; Msg : $0123),
  (Name : 'WM_MENUGETOBJECT'; Msg : $0124),
  (Name : 'WM_UNINITMENUPOPUP'; Msg : $0125),
  (Name : 'WM_MENUCOMMAND'; Msg : $0126),
  (Name : 'WM_CHANGEUISTATE'; Msg : $0127),
  (Name : 'WM_UPDATEUISTATE'; Msg : $0128),
  (Name : 'WM_QUERYUISTATE'; Msg : $0129),
  (Name : 'WM_CTLCOLORMSGBOX'; Msg : $0132),
  (Name : 'WM_CTLCOLOREDIT'; Msg : $0133),
  (Name : 'WM_CTLCOLORLISTBOX'; Msg : $0134),
  (Name : 'WM_CTLCOLORBTN'; Msg : $0135),
  (Name : 'WM_CTLCOLORDLG'; Msg : $0136),
  (Name : 'WM_CTLCOLORSCROLLBAR'; Msg : $0137),
  (Name : 'WM_CTLCOLORSTATIC'; Msg : $0138),
  (Name : 'WM_MOUSEFIRST'; Msg : $0200),
  (Name : 'WM_MOUSEMOVE'; Msg : $0200),
  (Name : 'WM_LBUTTONDOWN'; Msg : $0201),


ANB   (2005-06-28 09:13:00) [3]


  (Name : 'WM_LBUTTONUP'; Msg : $0202),
  (Name : 'WM_LBUTTONDBLCLK'; Msg : $0203),
  (Name : 'WM_RBUTTONDOWN'; Msg : $0204),
  (Name : 'WM_RBUTTONUP'; Msg : $0205),
  (Name : 'WM_RBUTTONDBLCLK'; Msg : $0206),
  (Name : 'WM_MBUTTONDOWN'; Msg : $0207),
  (Name : 'WM_MBUTTONUP'; Msg : $0208),
  (Name : 'WM_MBUTTONDBLCLK'; Msg : $0209),
  (Name : 'WM_MOUSEWHEEL'; Msg : $020A),
  (Name : 'WM_MOUSELAST'; Msg : $020A),
  (Name : 'WM_PARENTNOTIFY'; Msg : $0210),
  (Name : 'WM_ENTERMENULOOP'; Msg : $0211),
  (Name : 'WM_EXITMENULOOP'; Msg : $0212),
  (Name : 'WM_NEXTMENU'; Msg : $0213),
  (Name : 'WM_SIZING'; Msg : 532),
  (Name : 'WM_CAPTURECHANGED'; Msg : 533),
  (Name : 'WM_MOVING'; Msg : 534),
  (Name : 'WM_POWERBROADCAST'; Msg : 536),
  (Name : 'WM_DEVICECHANGE'; Msg : 537),
  (Name : 'WM_IME_STARTCOMPOSITION'; Msg : $010D),
  (Name : 'WM_IME_ENDCOMPOSITION'; Msg : $010E),
  (Name : 'WM_IME_COMPOSITION'; Msg : $010F),
  (Name : 'WM_IME_KEYLAST'; Msg : $010F),
  (Name : 'WM_IME_SETCONTEXT'; Msg : $0281),
  (Name : 'WM_IME_NOTIFY'; Msg : $0282),
  (Name : 'WM_IME_CONTROL'; Msg : $0283),
  (Name : 'WM_IME_COMPOSITIONFULL'; Msg : $0284),
  (Name : 'WM_IME_SELECT'; Msg : $0285),
  (Name : 'WM_IME_CHAR'; Msg : $0286),
  (Name : 'WM_IME_REQUEST'; Msg : $0288),
  (Name : 'WM_IME_KEYDOWN'; Msg : $0290),
  (Name : 'WM_IME_KEYUP'; Msg : $0291),
  (Name : 'WM_MDICREATE'; Msg : $0220),
  (Name : 'WM_MDIDESTROY'; Msg : $0221),
  (Name : 'WM_MDIACTIVATE'; Msg : $0222),
  (Name : 'WM_MDIRESTORE'; Msg : $0223),
  (Name : 'WM_MDINEXT'; Msg : $0224),
  (Name : 'WM_MDIMAXIMIZE'; Msg : $0225),
  (Name : 'WM_MDITILE'; Msg : $0226),
  (Name : 'WM_MDICASCADE'; Msg : $0227),
  (Name : 'WM_MDIICONARRANGE'; Msg : $0228),
  (Name : 'WM_MDIGETACTIVE'; Msg : $0229),
  (Name : 'WM_MDISETMENU'; Msg : $0230),
  (Name : 'WM_ENTERSIZEMOVE'; Msg : $0231),
  (Name : 'WM_EXITSIZEMOVE'; Msg : $0232),
  (Name : 'WM_DROPFILES'; Msg : $0233),
  (Name : 'WM_MDIREFRESHMENU'; Msg : $0234),
  (Name : 'WM_MOUSEHOVER'; Msg : $02A1),
  (Name : 'WM_MOUSELEAVE'; Msg : $02A3),
  (Name : 'WM_NCMOUSEHOVER'; Msg : $02A0),
  (Name : 'WM_NCMOUSELEAVE'; Msg : $02A2),
  (Name : 'WM_WTSSESSION_CHANGE'; Msg : $02B1),
  (Name : 'WM_TABLET_FIRST'; Msg : $02C0),
  (Name : 'WM_TABLET_LAST'; Msg : $02DF),
  (Name : 'WM_CUT'; Msg : $0300),
  (Name : 'WM_COPY'; Msg : $0301),
  (Name : 'WM_PASTE'; Msg : $0302),
  (Name : 'WM_CLEAR'; Msg : $0303),
  (Name : 'WM_UNDO'; Msg : $0304),
  (Name : 'WM_RENDERFORMAT'; Msg : $0305),
  (Name : 'WM_RENDERALLFORMATS'; Msg : $0306),
  (Name : 'WM_DESTROYCLIPBOARD'; Msg : $0307),
  (Name : 'WM_DRAWCLIPBOARD'; Msg : $0308),
  (Name : 'WM_PAINTCLIPBOARD'; Msg : $0309),
  (Name : 'WM_VSCROLLCLIPBOARD'; Msg : $030A),
  (Name : 'WM_SIZECLIPBOARD'; Msg : $030B),
  (Name : 'WM_ASKCBFORMATNAME'; Msg : $030C),
  (Name : 'WM_CHANGECBCHAIN'; Msg : $030D),
  (Name : 'WM_HSCROLLCLIPBOARD'; Msg : $030E),
  (Name : 'WM_QUERYNEWPALETTE'; Msg : $030F),
  (Name : 'WM_PALETTEISCHANGING'; Msg : $0310),
  (Name : 'WM_PALETTECHANGED'; Msg : $0311),
  (Name : 'WM_HOTKEY'; Msg : $0312),
  (Name : 'WM_PRINT'; Msg : 791),
  (Name : 'WM_PRINTCLIENT'; Msg : 792),
  (Name : 'WM_APPCOMMAND'; Msg : $0319),
  (Name : 'WM_THEMECHANGED'; Msg : $031A),
  (Name : 'WM_HANDHELDFIRST'; Msg : 856),
  (Name : 'WM_HANDHELDLAST'; Msg : 863),
  (Name : 'WM_PENWINFIRST'; Msg : $0380),
  (Name : 'WM_PENWINLAST'; Msg : $038F),
  (Name : 'WM_COALESCE_FIRST'; Msg : $0390),
  (Name : 'WM_COALESCE_LAST'; Msg : $039F),
  (Name : 'WM_DDE_FIRST'; Msg : $03E0),
  (Name : 'WM_DDE_INITIATE'; Msg : WM_DDE_FIRST + 0),
  (Name : 'WM_DDE_TERMINATE'; Msg : WM_DDE_FIRST + 1),
  (Name : 'WM_DDE_ADVISE'; Msg : WM_DDE_FIRST + 2),
  (Name : 'WM_DDE_UNADVISE'; Msg : WM_DDE_FIRST + 3),
  (Name : 'WM_DDE_ACK'; Msg : WM_DDE_FIRST + 4),
  (Name : 'WM_DDE_DATA'; Msg : WM_DDE_FIRST + 5),
  (Name : 'WM_DDE_REQUEST'; Msg : WM_DDE_FIRST + 6),
  (Name : 'WM_DDE_POKE'; Msg : WM_DDE_FIRST + 7),
  (Name : 'WM_DDE_EXECUTE'; Msg : WM_DDE_FIRST + 8),
  (Name : 'WM_DDE_LAST'; Msg : WM_DDE_FIRST + 8),
  (Name : 'WM_APP'; Msg : $8000),
  (Name : 'WM_USER'; Msg : $0400),
  (Name : 'BN_CLICKED'; Msg : 0),
  (Name : 'BN_PAINT'; Msg : 1),
  (Name : 'BN_HILITE'; Msg : 2),
  (Name : 'BN_UNHILITE'; Msg : 3),
  (Name : 'BN_DISABLE'; Msg : 4),
  (Name : 'BN_DOUBLECLICKED'; Msg : 5),
  (Name : 'BN_PUSHED'; Msg : BN_HILITE),
  (Name : 'BN_UNPUSHED'; Msg : BN_UNHILITE),
  (Name : 'BN_DBLCLK'; Msg : BN_DOUBLECLICKED),
  (Name : 'BN_SETFOCUS'; Msg : 6),
  (Name : 'BN_KILLFOCUS'; Msg : 7),
  (Name : 'BM_GETCHECK'; Msg : $00F0),
  (Name : 'BM_SETCHECK'; Msg : $00F1),
  (Name : 'BM_GETSTATE'; Msg : $00F2),
  (Name : 'BM_SETSTATE'; Msg : $00F3),
  (Name : 'BM_SETSTYLE'; Msg : $00F4),
  (Name : 'BM_CLICK'; Msg : $00F5),
  (Name : 'BM_GETIMAGE'; Msg : $00F6),
  (Name : 'BM_SETIMAGE'; Msg : $00F7),
  (Name : 'LBN_ERRSPACE'; Msg : UINT(-2)),
  (Name : 'LBN_SELCHANGE'; Msg : 1),
  (Name : 'LBN_DBLCLK'; Msg : 2),
  (Name : 'LBN_SELCANCEL'; Msg : 3),
  (Name : 'LBN_SETFOCUS'; Msg : 4),
  (Name : 'LBN_KILLFOCUS'; Msg : 5),
  (Name : 'LB_ADDSTRING'; Msg : $0180),
  (Name : 'LB_INSERTSTRING'; Msg : $0181),
  (Name : 'LB_DELETESTRING'; Msg : $0182),
  (Name : 'LB_SELITEMRANGEEX'; Msg : $0183),
  (Name : 'LB_RESETCONTENT'; Msg : $0184),
  (Name : 'LB_SETSEL'; Msg : $0185),
  (Name : 'LB_SETCURSEL'; Msg : $0186),
  (Name : 'LB_GETSEL'; Msg : $0187),
  (Name : 'LB_GETCURSEL'; Msg : $0188),
  (Name : 'LB_GETTEXT'; Msg : $0189),
  (Name : 'LB_GETTEXTLEN'; Msg : $018A),
  (Name : 'LB_GETCOUNT'; Msg : $018B),


just_me   (2005-06-23 18:55:00) [4]

В файле WINUSER.H из MS Visual Studio 6.0


MegaVolt   (2005-06-23 14:28:00) [5]

Вот тут есть списки но числовых значений нету.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_mfc_handlers_for_wm_messages.asp


alpet   (2005-06-23 13:44:00) [6]

Советую для этих целей использовать также программу Spy ++, она как раз ориентированна на отлов сообщений и отображении их в удобочитаемом виде.


Anatoly Podgoretsky   (2005-06-23 13:37:00) [7]

Ну например сообщения виндоус WM_


Anatoly Podgoretsky   (2005-06-23 13:33:00) [8]

MegaVolt ©   (23.06.05 13:06) [4]
MSDN или частичный в MS SDK


MegaVolt   (2005-06-23 13:33:00) [9]

А на какие слова в MSDN искать? Как это называется по английски? А то описание их я нахожу а цифровые коды нет.


MegaVolt   (2005-06-23 13:32:00) [10]

Насколько я понял в Windows их очень мало. Основное описание в Messages. От туда я изначально и выдрал. Меня больше интересовало описание от мелкософта. Только что то найти не могу :(


MegaVolt   (2005-06-23 13:29:00) [11]

Насколько я понял в Windows их очень мало. Основное описание в Messages. От туда я изначально и выдрал. Меня больше интересовало описание от мелкософта. Только что то найти не могу :(


alpet   (2005-06-23 13:24:00) [12]

Windows.pas, Messages.pas и другие файлы исходники RTL/VCL - в них до кучи констант сообщений.


MegaVolt   (2005-06-23 13:06:00) [13]

Логично. Написал сам :) Только найти бы полный список ещё :)


wal   (2005-06-23 12:45:00) [14]


> [2] MegaVolt ©   (23.06.05 12:35)

Если уж очень приспичило, то можно и самому написать. Но смысла все равно не вижу. Системные ошибки могут иметь описание, потому что иногда (часто) их нужно довести до конечного пользователя, а вот для сообщений что-то я не могу придумать, когда такое нужно.

С уважением.


MegaVolt   (2005-06-23 12:35:00) [15]

А как при отладке понять что за сообщение пришло? Каждый раз лазить в описание констант?


Digitman   (2005-06-23 12:32:00) [16]


> может и для сообщений есть?


спешу тебя огорчить - увы, нет такой ...
по кр.мере мне не известна сия фича
да и не нужна она в принципе


Наверх

Титульная страница Поиск, карта сайта Написать письмо