Codejock Forums Homepage
Forum Home Forum Home > Codejock Products > Visual C++ MFC > Report Control
  New Posts New Posts RSS Feed - Report Trouble with tooltip
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

Report Trouble with tooltip

 Post Reply Post Reply
Author
Message
jimmy View Drop Down
Senior Member
Senior Member


Joined: 11 November 2003
Location: Austria
Status: Offline
Points: 515
Post Options Post Options   Thanks (0) Thanks(0)   Quote jimmy Quote  Post ReplyReply Direct Link To This Post Topic: Report Trouble with tooltip
    Posted: 08 February 2010 at 9:04am
Hello,

sometime, if i move with mouse over ReportControl i get a assert.
The ReportControl is on a modless dialog.
Use v14.0.0beta.
VS .NET 2003
here is the callstack.

     ntdll.dll!7c91120e()    
     msvcr71d.dll!_CrtDbgBreak()  Zeile 93    C
     msvcr71d.dll!_CrtDbgReport(int nRptType=2, const char * szFile=0x7c144c68, int nLine=880, const char * szModule=0x00000000, const char * szFormat=0x00000000, ...)  Zeile 427    C
     mfc71d.dll!AfxAssertFailedLine(const char * lpszFileName=0x7c144c68, int nLine=880)  Zeile 28 + 0x14    C++
     mfc71d.dll!CWnd::AssertValid()  Zeile 880 + 0x20    C++
     mfc71d.dll!AfxAssertValidObject(const CObject * pOb=0x0ae0d524, const char * lpszFileName=0x7c144c68, int nLine=2645)  Zeile 108    C++
     mfc71d.dll!CWnd::GetParentOwner()  Zeile 2647    C++
     ToolkitPro1400vc71D.dll!CXTPToolTipContext::FilterToolTipMessageHelper(CWnd * pWndHost=0x0ae0d524, tagMSG * pMsg=0x0012a658, int bIgnoreFlags=1)  Zeile 1998 + 0x8    C++
     ToolkitPro1400vc71D.dll!CXTPToolTipContext::FilterToolTipMessage(CWnd * pWndHost=0x0ae0d524, tagMSG * pMsg=0x0012a658)  Zeile 1898    C++
     ToolkitPro1400vc71D.dll!CXTPToolTipContext::FilterToolTipMessage(CWnd * pWndHost=0x0ae0d524, unsigned int message=675, unsigned int wParam=0, long lParam=0)  Zeile 1893    C++
     ToolkitPro1400vc71D.dll!CXTPMarkupContext::OnWndMsg(CXTPMarkupUIElement * pUIElement=0x0acb6390, unsigned int message=675, unsigned int wParam=0, long lParam=0, long * pResult=0x0012aa3c)  Zeile 740    C++
     ToolkitPro1400vc71D.dll!XTPMarkupRelayMessage(CXTPMarkupUIElement * pElement=0x0acb6390, unsigned int message=675, unsigned int wParam=0, long lParam=0, long * pResult=0x0012aa3c)  Zeile 119 + 0x35    C++
     ToolkitPro1400vc71D.dll!CXTPReportControl::OnWndMsg(unsigned int message=675, unsigned int wParam=0, long lParam=0, long * pResult=0x0012aa3c)  Zeile 6023 + 0x1e    C++
