[Gtk-sharp-list] GtkDotNet and dll.config file help
Hywel Thomas
hywel at controlspecials.demon.co.uk
Sun Feb 8 06:36:27 EST 2009
I installed Gtk# (I assume) with Monodevelop - it's a clean SUSE 11.1
installation, with MD installed via YAST, and in the project (which was
imported from the working Windows version of the Gtk# code) I've just
checked the appropriate references for gtk-sharp, gdk-sharp, gtk-dotnet,
etc (in fact, MD did this for me when importing the project). It now
works, but I've had to put in a gdk-sharp.dll.config file into my bin
directory (NOT a gtk-dotnet.dll.config). It seems odd, because I can
run the Cairo DrawingSample program (which also uses Gtk.DotNet) without
any of this, as suggested in your last comment re GAC'd Gtk# dlls. I'm
confused! The full error report (if it gives any more clues) was:-
Marshaling enter_notify_event signal
Exception in Gtk# callback delegate
Note: Applications can use GLib.ExceptionManager.UnhandledException
to handle the exception.
System.Reflection.TargetInvocationException: Exception has been thrown
by the target of an invocation. ---> System.DllNotFoundException:
libgdk-win32-2.0-0.dll
at (wrapper managed-to-native) Gdk.Window:gdk_window_get_pointer
(intptr,int&,int&,int&)
at Gdk.Window.GetPointer (System.Int32& x, System.Int32& y,
Gdk.ModifierType& mask) [0x00000]
at NPlot.Gtk.ActivePlotSurface2D.EnterNotify (System.Object o,
Gtk.EnterNotifyEventArgs args) [0x00000] in /home/hwt/NPlot/Gtk
svn/demo/csharp/src/Gtk/Gtk.ActivePlotSurface2D.cs:227
at (wrapper managed-to-native)
System.Reflection.MonoMethod:InternalInvoke
(object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj,
BindingFlags invokeAttr, System.Reflection.Binder binder,
System.Object[] parameters, System.Globalization.CultureInfo culture)
[0x00057] in
/usr/src/packages/BUILD/mono-2.0.1/mcs/class/corlib/System.Reflection/MonoMethod.cs:157
--- End of inner exception stack trace ---
Michael Hutchinson wrote:
>
> The dllmap should be in the config file for the thing it's doing
> mapping for, e.g. the DllMap for GtkDotNet.dll should in a config file
> called GtkDotNet.dll.config.
>
> However, this is all just background. You should not have to write
> dllmaps for the GTK# dlls -- they are included and installed when you
> install GTK#, i.e. the GAC'd GTK# dlls are all already mapped. Your
> issue most likely indicates a broken GTK# installation. How did you
> install it?
>
More information about the Gtk-sharp-list
mailing list