Hi Danel, I'm a bit late into the thread but I will try to give you some hints of how to fix this;
klass = ((MonoTransparentProxy *)sampleApplicationHost)->klass; The TP->klass points to the real class object and we don't change that vtable when creating a proxy (the proxies is local to a domain and the klass objects are static and not domain specific). This means that the call: mono_runtime_invoke (klass->vtable[i], sampleApplicationHost, NULL, NULL); Just calling the method on the global class object pointing to the local implementation instead of calling the remoting wrapper that calls managed world and remoting (and is then changed into the other domain and called..) The easy fix for this is to call the vtable on the object directly instead (it contains compiled remote wrappers): mono_runtime_invoke (sampleApplicationHost->vtable[i], sampleApplicationHost, NULL, NULL); This should (I haven't tested it) call the correct remoting function, the vtable slot (should) will be the same as for the class. Cheers, Patrik Torstensson > -----Original Message----- > From: Daniel Lopez [mailto:[EMAIL PROTECTED] > Sent: Monday, February 24, 2003 7:02 PM > To: [EMAIL PROTECTED] > Subject: [Mono-list] AppDomain > > > > Hi, > > I am looking for the correct way to call a method in a > transparent proxy > from the C side of mono. When I create an object in a > different AppDomain > and call it from C# everything is fine, but when I do it from > C, it gets > executed in the same domain. > I attach some sample code to demonstrate what I mean. > > In c# the result of compiling and running test.exe: > mcs test.cs /r:System.Web > mono test.exe > > Main AppDomain: test.exe > Process request AppDomain: 56ca2e66 > > And compiling and running test.c > mcs test.cs /r:System.Web /target:library > cp test.dll /usr/lib (or somewhere where it will be picked > up from the path) > gcc -o test test.c pkg-config --cflags --libs mono -lm > ./test > > Main Domain: testing > Process request AppDomain: testing > > > So what is the correct way of invoking the method so it will > be executed in > the other domain? I tried every method I could think of with no luck. > > Best regards > > DAniel > _______________________________________________ Mono-list maillist - [EMAIL PROTECTED] http://lists.ximian.com/mailman/listinfo/mono-list
