Print Page | Close Window

ACCVIO in IsModuleImported

Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Skin Framework
Forum Description: Topics Related to Codejock Skin Framework
URL: http://forum.codejock.com/forum_posts.asp?TID=24032
Printed Date: 28 April 2024 at 2:02am
Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com


Topic: ACCVIO in IsModuleImported
Posted By: mgampi
Subject: ACCVIO in IsModuleImported
Date Posted: 04 August 2020 at 6:30am
Hi;

Using toolkit 19.1 in Visual C++ 2017:
When shutting down our application the toolkit source leads to an ACCVIO in module XTPSkinmanager.cpp, function IsModuleImported:

Call Stack:
ToolkitPro1910vc150U!IsModuleImported+0xf
ToolkitPro1910vc150U!CXTPSkinManager::IsPersistentModule+0xc6
ToolkitPro1910vc150U!CXTPSkinManagerModuleList::CModuleEnumerator::LockReferences+0xd3
ToolkitPro1910vc150U!CXTPSkinManagerModuleList::CModuleEnumerator::PreLoad+0x1a
ToolkitPro1910vc150U!CXTPSkinManagerApiHook::UnhookAllFunctions+0x67
ToolkitPro1910vc150U!CXTPSkinManagerApiHook::~CXTPSkinManagerApiHook+0x39
ToolkitPro1910vc150U!CXTPSkinManagerApiHook::`vector deleting destructor'+0x78
ToolkitPro1910vc150U!CXTPSkinManager::~CXTPSkinManager+0x105
ToolkitPro1910vc150U!CXTPSingletonPointer::Destroy+0x9b
ToolkitPro1910vc150U!CXTPSingletonPointer::OnApplicationShutdown+0x5
ToolkitPro1910vc150U!CXTPObservable<CXTPApplication,IXTPApplicationEvents>::NotifyReversed+0x3d
ToolkitPro1910vc150U!CXTPApplication::Shutdown+0x24
ToolkitPro1910vc150U!XTPShutdown+0x53
ToolkitPro1910vc150U!DllMain+0x60
ToolkitPro1910vc150U!dllmain_dispatch+0x70
ToolkitPro1910vc150U!_DllMainCRTStartup+0x1c
ntdll!LdrxCallInitRoutine+0x16
ntdll!LdrpCallInitRoutine+0x43
ntdll!LdrShutdownProcess+0x101
ntdll!RtlExitUserProcess+0x81
kernel32!ExitProcessImplementation+0x12
ucrtbase!swprintf+0x180
ucrtbase!swprintf+0x106
ucrtbase!exit+0x11
XRReportSrvc!__scrt_common_main_seh+0x179
kernel32!BaseThreadInitThunk+0xe
ntdll!__RtlUserThreadStart+0x20
ntdll!_RtlUserThreadStart+0x1b

hSourceModule is NULL and accessing pDosHdr leads to the crash:

static BOOL IsModuleImported(HMODULE hSourceModule, HMODULE hModule,
                             CArray<LPCSTR, LPCSTR>& arCheckedNames)
{
    BOOL bImported = FALSE;

    PBYTE pModuleStart = reinterpret_cast<PBYTE>(hSourceModule);

    PIMAGE_DOS_HEADER pDosHdr = reinterpret_cast<PIMAGE_DOS_HEADER>(pModuleStart);
    ASSERT(::AfxIsValidAddress(pDosHdr, sizeof(*pDosHdr), FALSE));

    if (pDosHdr->e_magic == IMAGE_DOS_SIGNATURE)  <-- Crash happens here!
    {

Here are the locals:

hSourceModule    0x00000000 struct HINSTANCE__ *
hModule    0x77420000 struct HINSTANCE__ *
arCheckedNames    0x0018f920 class CArray<char const *,char const *> *
bImported    0n0



Please fix this asap!


-------------
Martin

Product: Xtreme Toolkit v 19.0.0, new Projects v 19.1.0
Platform: Windows 10 v 1909 (64bit)
Language: VC++ 2017



Replies:
Posted By: mgampi
Date Posted: 01 September 2020 at 1:03pm
Still no response?

We get this error in our application on any OS on shutdown. It's always reproducable.


-------------
Martin

Product: Xtreme Toolkit v 19.0.0, new Projects v 19.1.0
Platform: Windows 10 v 1909 (64bit)
Language: VC++ 2017



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