[Contents] [TitleIndex] [WordIndex

Weekly report for 18 June 2011 on Project "dotNET Interaction Mechanism for Scilab + Environment Abstraction Layer"

This was my last lazy week :), because I had defense of my master thesis in University. I have defended it with a best grade and now I'm done with University.

This week I again was busy with introducing example of another way of managed/unmanaged interop, because COM requires admin rights to register objects and is complicated enough. And sometimes slow.

That's why I introduced another way of reaching managed code from unmanaged - a "flat" (win32) API. In this approach, methods from a library, using managed C++ are exposed for unmanaged code. This has removed one intermediate C++ level, which was using COM-interfaces. I also decided to use Managed C++ instead of C#.

This method has much less machine instructions overhead, so it is faster than COM.

Conversions System::String <-> char* are done with:

String Marshal::PtrToStringAnsi(char*) and IntPtr charMarshal::StringToHGlobalAnsi(String) methods

I think, this is what we need for Windows managed/unmanaged interop. For Mono we will use Mono embedding API.

For more on used itnerop method, see:

Next week

Still the same - as last, abstraction from Java in JIMS.


2022-09-08 09:26