Hi,
From: "Hin-Tak Leung" htl10@users.sourceforge.net I can't comment on anything else, but after trying to get a .NET WinForms application (mentioned in some of the bugs I filed) for a few months under the 3 options of native linux mono, wine+.NET and wine+mono, I can say that win32 mono uses P/Invoke *differently* from how .NET2 does it, and the missing APIs required to get an application to work with the wine + win32 mono and wine +MS.NET combo is different. So some part of the applications runs better with wine + win32 mono and some better with wine + MS.NET ... win32 mono and MS.NET just seems to have different native code dependencies.
The only major difference I know is that Mono uses UTF-8 instead of ACP for ANSI functions. If you know some serious issues please feel free to file bug report(s) at Mono's Bugzilla.
From: "Dan Kegel" dank@kegel.com
http://lists.ximian.com/pipermail/mono-devel-list/2008-April/027491.html
That's interesting info, thanks.
At the moment you seem to be taking the lead on these issues. Please let us know how it goes.
I have made some progess and now I am able to call unmanaged methods from managed methods and also implemented some mscoree.dll hacks that make possible to use the NT loader (LoadLibrary). Unfortunately the loader uses mscoree.dll located in system32 anyway so I had to modify it's export address table in memory. And I also had to implement base relocation and import adress table processing for EXE modules because that is not done by NT. Processes could only be created from managed EXE files with some more intrusive mscoree.dll hacks (mscoree.dll file or registy modifications).
Kornél