>    Lasal2.exe!CXTPReportControlEx::OnWndMsg(unsigned int message=675, unsigned int wParam=0, long lParam=0, long * pResult=0x0012aa3c)  Zeile 96 + 0x1b    C++
     mfc71d.dll!CWnd::WindowProc(unsigned int message=675, unsigned int wParam=0, long lParam=0)  Zeile 1745 + 0x1e    C++
     mfc71d.dll!AfxCallWndProc(CWnd * pWnd=0x0ac4f858, HWND__ * hWnd=0x000a06ce, unsigned int nMsg=675, unsigned int wParam=0, long lParam=0)  Zeile 241 + 0x1a    C++
     mfc71d.dll!AfxWndProc(HWND__ * hWnd=0x000a06ce, unsigned int nMsg=675, unsigned int wParam=0, long lParam=0)  Zeile 389    C++
     mfc71d.dll!AfxWndProcBase(HWND__ * hWnd=0x000a06ce, unsigned int nMsg=675, unsigned int wParam=0, long lParam=0)  Zeile 209 + 0x15    C++
     user32.dll!_InternalCallWinProc@20()  + 0x28   
     user32.dll!_UserCallWinProcCheckWow@32()  + 0xb7   
     user32.dll!_DispatchMessageWorker@8()  + 0xdc   
     user32.dll!_DispatchMessageW@4()  + 0xf   
     user32.dll!_DialogBox2@16()  + 0x1a6   
     user32.dll!_InternalDialogBox@24()  + 0xb6   
     user32.dll!_SoftModalMessageBox@4()  + 0x677   
     user32.dll!_MessageBoxWorker@4()  + 0x175   
     user32.dll!_MessageBoxTimeoutW@24()  + 0x7a   
     user32.dll!_MessageBoxTimeoutA@24()  + 0x9c   
     user32.dll!_MessageBoxExA@20()  + 0x1b   
     user32.dll!_MessageBoxA@16()  + 0x45   
     msvcr71d.dll!__crtMessageBoxA(const char * lpText=0x0012b2c4, const char * lpCaption=0x10268444, unsigned int uType=73746)  Zeile 119    C
     msvcr71d.dll!CrtMessageWindow(int nRptType=2, const char * szFile=0x7c144c68, const char * szLine=0x0012c308, const char * szModule=0x00000000, const char * szUserMessage=0x0012c328)  Zeile 617 + 0x16    C
     msvcr71d.dll!_CrtDbgReport(int nRptType=2, const char * szFile=0x7c144c68, int nLine=880, const char * szModule=0x00000000, const char * szFormat=0x00000000, ...)  Zeile 516 + 0x4c    C
     mfc71d.dll!AfxAssertFailedLine(const char * lpszFileName=0x7c144c68, int nLine=880)  Zeile 28 + 0x14    C++
     mfc71d.dll!CWnd::AssertValid()  Zeile 880 + 0x20    C++
     mfc71d.dll!AfxAssertValidObject(const CObject * pOb=0x0ae0d524, const char * lpszFileName=0x7c144c68, int nLine=2645)  Zeile 108    C++
     mfc71d.dll!CWnd::GetParentOwner()  Zeile 2647    C++
     ToolkitPro1400vc71D.dll!CXTPToolTipContext::FilterToolTipMessageHelper(CWnd * pWndHost=0x0ae0d524, tagMSG * pMsg=0x0012f7ec, int bIgnoreFlags=1)  Zeile 1998 + 0x8    C++
     ToolkitPro1400vc71D.dll!CXTPToolTipContext::FilterToolTipMessage(CWnd * pWndHost=0x0ae0d524, tagMSG * pMsg=0x0012f7ec)  Zeile 1898    C++
     ToolkitPro1400vc71D.dll!CXTPToolTipContext::FilterToolTipMessage(CWnd * pWndHost=0x0ae0d524, unsigned int message=512, unsigned int wParam=0, long lParam=1572901)  Zeile 1893    C++
     ToolkitPro1400vc71D.dll!CXTPMarkupContext::OnWndMsg(CXTPMarkupUIElement * pUIElement=0x0acb6390, unsigned int message=512, unsigned int wParam=0, long lParam=1572901, long * pResult=0x0012fbd0)  Zeile 740    C++
     ToolkitPro1400vc71D.dll!XTPMarkupRelayMessage(CXTPMarkupUIElement * pElement=0x0acb6390, unsigned int message=512, unsigned int wParam=0, long lParam=1572901, long * pResult=0x0012fbd0)  Zeile 119 + 0x35    C++
     ToolkitPro1400vc71D.dll!CXTPReportControl::OnWndMsg(unsigned int message=512, unsigned int wParam=0, long lParam=1572901, long * pResult=0x0012fbd0)  Zeile 6023 + 0x1e    C++
     Lasal2.exe!CXTPReportControlEx::OnWndMsg(unsigned int message=512, unsigned int wParam=0, long lParam=1572901, long * pResult=0x0012fbd0)  Zeile 96 + 0x1b    C++
     mfc71d.dll!CWnd::WindowProc(unsigned int message=512, unsigned int wParam=0, long lParam=1572901)  Zeile 1745 + 0x1e    C++
     mfc71d.dll!AfxCallWndProc(CWnd * pWnd=0x0ac4f858, HWND__ * hWnd=0x000a06ce, unsigned int nMsg=512, unsigned int wParam=0, long lParam=1572901)  Zeile 241 + 0x1a    C++
     mfc71d.dll!AfxWndProc(HWND__ * hWnd=0x000a06ce, unsigned int nMsg=512, unsigned int wParam=0, long lParam=1572901)  Zeile 389    C++
     mfc71d.dll!AfxWndProcBase(HWND__ * hWnd=0x000a06ce, unsigned int nMsg=512, unsigned int wParam=0, long lParam=1572901)  Zeile 209 + 0x15    C++
     user32.dll!_InternalCallWinProc@20()  + 0x28   
     user32.dll!_UserCallWinProcCheckWow@32()  + 0xb7   
     user32.dll!_DispatchMessageWorker@8()  + 0xdc   
     user32.dll!_DispatchMessageW@4()  + 0xf   
     user32.dll!_IsDialogMessageW@8()  + 0xdb   
     user32.dll!_IsDialogMessageA@8()  + 0x4a   
     mfc71d.dll!CWnd::IsDialogMessageA(tagMSG * lpMsg=0x001b75b0)  Zeile 200    C++
     mfc71d.dll!CWnd::PreTranslateInput(tagMSG * lpMsg=0x001b75b0)  Zeile 4512    C++
     mfc71d.dll!CDialog::PreTranslateMessage(tagMSG * pMsg=0x001b75b0)  Zeile 83    C++
     mfc71d.dll!CWnd::WalkPreTranslateTree(HWND__ * hWndStop=0x000b025a, tagMSG * pMsg=0x001b75b0)  Zeile 3129 + 0x12    C++
     mfc71d.dll!AfxInternalPreTranslateMessage(tagMSG * pMsg=0x001b75b0)  Zeile 238 + 0x12    C++
     mfc71d.dll!CWinThread::PreTranslateMessage(tagMSG * pMsg=0x001b75b0)  Zeile 795 + 0x9    C++
     mfc71d.dll!AfxPreTranslateMessage(tagMSG * pMsg=0x001b75b0)  Zeile 257 + 0xf    C++
     mfc71d.dll!AfxInternalPumpMessage()  Zeile 183 + 0x18    C++
     mfc71d.dll!CWinThread::PumpMessage()  Zeile 916    C++
     mfc71d.dll!CWinThread::Run()  Zeile 637 + 0xb    C++
     mfc71d.dll!CWinApp::Run()  Zeile 701    C++
     mfc71d.dll!AfxWinMain(HINSTANCE__ * hInstance=0x00400000, HINSTANCE__ * hPrevInstance=0x00000000, char * lpCmdLine=0x00151f08, int nCmdShow=1)  Zeile 49 + 0xb    C++
     Lasal2.exe!WinMain(HINSTANCE__ * hInstance=0x00400000, HINSTANCE__ * hPrevInstance=0x00000000, char * lpCmdLine=0x00151f08, int nCmdShow=1)  Zeile 25    C++
     Lasal2.exe!WinMainCRTStartup()  Zeile 390 + 0x39    C
     kernel32.dll!7c817077()    
     ntdll.dll!7c925d47()    

 Jimmy

Back to Top
jimmy View Drop Down
Senior Member
Senior Member


Joined: 11 November 2003
Location: Austria
Status: Offline
Points: 515
Post Options Post Options   Thanks (0) Thanks(0)   Quote jimmy Quote  Post ReplyReply Direct Link To This Post Posted: 08 February 2010 at 9:27am
Hello,

Found the bug. (my bug ?)
Some time the modless dialog will be closed (window destroy) without destroy the dialog object.
after new creation the dialog, in the OnInitDialog i call EnableMarkup().
And in this function the MarkupContext will get the Report window handle, but only
if it was not set.
After second open dialog, the MakrupContext hold the old Report Window handle.
Now i set the new ReportWindow handle after EnableMarkup.

  Jimmy

Back to Top
 Post Reply Post Reply
  Share Topic   

Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 12.04
Copyright ©2001-2021 Web Wiz Ltd.

This page was generated in 0.156 seconds.