[Mono-list] Embedding Mono
Jonathan Pryor
jonpryor at vt.edu
Sat Feb 3 08:48:59 EST 2007
On Fri, 2007-02-02 at 09:53 -0800, Jeremy wrote:
> I've gotten the example to work, however the example shows the case of
> a returning mono string. I'm getting crashes in Mono when I attempt to
> define additional functions for the assembly to call back into C
> with.
>
> The example shows this
>
> static MonoString *Sample ()
> {
> return mono_string_new (mono_domain_get (), "Hello!");
> }
>
> which works fine, but I can't seem to get functions that take arguments working.
>
> for example:
>
> static MonoString* gimme2 (MonoString*a)
> {
> return mono_string_new (mono_domain_get (), "Hello!");
> }
>
> even though I'm not even using the parameter, simply defining this,
> adding it just like mono_add_internal_call, and likewise in the
> assembly, I get a crash in mono.
>
> Is it possible for assembly->c functions to take parameters?
Just a guess, but is your C# method an instance method or a static
method? If it's an instance method, you need a `this' pointer in your C
code, e.g.
static MonoString*
gimme2 (MonoObject *this, MonoString *a)
{
return mono_string_new (mono_domain_get (), "Hello!");
}
- Jon
More information about the Mono-list
mailing list