WTLDemo.exe shows an inaccurate call stack when a C++ typed exception is thrown

211 views
Skip to first unread message

Anton Zhvakin

unread,
Apr 28, 2016, 12:39:55 PM4/28/16
to Crashrpt
The call stack:

     KERNELBASE.dll!_RaiseException@16 ()    Unknown
     gdi32
.dll!_NtGdiPolyPatBlt@20 ()    Unknown
     gdi32
.dll!_NtGdiBitBlt@44 ()    Unknown
>    WTLDemo.exe!ATL::CDialogImplBaseT<ATL::CWindow>::DialogProc(HWND__ * hWnd, unsigned int uMsg, unsigned int wParam, long lParam) Line 3882    C++
     user32
.dll!__InternalCallWinProc@20 ()    Unknown
     user32
.dll!UserCallWinProcCheckWow()    Unknown
     user32
.dll!SendMessageWorker()    Unknown
     user32
.dll!SendMessageW()    Unknown
     user32
.dll!__InternalCallWinProc@20 ()    Unknown
     user32
.dll!UserCallWinProcCheckWow()    Unknown
     user32
.dll!DispatchMessageWorker()    Unknown
     user32
.dll!IsDialogMessageW()    Unknown
     
WTLDemo.exe!WTL::CMessageLoop::PreTranslateMessage(tagMSG * pMsg) Line 1207    C++
     
WTLDemo.exe!WTL::CMessageLoop::Run() Line 1166    C++
     
WTLDemo.exe!Run(wchar_t * __formal, int nCmdShow) Line 74    C++
     
WTLDemo.exe!wWinMain(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, wchar_t * lpstrCmdLine, int nCmdShow) Line 199    C++
     
[External Code]    

But here is no actual function where the exception was thrown. So there is no useful information. But I think it must be, isn't it?

UChef

unread,
Jul 20, 2016, 12:08:45 PM7/20/16
to Crashrpt
I have exact the same problem. I have built CrashRpt with the VS 2015 SDK (v140). Everything works fine, if I create the dump on a Windows 7 machine; I can read the dump with Visual Studio 2015 either on a Windows 7 or a Windows 10 machine:

  KERNELBASE.dll!_RaiseException@16 () Unbekannt
  [Externer Code]
> CrashRpt1403.dll!crEmulateCrash(unsigned int ExceptionType) Zeile 930 C++
  WTLDemo.exe!CMainDlg::DoCrash() Zeile 175 C++
  WTLDemo.exe!CMainDlg::OnOK(unsigned short __formal, unsigned short __formal, HWND__ * __formal, int & __formal) Zeile 143 C++
  WTLDemo.exe!CMainDlg::ProcessWindowMessage(HWND__ * hWnd, unsigned int uMsg, unsigned int wParam, long lParam, long & lResult, unsigned long dwMsgMapID) Zeile 36 C++
  [Externer Code]
  WTLDemo.exe!CMainDlg::PreTranslateMessage(tagMSG * pMsg) Zeile 28 C++
  WTLDemo.exe!WTL::CMessageLoop::PreTranslateMessage(tagMSG * pMsg) Zeile 1207 C++
  WTLDemo.exe!WTL::CMessageLoop::Run() Zeile 1166 C++
  WTLDemo.exe!Run(wchar_t * __formal, int nCmdShow) Zeile 74 C++
  WTLDemo.exe!wWinMain(HINSTANCE__ * hInstance, HINSTANCE__ * __formal, wchar_t * lpstrCmdLine, int nCmdShow) Zeile 199 C++
  [Externer Code]



If I create a dump on a Windows 10 machine, I loose the detailled stack trace information and therefor cannot identify the root of the problem.

Does anybody has a solution for this problem? Imho this is a Windows 10 related problem - but what is the cause of it?
Reply all
Reply to author
Forward
0 new messages