[PATCH] Re: [Mono-list] windows code pages?
Gonzalo Paniagua Javier
gonzalo@ximian.com
Thu, 06 May 2004 11:59:40 +0200
El jue, 06-05-2004 a las 08:14, Jaroslaw Kowalski escribió:
> I'm not a assembly resolver expert but consider this scenario
>
> 1. GAC has a full set of 1.0 and 2.0 assemblies loaded
> 2. Application running on 1.0 mscorlib loads I18N.dll, version 1.0 using:
>
> Assembly.Load("I18N, Version=1.0.5000.0, Culture=neutral,
> PublicKeyToken=0738eb9f132ed756");
>
> 3. I18N.dll calls Assembly.LoadWithPartialName("I18N.West.dll"). It can load
> either:
>
> - I18N.West.dll from the application directory or private probe path -
> signed using ANY strong name or unsigned
> - I18N.West.dll from v1.0
> - I18N.West.dll from v2.0
> - any other I18N.West.dll found in the GAC, even if it's signed by
> somebody else (some malicious user ?)
>
> Is this what we need ?
>
> <quote from="MSDN: Assembly.LoadWithPartialName Method(String)">
> Remarks
> Applications that load assemblies with this method will be impacted by
> upgrades of those assemblies. Therefore, do not use this method unless
> necessary, and even then, consider redesigning the application to use Load
> or LoadFrom.
>
> </quote>
Ok, then the solution is to use #if NET_1_0, NET_1_1, NET_2_0 as it is
done in other places and Load the full assembly name.
-Gonzalo