Re: Crash in CFileDailog when called from hook procedure
(OFNHookProc)
Here is the call stack. Plz let me know if u can spot any problem
Thanks
==========================
==========================
========
mfc71ud.dll!_AfxCommDlgProc(HWND__ * hWnd=0x00040eae, unsigned int mess=
age=49265, unsigned int wParam=0, long lParam=28974056) Line 80 + 0x=
16 C++
user32.dll!77d48709()
user32.dll!77d54ca6()
user32.dll!77d70494()
user32.dll!77d54af2()
user32.dll!77d54d1c()
user32.dll!77d48709()
user32.dll!77d487eb()
user32.dll!77d70494()
user32.dll!77d4b368()
user32.dll!77d70494()
user32.dll!77d4b3b4()
ntdll.dll!7c90e473()
user32.dll!77d494e3()
user32.dll!77d4c0de()
user32.dll!77d4b7ab()
comdlg32.dll!763b99d3()
comdlg32.dll!763b7558()
comdlg32.dll!763dc029()
comdlg32.dll!763dd459()
comdlg32.dll!763dd9e9()
comdlg32.dll!763dda6a()
shell32.dll!7caa18b3()
shell32.dll!7caa9f33()
shell32.dll!7ca49365()
ntdll.dll!7c94b1be()
ntdll.dll!7c94b1be()
ntdll.dll!7c9261dc()
ntdll.dll!7c926256()
ntdll.dll!7c9261dc()
ntdll.dll!7c926256()
ntdll.dll!7c96e57f()
ntdll.dll!7c926256()
ntdll.dll!7c96f888()
ntdll.dll!7c91ae19()
ntdll.dll!7c91aa2b()
ntdll.dll!7c9101db()
ntdll.dll!7c96f86c()
ntdll.dll!7c94bc5a()
ntdll.dll!7c926256()
ntdll.dll!7c96f86c()
ntdll.dll!7c94bc5a()
ntdll.dll!7c926256()
user32.dll!77d70494()
user32.dll!77d4b373()
user32.dll!77d4b3b4()
user32.dll!77d4b3c4()
ntdll.dll!7c96f86c()
ntdll.dll!7c94bc5a()
ntdll.dll!7c926256()
shell32.dll!7c9f1f1b()
shell32.dll!7c9f1f1b()
shell32.dll!7c9f1d8d()
ntdll.dll!7c91005d()
user32.dll!77d70494()
ntdll.dll!7c926256()
ntdll.dll!7c926045()
ntdll.dll!7c91005d()
ntdll.dll!7c9171c8()
ntdll.dll!7c9101db()
ntdll.dll!7c9170a8()
ntdll.dll!7c916fc7()
ntdll.dll!7c917126()
kernel32.dll!7c80a671()
shell32.dll!7c9f1e01()
user32.dll!77d48709()
user32.dll!77d487eb()
user32.dll!77d70494()
user32.dll!77d4b368()
user32.dll!77d70494()
user32.dll!77d4b3b4()
ntdll.dll!7c90e473()
user32.dll!77d494e3()
user32.dll!77d4de6e()
user32.dll!77d4b7ab()
comctl32.dll!773eaf7b()
user32.dll!77d484bc()
user32.dll!77d4b8b6()
user32.dll!77d4b813()
comctl32.dll!7741ff1d()
comctl32.dll!774202c2()
comctl32.dll!77420cf5()
user32.dll!77d4c034()
ntdll.dll!7c917126()
kernel32.dll!7c80a6ad()
shell32.dll!7c9f1e38()
shell32.dll!7c9f1e15()
user32.dll!77d48709()
user32.dll!77d48bb1()
user32.dll!77d48832()
user32.dll!77d487ff()
user32.dll!77d48709()
user32.dll!77d487eb()
user32.dll!77d4ecd2()
user32.dll!77d70494()
user32.dll!77d489a5()
user32.dll!77d553a0()
user32.dll!77d70494()
user32.dll!77d489e8()
user32.dll!77d6e819()
user32.dll!77d6e956()
mfc71d.dll!COleControl::OnSetText(unsigned int wParam=1983578112,
long lParam=428037072) Line 628 + 0x8 C++
user32.dll!77d568cc()
user32.dll!77d625b3()
comdlg32.dll!763b35de()
comdlg32.dll!763b33e5()
comdlg32.dll!763b33bc()
user32.dll!77d48709()
comdlg32.dll!763c7cc7()
==========================
==========================
========
On May 7, 2:15 am, Joseph M. Newcomer <newco...@flounder.com> wrote:
The code you showed is fundamentally uninteristing. The callback on th=
e stack would be
far more useful, because it would tell us how you got to the failed condi=
tion.
I woud suggest that you post the stack callback.
joe
On Thu, 6 May 2010 06:24:17 -0700 (PDT), shyam gupta <shyamgupta...@gmail=
..com> wrote:
I have created a customzied CfileDialog dialog box by attaching a
child dialog to it using the hook procedure (OFNHookProc (....) ). Now
that child dialog also has a browse button that also uses CfileDialog
to select another file. This is done in repsonse to the WM_COMMAND
message. The creation of the modal dialog box is fine. It does all
the operations for selecting the file but when I select the concerned
file and press the open button then the application crashes and the
control goes to objcore.cpp as shown below
BOOL CObject::IsKindOf(const CRuntimeClass* pClass) const
{
ASSERT(this != NULL);
// it better be in valid memory, at least for CObject size
ASSERT(AfxIsValidAddress(this, sizeof(CObject)));
// simple SI case
CRuntimeClass* pClassThis = GetRuntimeClass();
return pClassThis->IsDerivedFrom(pClass);
}
It is not able to ASSERT(this != NULL); statement and hence the
application crashes.
I am not able to figure out the exact cause of the error.
Thanks,
Shyam
Joseph M. Newcomer [MVP]
email: newco...@flounder.com
Web:http://www.flounder.com
MVP Tips:http://www.flounder.com/mvp_tips.htm