[Mono-list] GAC question

Robert Jordan robertj at gmx.net
Sun Apr 19 17:36:13 EDT 2009


Hi,

the crash you've experienced can only happen if I18N.dll is corrupt
Since this assembly is not vital, removing the GAC directory has
no immediate influence on your app. That's why it seems to work when
the GAC is missing.


fozzie wrote:
> bump.. I'm trying to use a 3rd party dll from within a mono VM embedded in a
> windows application. I restored the GAC directory name and used gacutil to
> register the dll using a strong name. But as soon as i run mono_jit_exec the
> crash occurs. It doesn't occur if the GAC directory is missing.
> 
> The method variable in ves_icall_get_parameter_info() has its name field set
> to "get_PrimaryManager". Looking further into method:
> method.klass.image.name =
> "c:\AAA\git\1.5.8_bullet\mono\lib\mono\gac\I18N\2.0.0.0__0738eb9f132ed756\I18N.dll"
> method.klass.name = "Manager"
> method.klass.name_space = "I18N.Common"
> 
> I'm using gmcs.bat to compile, but i'm just specifying the input and output
> files. Am i getting a version mismatch somewhere?
> 
> 
> 
> fozzie wrote:
>> hi all..
>>
>> I'm getting a crash stack when i run the teste project with the test.cs
>> sample:
>>
>>> 	mono.dll!mono_class_from_mono_type(_MonoType * type=0x00000013)  Line
> 4711 + 0x3 bytes	C
>>  	mono.dll!ves_icall_get_parameter_info(_MonoMethod * method=0x01aee028,
>> _MonoReflectionMethod * member=0x0012f864)  Line 1644 + 0x18 bytes	C
>>  	02203260()	
>>  	mono.dll!mono_get_lmf_addr()  Line 2159 + 0xe bytes	C
>>  	02203249()	
>>  	mono.dll!mono_thread_current()  Line 1302 + 0xe bytes	C
>>  	mono.dll!mono_thread_interruption_checkpoint_request(int
>> bypass_abort_protection=0)  Line 3667	C
>>  	00000001()	
>>  	mono.dll!mono_thread_current()  Line 1302 + 0xe bytes	C
>>
>> The output is as follows:
>>
>> 'teste.exe': Loaded
>> 'C:\cygwin\usr\src\mono\mono\msvc\Win32_Debug_eglib\bin\teste.exe',
>> Symbols loaded.
>> 'teste.exe': Loaded 'C:\Windows\System32\ntdll.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\kernel32.dll'
>> 'teste.exe': Loaded
>> 'C:\cygwin\usr\src\mono\mono\msvc\Win32_Debug_eglib\bin\mono.dll', Symbols
>> loaded.
>> 'teste.exe': Loaded 'C:\Windows\System32\version.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\msvcrt.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\ws2_32.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\advapi32.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\rpcrt4.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\nsi.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\psapi.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\winmm.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\user32.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\gdi32.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\ole32.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\oleaut32.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\oleacc.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\shell32.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\shlwapi.dll'
>> 'teste.exe': Loaded
>> 'C:\Windows\winsxs\x86_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.21022.8_none_96748342450f6aa2\msvcr90d.dll',
>> Symbols loaded.
>> 'teste.exe': Loaded 'C:\Windows\System32\imm32.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\msctf.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\lpk.dll'
>> 'teste.exe': Loaded 'C:\Windows\System32\usp10.dll'
>> 'teste.exe': Loaded
>> 'C:\Windows\winsxs\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.6001.18000_none_5cdbaa5a083979cc\comctl32.dll'
>> 'teste.exe': Loaded 'ImageAtBase0x1d0000', No symbols loaded.
>> 'teste.exe': Unloaded 'ImageAtBase0x1d0000'
>> 'teste.exe': Loaded 'C:\Windows\System32\mscoree.dll'
>> 'teste.exe': Loaded
>> 'C:\cygwin\usr\src\mono\mono\msvc\Win32_Debug_eglib\test.exe', Binary was
>> not built with debug information.
>> 'teste.exe': Loaded
>> 'C:\cygwin\usr\src\mono\mono\msvc\Win32_Debug_eglib\lib\mono\1.0\mscorlib.dll',
>> Binary was not built with debug information.
>> 'teste.exe': Loaded
>> 'C:\cygwin\usr\src\mono\mono\msvc\Win32_Debug_eglib\lib\mono\gac\I18N\1.0.5000.0__0738eb9f132ed756\I18N.dll',
>> Binary was not built with debug information.
>> First-chance exception at 0x1019dea9 (mono.dll) in teste.exe: 0xC0000005:
>> Access violation reading location 0x00000017.
>> Unhandled exception at 0x1019dea9 (mono.dll) in teste.exe: 0xC0000005:
>> Access violation reading location 0x00000017.
>>
>>
>>
>> The weird thing is that the program works when i rename the lib\mono\gac
>> subdirectory to something else before running it. Can someone explain this
>> behavior? An intermingling of windows and mono code, perhaps?
>>
>> thanks!
>>
> 



More information about the Mono-list mailing list