the test I put at code was testing Type.GetType ("Mono.Runtime") if it
return null that's not running on mono.Fernando Oliveira http://oliveira.eti.br http://twitter.com/oliveira_lands 2013/10/16 Sean McNamara <[email protected]> > On Wed, Oct 16, 2013 at 12:35 PM, Justin Clark-Casey > <[email protected]> wrote: > > A small point - can this be in the directory bin/lib/.NET/ rather than > > Windows/? This makes it clear that it's a library directory and only > > required under .NET (since you can theoretically run Mono in Windows, > though > > admittedly probably pretty much nobody does this). > > And now that you brought that up, the obvious follow-up question is, > can we reliably detect whether OpenSim is being run under Mono or the > .NET Framework? As you pointed out, Mono runs on Windows, and it is > possible that someone running OpenSim under Mono on Windows would > *pass* the Win32 platform check and get our shipped Mono.Security.dll > loaded, which would conflict with the Mono.Security.dll shipped with > the user's Mono version and perhaps cause exceptions. > > So the condition for loading the bin/lib/.NET/*.dll would be: on Win32 > AND running the Microsoft .NET Framework (or, by implication, NOT > Mono) > > > > > > > On 16/10/13 12:49, Fernando Francisco de Oliveira wrote: > >> > >> Yesterday I tested my code, and already patched it to load the > >> Mono.Security.dll from bin/windows folder only when the > >> program was running on windows. > >> > >> It was put at first attempt to load it from PGSQL module. and it worked > >> fine at windows. I didn't tested on linux yet. > >> and still need to test also on Robust. > >> > >> The implementation was exacly what Sean described, an event that is > fired > >> when any assembly isnt found at default > >> directories, then I verify if it is running Mono environment and only > use > >> Assembly.Load when it's not. The librarie is > >> stored at bin/windows folder, so the program don't load it unless for > this > >> code. > >> > >> > >> > >> > >> Fernando Oliveira > >> http://oliveira.eti.br > >> > >> http://twitter.com/oliveira_lands > >> > >> > >> > >> > >> 2013/10/16 Latif Khalifa <[email protected] > >> <mailto:[email protected]>> > >> > >> > >> We used to ship Mono.Security.dll with libopenmetaverse. It caused > >> all sorts of trouble for Linux users, because mono on startup will > >> load the one from cwd preferably. So shipping it in bin/windows that > >> mono will not know about is the only way to go. > >> > >> I wish we thought of this approach back then ;) > >> > >> On Wed, Oct 16, 2013 at 5:08 AM, Fernando Francisco de Oliveira > >> <[email protected] <mailto:[email protected]>> wrote: > >> > Hello > >> > > >> > I was investigating the bug > >> > (http://opensimulator.org/mantis/view.php?id=6803) found that > >> > Mono.Security.dll which is packaged with Npgsql.dll library is > >> needed on > >> > Windows, but can't be distributed on Linux, because mono already > >> have it and > >> > gives conflicts error. > >> > > >> > I would like to discuss about distributing the Mono.Security.dll > on > >> a folder > >> > above bin like "bin/windows" folder, which could contains the > >> libraries that > >> > only is needed on windows. > >> > > >> > I did a change on PGSQL project to load dynamicaly Mono.Security > >> only if > >> > it's running on Windows, and from that folder. > >> > If it running on Mono, it load it from GAC (if available) and > don't > >> load the > >> > windows dll. > >> > > >> > http://pastebin.com/WdzfmbSr > >> > > >> > Let's talk about it ? > >> > > >> > Fernando Oliveira > >> > http://oliveira.eti.br > >> > > >> > > >> > > >> > _______________________________________________ > >> > Opensim-dev mailing list > >> > [email protected] <mailto: > [email protected]> > >> > >> > https://lists.berlios.de/mailman/listinfo/opensim-dev > >> _______________________________________________ > >> Opensim-dev mailing list > >> [email protected] <mailto:[email protected]> > >> > >> https://lists.berlios.de/mailman/listinfo/opensim-dev > >> > >> > >> > >> > >> _______________________________________________ > >> Opensim-dev mailing list > >> [email protected] > >> https://lists.berlios.de/mailman/listinfo/opensim-dev > >> > > > > > > -- > > Justin Clark-Casey (justincc) > > OSVW Consulting > > http://justincc.org > > http://twitter.com/justincc > > > > _______________________________________________ > > Opensim-dev mailing list > > [email protected] > > https://lists.berlios.de/mailman/listinfo/opensim-dev > _______________________________________________ > Opensim-dev mailing list > [email protected] > https://lists.berlios.de/mailman/listinfo/opensim-dev >
_______________________________________________ Opensim-dev mailing list [email protected] https://lists.berlios.de/mailman/listinfo/opensim-dev
