thanks for your input ventilator, Joozey and Richi007 !
These are some good ideas !
This wrapper may be on the download page, but I'm still critical over certain aspects of it smirk
one is of course the var handling, which, as Ventilator pointed out is quite clumsy
another one, which definately poses a problem is the handling of strings which are sent to the engine ... I'll explain that issue in a short example here
-if I want that the engine is able to access a certain variable which is declared in c#, I have to create a variable on the heap(I think ^^). This data on the heap will be deleted (and thus freeing the space it occupied) when the var object is collected by the garbage collector -> now that's fine !
-but if I want to send a string to the engine, that's something different.. I currently allocate space for the string on the heap and then pass the address to the engine (just like I did with variables), but as I'm having here an inconsistency (in fact if I would want to use the current concept of the wrapper consistently, only STRING objects should be able to be passed) i don't create String objects for strings... That's why the memory allocated for strings, won't be freed EVER !
I will need to find out which functions actually copy strings into the engine data space or only use them for a short time, and functions that access the given pointer over an amount of time. Kind of like functions that only pass a variable and functions that ACCESS a variable (like pan_setneedle).

To actually improve the wrapper, a complete rewrite is necessary without a doubt.
You mentioned that you would be able to finish your own .net wrapper in a few days, in my opinion you should seriously think about completing it.
It wouldn't be wise to just don't create the wrapper because someone else's is on the download page with another wrapper, that is inferior to one's wrapper ! I will gladly step aside, as soon as you post a wrapper that is superior to mine (which yours should easily be if you implement it the way you propose it and already showed in this thread - although I'm not that sure about the speed of lambda expressions and the big array that you use to simulate pointers ^^).
I just wouldn't like to see that a better wrapper is hold back, because of the fact that another wrapper is on the download page ! My aim is not to create a wrapper, but to be able to use the engine in c#, which is why I would highly encourage you to compleate your wrapper, if you think that it's better !
Nonetheless I will most likely start to work on a rewrite of the wrapper in the next weeks, the actual rewrite may take some time.
My post isn't intended to put pressure onto you to finish your wrapper, by saying "I won't continue my wrapper - create a better one", I just would like to say that if you want to create a wrapper yourself, which you think is superior to mine, don't let yourself be hold back, by something like a spot on the download page (which will switch in a second without a doubt if your wrapper is better ^^), or a feeling that you wouldn't want to take someone else's territory, or even a feeling that you wouldn't want to finish and release your wrapper, while I'm still working on mine - out of "kindness" !
As you can see I'm a strong supporter of a free market ^^


get the C# wrapper:
for A7.85.4 and A8.30.4, Version 2.3.9
at http://acknexwrapper2.matthias-auer.net/ or visit the thread