Print Page | Close Window

Crash (access violation) on application close

Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Report Control
Forum Description: Topics Related to Codejock Report Control
URL: http://forum.codejock.com/forum_posts.asp?TID=7381
Printed Date: 22 November 2024 at 8:44am
Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com


Topic: Crash (access violation) on application close
Posted By: SvenC
Subject: Crash (access violation) on application close
Date Posted: 14 June 2007 at 8:45am
Hi,
 
when I debug an application where I use the report control from a regular dll (I defined XT_INIT_BY_REGULAR_DLL and call XTFuncInitDLL) built with VS2005 SP1 and toolkit version 11.1.0 I get an access violation when the app is closing.
 
It happens in the destructor of CXTPPaintManager. It seems that an explicit XTFuncExitDLL call might be useful to explicitly uninitialize the toolkit.
 
Any ideas? Here is the call stack:
 
> mfc80d.dll!AfxImageList_Destroy(_IMAGELIST * himl=0x08047508)  Line 40 + 0x12 bytes C++
  mfc80d.dll!CImageList::DeleteImageList()  Line 1333 C++
  mfc80d.dll!CImageList::~CImageList()  Line 1309 + 0xb bytes C++
  ToolkitPro1110vc80DR.dll!XTPPaintThemes::CXTPOffice2003Theme::~CXTPOffice2003Theme()  Line 66 + 0xe bytes C++
  ToolkitPro1110vc80DR.dll!XTPPaintThemes::CXTPOffice2003Theme::`vector deleting destructor'()  + 0x6c bytes C++
  mfc80d.dll!CCmdTarget::OnFinalRelease()  Line 579 + 0x21 bytes C++
  mfc80d.dll!CCmdTarget::InternalRelease()  Line 175 C++
  ToolkitPro1110vc80DR.dll!CXTPPaintManager::Done()  Line 276 C++
  ToolkitPro1110vc80DR.dll!CXTPPaintManager::CPaintManagerDestructor::~CPaintManagerDestructor()  Line 65 C++
  ToolkitPro1110vc80DR.dll!`dynamic atexit destructor for '__xtpPaintManagerDestructor''()  + 0x28 bytes C++
  ToolkitPro1110vc80DR.dll!_CRT_INIT(void * hDllHandle=0x03f50000, unsigned long dwReason=0, void * lpreserved=0x00000001)  Line 420 C
  ToolkitPro1110vc80DR.dll!__DllMainCRTStartup(void * hDllHandle=0x03f50000, unsigned long dwReason=0, void * lpreserved=0x00000001)  Line 512 + 0x11 bytes C
  ToolkitPro1110vc80DR.dll!_DllMainCRTStartup(void * hDllHandle=0x03f50000, unsigned long dwReason=0, void * lpreserved=0x00000001)  Line 462 + 0x11 bytes C
   mailto:ntdll.dll!_LdrpCallInitRoutine@16 - ntdll.dll!_LdrpCallInitRoutine@16 ()  + 0x14 bytes 
   mailto:ntdll.dll!_LdrShutdownProcess@0 - ntdll.dll!_LdrShutdownProcess@0 ()  - 0x51 bytes 
  kernel32.dll!77e668a3()  
 
 
--
SvenC



Replies:
Posted By: Oleg
Date Posted: 15 June 2007 at 5:04am
Hello,
 
try call
 
CXTPPaintManager::Done() in ExitInstance of your CApp.


-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS


Posted By: SvenC
Date Posted: 18 June 2007 at 3:20am
Hi oleg,
 
I added the Done call and the access violation is gont.
 
Thanks a lot,
Sven



Print Page | Close Window

Forum Software by Web Wiz Forums® version 12.04 - http://www.webwizforums.com
Copyright ©2001-2021 Web Wiz Ltd. - https://www.webwiz.net