I am writing a managed/unmanaged C++ application which runs on Windows XP and
2003 server without any problem. Under Windows 2003 Server with SP1 the
application won't start. I get a System.ExecutionEngineException in
mscorwks.dll before even my main function starts.
Any help appreciated
Joseph
mscorwks.dll:
_KiRaiseUserExceptionDispatcher@0:
push ebp
mov ebp,esp
sub esp,50h
mov dword ptr [esp+0Ch],eax
mov eax,dword ptr fs:[00000018h]
mov eax,dword ptr [eax+000001A4h]
mov dword ptr [esp],eax
mov dword ptr [esp+4],0
mov dword ptr [esp+8],0
mov dword ptr [esp+10h],0
push esp
call 7C94ED67
mov eax,dword ptr [esp]
mov esp,ebp
pop ebp
ret
lea esp,[esp+00000000h]
lea esp,[esp+00000000h]
_KiFastSystemCall@0:
mov edx,esp
sysenter
_KiFastSystemCallRet@0:
=>ret <== Exception!
lea esp,[esp+00000000h]
lea esp,[esp]
_KiIntSystemCall@0:
lea edx,[esp+8]
int 2Eh
ret
Call Stack:
> ntdll.dll!_KiFastSystemCallRet@0()
ntdll.dll!_NtWaitForSingleObject@12() + 0xc
kernel32.dll!_WaitForSingleObjectEx@12() + 0x88
kernel32.dll!_WaitForSingleObject@8() + 0x12
mscorwks.dll!Debugger::BlockAndReleaseTSLIfNecessary() + 0x3e
mscorwks.dll!Debugger::SendException() + 0x196
mscorwks.dll!Debugger::LastChanceManagedException() + 0xb6
mscorwks.dll!FailFast() + 0xb0
mscorwks.dll!ComPlusCoopFrameSEH() + 0x79239f41
Threads:
> 3332 <No Name> Normal 0
'hog.exe': Loaded 'C:\hog\hog.exe', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\ntdll.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\mscoree.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\kernel32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\advapi32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\rpcrt4.dll', Symbols loaded.
'hog.exe': Loaded 'C:\hog\MFC71.dll', PDB format is obsolete.
'hog.exe': Loaded 'C:\WINDOWS\system32\msvcr71.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\gdi32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\user32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\shlwapi.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\msvcrt.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\oleaut32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\ole32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\msvcp71.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\ws2_32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\ws2help.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\odbc32.dll', Symbols loaded.
'hog.exe': Loaded
'C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_5.82.3790.1830_x-ww_1B6F474A\comctl32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\comdlg32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\shell32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\netapi32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\hog\LicenceReaderDLL.dll', Exports loaded.
'hog.exe': Loaded
'C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.1830_x-ww_7AE38CCF\comctl32.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\system32\odbcint.dll', No symbols loaded.
'hog.exe': Loaded
'C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorwks.dll', Symbols loaded.
'hog.exe': Loaded 'C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\fusion.dll',
Symbols loaded.
'hog.exe': Loaded
'C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorlib.dll', Symbols loaded.
'hog.exe': Loaded
'C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\diasymreader.dll', Symbols
loaded.
'DefaultDomain': Loaded
'c:\windows\microsoft.net\framework\v1.1.4322\mscorlib.dll', No symbols
loaded.
'hog.exe': Loaded
'C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorsn.dll', Symbols loaded.
'hog.exe': Loaded
'C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorjit.dll', Symbols loaded.
'hog': Loaded 'c:\hog\hog.exe', Symbols loaded.
'hog.exe': Loaded 'C:\hog\Logger.dll', No symbols loaded.
'hog.exe': Loaded 'c:\hog\logger.dll', No symbols loaded.
First-chance exception at 0x791f260e (mscorwks.dll) in hog.exe: 0xC0000005:
Access violation reading location 0x00000f34.
An unhandled exception of type 'System.ExecutionEngineException' occurred in
Unknown Module.
--From WinDbg:
Microsoft (R) Windows Debugger Version 6.5.0003.7
Copyright (c) Microsoft Corporation. All rights reserved.
CommandLine: hog.exe console
Symbol search path is:
SRV*\\Arthur\c$\hog\devel*http://msdl.microsoft.com/download/symbols
Executable search path is:
ModLoad: 00400000 006ba000 image00400000
ModLoad: 7c920000 7c9e6000 ntdll.dll
ModLoad: 79170000 79198000 C:\WINDOWS\system32\mscoree.dll
ModLoad: 7c800000 7c915000 C:\WINDOWS\system32\KERNEL32.dll
ModLoad: 77f30000 77fdc000 C:\WINDOWS\system32\ADVAPI32.dll
ModLoad: 77c20000 77cbf000 C:\WINDOWS\system32\RPCRT4.dll
ModLoad: 7c140000 7c243000 C:\hog\MFC71.DLL
ModLoad: 7c340000 7c396000 C:\WINDOWS\system32\MSVCR71.dll
ModLoad: 77bd0000 77c18000 C:\WINDOWS\system32\GDI32.dll
ModLoad: 77e20000 77eb3000 C:\WINDOWS\system32\USER32.dll
ModLoad: 77ec0000 77f12000 C:\WINDOWS\system32\SHLWAPI.dll
ModLoad: 77b70000 77bca000 C:\WINDOWS\system32\msvcrt.dll
ModLoad: 7c3a0000 7c41b000 C:\WINDOWS\system32\MSVCP71.dll
ModLoad: 71a10000 71a27000 C:\WINDOWS\system32\WS2_32.dll
ModLoad: 71a00000 71a08000 C:\WINDOWS\system32\WS2HELP.dll
ModLoad: 4c000000 4c03d000 C:\WINDOWS\system32\ODBC32.dll
ModLoad: 77d70000 77e07000
C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_5.82.3790.1830_x-ww_1B6F474A\COMCTL32.dll
ModLoad: 761a0000 761eb000 C:\WINDOWS\system32\comdlg32.dll
ModLoad: 7c9f0000 7d1fd000 C:\WINDOWS\system32\SHELL32.dll
ModLoad: 71a50000 71aa8000 C:\WINDOWS\system32\NETAPI32.dll
ModLoad: 10000000 10033000 C:\hog\LicenceReaderDLL.dll
ModLoad: 774f0000 77624000 C:\WINDOWS\system32\ole32.dll
ModLoad: 77340000 77443000
C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.1830_x-ww_7AE38CCF\comctl32.dll
ModLoad: 00d50000 00d69000 C:\WINDOWS\system32\odbcint.dll
ModLoad: 791b0000 79417000
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorwks.dll
ModLoad: 79040000 79085000
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\fusion.dll
ModLoad: 79780000 7998c000
c:\windows\microsoft.net\framework\v1.1.4322\mscorlib.dll
ModLoad: 79510000 79523000
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorsn.dll
ModLoad: 79430000 7947d000
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\MSCORJIT.DLL
ModLoad: 11000000 11012000 c:\hog\logger.dll
(60c.c4c): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
eax=00000000 ebx=0012f498 ecx=00000000 edx=00000000 esi=00000000 edi=0012f4a8
eip=791f260e esp=0012f478 ebp=0012f478 iopl=0 nv up ei pl zr na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010246
mscorwks!HandleFetchHandleTable+0xb:
791f260e 8b80340f0000 mov eax,[eax+0xf34] ds:0023:00000f34=????????
0:000> .relead -f
^ Syntax error in '.relead -f'
0:000> .reload -f
Reloading current modules
.*** WARNING: Unable to verify checksum for image00400000
*** ERROR: Module load completed but symbols could not be loaded for
image00400000
.*** ERROR: Module load completed but symbols could not be loaded for
C:\WINDOWS\system32\odbcint.dll
.*** WARNING: Unable to verify checksum for C:\hog\LicenceReaderDLL.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for
C:\hog\LicenceReaderDLL.dll -
.*** WARNING: Unable to verify checksum for c:\hog\logger.dll
..........................
0:000> r
eax=00000000 ebx=0012f498 ecx=00000000 edx=00000000 esi=00000000 edi=0012f4a8
eip=791f260e esp=0012f478 ebp=0012f478 iopl=0 nv up ei pl zr na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010246
mscorwks!HandleFetchHandleTable+0xb:
791f260e 8b80340f0000 mov eax,[eax+0xf34] ds:0023:00000f34=????????
0:000> kb
ChildEBP RetAddr Args to Child
0012f478 792a40cd 00000000 00000000 0124769c
mscorwks!HandleFetchHandleTable+0xb
0012f484 0124769c 001541f8 0061af4c 0000000a
mscorwks!GCHandleInternalCheckDomain+0x7
WARNING: Frame IP not in any known module. Following frames may be wrong.
0012f4ac 012475b8 0061af4c 0000000a 01414870 0x124769c
0012f500 01247007 001541f8 0061ae08 004bab28 0x12475b8
0012f618 7c341cd6 0012f694 004a0ace 005b6000 0x1247007
0012f620 004a0ace 005b6000 005b6070 0012f9b0 MSVCR71!_initterm+0xf
0012f69c 7923c069 0012f7b4 7923e0bc 0012f6f0 image00400000+0xa0ace
0012f6a4 7923e0bc 0012f6f0 00000000 0012f6c8 mscorwks!CallDescrWorker+0x30
0012f7b4 7923e2a7 002cf6d3 00166a90 0012f7e0
mscorwks!MethodDesc::CallDescr+0x1b8
0012f870 7923e315 012cf6d3 00166a90 005aaee1
mscorwks!MethodDesc::CallDescr+0x4f
0012f898 79215cc9 0012f928 00000000 001541f8 mscorwks!MethodDesc::Call+0x97
0012f950 7923a8fa 012cf6d8 00000001 00000000
mscorwks!ClassLoader::CanAccess+0x207
0012fa64 7923a56f 00166a90 00000000 79041394
mscorwks!ClassLoader::ExecuteMainMethod+0x49d
0012fa7c 7923a4ba 00000000 0012fd70 00000000
mscorwks!Assembly::ExecuteMainMethod+0x21
0012fd60 791c6afa 00000000 00000001 0012ffe0
mscorwks!SystemDomain::ExecuteMainMethod+0x421
0012ffa0 791c69f2 8013141b 00000000 00000000 mscorwks!ExecuteEXE+0x1ce
0012ffb0 7917dce7 00000000 791b0000 0012fff0 mscorwks!_CorExeMain+0x59
0012ffc0 7c8123cd 00000000 00000000 7ffd4000 mscoree!_CorExeMain+0x30
0012fff0 00000000 7917dcbb 00000000 78746341 KERNEL32!BaseProcessStart+0x23
---
Net Framework 1.1
The application uses MFC and a few selfmade c# DLLs
Rick Strahl [MVP] - 20 Sep 2005 09:24 GMT
'hog.exe': Loaded 'C:\hog\Logger.dll', No symbols loaded.
'hog.exe': Loaded 'c:\hog\logger.dll', No symbols loaded.
Any idea why this is getting loaded twice here? I'm going to guess that's
the problem. Could it be that logger.dll can't run on this version of the
CLR - ie. is it a versioned V1.0 dll? It shouldn't be a problem, but you
never know.
+++ Rick ---

