Hi,
I created new mfc project, mfc1, and added following code. When I
execute this code, I found unhandled exception when I attach
executable mfc1.exe to ApplicationVarifier. Log by ApplicationVerifier
is given below.
try
{
CDatabase db;
db.OpenEx("DSN=EDIKIT_LOGS;UID=abilogs;PWD=abilogs");
ASSERT(db.IsOpen()==true);
db.Close();
}
catch(CException* e)
{
ASSERT(false);
}
catch(...)
{
ASSERT(false);
}
Application Verifier Log:
<avrf:logfile xmlns:avrf="Application Verifier">
- <avrf:logSession TimeStarted="2007-08-03 : 21:02:46" PID="1016"
Version="2">
- <avrf:logEntry Time="2007-08-03 : 21:02:51" LayerName="Locks"
StopCode="0x202" Severity="Error">
<avrf:message>Freeing heap block containing an active critical
section.</avrf:message>
<avrf:parameter1>2733d38 - Critical section address.</
avrf:parameter1>
<avrf:parameter2>0 - Critical section initialization stack trace.</
avrf:parameter2>
<avrf:parameter3>2733bf0 - Heap block address.</avrf:parameter3>
<avrf:parameter4>410 - Heap block size.</avrf:parameter4>
- <avrf:stackTrace>
<avrf:trace>vfbasics!VfBasicsStopMessage+8e</avrf:trace>
<avrf:trace>vfbasics!AVrfpFreeMemLockChecks+109</avrf:trace>
<avrf:trace>vfbasics!AVrfpFreeMemNotify+39</avrf:trace>
<avrf:trace>vfbasics!AVrfpRtlFreeHeap+148</avrf:trace>
<avrf:trace>msvcrt!free+c3</avrf:trace>
<avrf:trace>vfbasics!AVrfp_free+1f</avrf:trace>
<avrf:trace>SQORA32!+1000a609</avrf:trace>
<avrf:trace>SQORA32!+1000a27f</avrf:trace>
<avrf:trace>vrfcore!VfCoreStandardDllEntryPointRoutine+127</
avrf:trace>
<avrf:trace>vfbasics!AVrfpStandardDllEntryPointRoutine+10e</
avrf:trace>
<avrf:trace>ntdll!LdrInitializeThunk+29</avrf:trace>
<avrf:trace>ntdll!LdrDisableThreadCalloutsForDll+949</avrf:trace>
<avrf:trace>vfbasics!AVrfpLdrUnloadDll+73</avrf:trace>
<avrf:trace>kernel32!FreeLibrary+19</avrf:trace>
<avrf:trace>ODBC32!SQLErrorA+1b4</avrf:trace>
<avrf:trace>ODBC32!SQLFreeEnv+1d</avrf:trace>
<avrf:trace>MFC71D!CDatabase::Free+107</avrf:trace>
<avrf:trace>MFC71D!CDatabase::~CDatabase+47</avrf:trace>
<avrf:trace>mfc1!Cmfc1App::InitInstance+1ab</avrf:trace>
<avrf:trace>MFC71D!AfxWinMain+77</avrf:trace>
<avrf:trace>mfc1!WinMain+18</avrf:trace>
<avrf:trace>mfc1!WinMainCRTStartup+1f2</avrf:trace>
<avrf:trace>kernel32!RegisterWaitForInputIdle+49</avrf:trace>
</avrf:stackTrace>
</avrf:logEntry>
- <avrf:logEntry Time="2007-08-03 : 21:05:47" LayerName="TLS"
StopCode="0x352" Severity="Error">
<avrf:message>Using an invalid TLS index.</avrf:message>
<avrf:parameter1>1cabba - TLS index</avrf:parameter1>
<avrf:parameter2>0 - Not Used.</avrf:parameter2>
<avrf:parameter3>0 - Not Used.</avrf:parameter3>
<avrf:parameter4>0 - Not Used.</avrf:parameter4>
- <avrf:stackTrace>
<avrf:trace>vfbasics!CheckTlsIndex+ce</avrf:trace>
<avrf:trace>vfbasics!AVrfpTlsSetValue+47</avrf:trace>
<avrf:trace>MFC42!Ordinal2427+90</avrf:trace>
<avrf:trace>MFC42!Ordinal806+28</avrf:trace>
<avrf:trace>vrfcore!VfCoreStandardDllEntryPointRoutine+127</
avrf:trace>
<avrf:trace>vfbasics!AVrfpStandardDllEntryPointRoutine+10e</
avrf:trace>
<avrf:trace>ntdll!LdrInitializeThunk+29</avrf:trace>
<avrf:trace>ntdll!LdrDisableThreadCalloutsForDll+949</avrf:trace>
<avrf:trace>vfbasics!AVrfpLdrUnloadDll+73</avrf:trace>
<avrf:trace>kernel32!FreeLibrary+19</avrf:trace>
<avrf:trace>ODBC32!SQLErrorA+1b4</avrf:trace>
<avrf:trace>ODBC32!SQLFreeEnv+1d</avrf:trace>
<avrf:trace>MFC71D!CDatabase::Free+107</avrf:trace>
<avrf:trace>MFC71D!CDatabase::~CDatabase+47</avrf:trace>
<avrf:trace>mfc1!Cmfc1App::InitInstance+1ab</avrf:trace>
<avrf:trace>MFC71D!AfxWinMain+77</avrf:trace>
<avrf:trace>mfc1!WinMain+18</avrf:trace>
<avrf:trace>mfc1!WinMainCRTStartup+1f2</avrf:trace>
<avrf:trace>kernel32!RegisterWaitForInputIdle+49</avrf:trace>
</avrf:stackTrace>
</avrf:logEntry>
</avrf:logSession>
</avrf:logfile>
Can anyone reply me what could be reason.
Thanks.
Vijay Singh
EDISPHERE Software
Received on Fri Aug 03 2007 - 10:53:29 CDT