Есть проблемка в созданнии окон Таб вью , ранее они работали через eax==TCN_SELCHANGE шоу и хайд с проверкой от какого таба идет сообщение. Проект разросся и поэтому переделал Таб окна под отдельный диалог. Проблема в том что оконные процедуры не могут получить правильный код. То есть , не один месаджбокс не срабатывает ни на одном окне табвью, хотя какие то сообщения шлются , есть примеры где все сообщения обрабатываются в главном окне диалоговом. Но дело в том что это тоже не работает. Ниже приведу коды все мест связанных с этим делом. Код (Text): MOV TabCtrlItem.imask,TCIF_TEXT or TCIF_PARAM MOV TabCtrlItem.cchTextMax,64 ;3 Invoke CreateDialogParam,hInstance,IDD_DLG4,hwndTAB,Offset DialogFourProc,0 MOV TabCtrlItem.pszText,Offset third MOV TabCtrlItem.lParam,EAX Invoke SendDlgItemMessage,h2Wnd,IDD_TAB,TCM_INSERTITEM,0,ADDR TabCtrlItem ;2 Invoke CreateDialogParam,hInstance,IDD_DLG3,hwndTAB,Offset DialogThreeProc,0 MOV TabCtrlItem.pszText,Offset third MOV TabCtrlItem.lParam,EAX Invoke SendDlgItemMessage,h2Wnd,IDD_TAB,TCM_INSERTITEM,0,ADDR TabCtrlItem ;1 Invoke CreateDialogParam,hInstance,IDD_DLG2,hwndTAB,Offset DialogTwoProc,0 MOV TabCtrlItem.pszText,Offset second MOV TabCtrlItem.lParam,EAX Invoke SendDlgItemMessage,h2Wnd,IDD_TAB,TCM_INSERTITEM,0,ADDR TabCtrlItem ;0 Invoke CreateDialogParam,hInstance,IDD_DLG1,hwndTAB,Offset DialogOneProc,0 MOV TabCtrlItem.pszText,Offset first MOV TabCtrlItem.lParam,EAX ;Store handle of the visible child dialog Invoke SetWindowLong,h2Wnd,GWL_USERDATA,TabCtrlItem.lParam Invoke SendDlgItemMessage,h2Wnd,IDD_TAB,TCM_INSERTITEM,0,ADDR TabCtrlItem Invoke SendDlgItemMessage,h2Wnd,IDD_TAB,TCM_SETCURSEL,0,0 далее Код (Text): .if [edi.NMHDR].code ==TCN_SELCHANGE ; is this notification tabs changing? ; invoke SendMessage,hwndTAB,TCM_GETCURSEL,0,0 ; then learn the TAB index. ; mov tabIndex, eax ; store to "tabIndex" Invoke GetWindowLong,hWnd,GWL_USERDATA Invoke ShowWindow,EAX,SW_HIDE Invoke SendDlgItemMessage,hWnd,IDD_TAB,TCM_GETCURSEL,0,0 MOV TabCtrlItem.imask,TCIF_PARAM MOV EDX,EAX Invoke SendDlgItemMessage,hWnd,IDD_TAB,TCM_GETITEM,EDX,ADDR TabCtrlItem Invoke SetWindowLong,hWnd,GWL_USERDATA,TabCtrlItem.lParam Invoke ShowWindow,TabCtrlItem.lParam,SW_SHOW .endif и далее Код (Text): DialogTwoProc Proc hWnd:DWORD, uMsg:DWORD,wParam:DWORD,lParam:DWORD .If uMsg == WM_INITDIALOG .Else MOV EAX,FALSE RET .EndIf MOV EAX,TRUE RET DialogTwoProc EndP DialogThreeProc Proc hWnd:DWORD, uMsg:DWORD,wParam:DWORD,lParam:DWORD .If uMsg == WM_INITDIALOG .Else MOV EAX,FALSE RET .EndIf MOV EAX,TRUE RET DialogThreeProc EndP DialogFourProc Proc hWnd:DWORD, uMsg:DWORD,wParam:DWORD,lParam:DWORD .If uMsg == WM_INITDIALOG .Else MOV EAX,FALSE RET .EndIf MOV EAX,TRUE RET DialogFourProc EndP стороннюю прогу прикрепляю , у меня чуть иначе но не работает