Signature
Rick Strahl
West Wind Technologies
www.west-wind.com
www.west-wind.com/weblog
>I am writing a managed/unmanaged C++ application which runs on Windows XP
>and
[quoted text clipped - 233 lines]
> Net Framework 1.1
> The application uses MFC and a few selfmade c# DLLs
Joseph Schwarz - 20 Sep 2005 15:16 GMT
Thanks for your reply.
All dlls and the exe are based on Framework V 1.1. I am not sure, if
logger.dll is actually loaded twice. VStudio says it's loaded twice, Windbg
says it is only loaded once. But then VStudio says even hog.exe is loaded
twice... Maybe this has to do with the loading of symbols?
Any more ideas?
Joseph
> 'hog.exe': Loaded 'C:\hog\Logger.dll', No symbols loaded.
> 'hog.exe': Loaded 'c:\hog\logger.dll', No symbols loaded.
[quoted text clipped - 243 lines]
> > Net Framework 1.1
> > The application uses MFC and a few selfmade c# DLLs
TT (Tom Tempelaere) - 30 Sep 2005 10:10 GMT
Hi Joseph,
I recently had an EngineExecutionException in my program. I solved this by
installing SP1 of .NET framework 1.1. Perhaps you should check whether you
have this SP of the framework installed (you can see this in Dev.Studio, menu
help). If you don't have it I suggest you test again with SP1 of .NET
framework 1.1.
Download at (watch out for wrapping)
http://www.microsoft.com/downloads/details.aspx?FamilyID=a8f5654f-088e-40b2-bbdb
-a83353618b38&displaylang=en
Tell us if this fixes your problem.
Kind regards,

Signature
Tom Tempelaere.
> Thanks for your reply.
> All dlls and the exe are based on Framework V 1.1. I am not sure, if
[quoted text clipped - 253 lines]
> > > Net Framework 1.1
> > > The application uses MFC and a few selfmade c# DLLs