[Mono-devel-list] GetReferencedAssemblies

Kamil Skalski nazgul at nemerle.org
Thu Dec 2 16:15:34 EST 2004


Hello!

We have encountered some differences in behaviour of Assemly's 
GetReferencedAssemblies method between mono and MS.NET. At first it seemed 
the bug in .NET - it was not able to load assemblies from directory, when 
they were not in ApplicationBase. The details are described
http://lab.msdn.microsoft.com/productfeedback/viewfeedback.aspx?feedbackid=9e13bf80-1b3a-4ad0-b9ff-a372bf960539

Altought, the response from MS convinced me a little bit, that our expectation 
about recursive loading of assemblies does not make sense always.

Imagine someting along lines:
compiler loads a.dll from foo/a.dll
foo/a.dll  depends on b.dll
now, on .NET b.dll will be loaded only if it is in the GAC, or somewhere in
current path (ApplicationBase). On mono it seems, that
GetReferencedAssemblies actually lookup where b.dll could be (beginning from
its own directory), which MAY or MAY NOT be the good idea.

I agree, that current design in mono is quite natural and JUST WORKS, but
1) how is the lookup order and paths to lookup in defined in this case? Do 
mono really phisically load b.dll when calling GetReferencedAssemblies for 
a.dll?
2) probably the behaviur should be the same on mono and .NET

-- 
Kamil Skalski
http://nemerle.org developer



More information about the Mono-devel-list mailing list