On Tuesday, 1 August 2017 at 15:14:50 UTC, Mike Wey wrote:
On 01-08-17 01:37, Johnson Jones wrote:
So, the question is, is this a gtkd problem or a gtk problem?
In either case, what's the way to get them both to work. Do
you guys actually test out both versions installed on the same
system?
Gtk also loads some of it's own libraries at start up with
GModule / LoadLibrary. So with the library names changed GTK
might be loading the Gtk 2 libraries installed with gtksharp
instead of the correct ones.
Ok, I renamed Program Files (x86)\GtkSharp so that it effectively
deleted it,
Same issue though:
C:\Program Files (x86)\Gtk-Runtime\bin\libgdk_pixbuf-2.0-0.dll
unloaded.
C:\Program Files (x86)\Gtk-Runtime\bin\libepoxy-0.dll unloaded.
C:\Windows\System32\dwmapi.dll unloaded.
C:\Windows\System32\setupapi.dll unloaded.
C:\Program Files\Gtk-Runtime\bin\libcairo-gobject-2.dll unloaded.
C:\Program Files\Gtk-Runtime\bin\libcairo-2.dll unloaded.
C:\Program Files\Gtk-Runtime\bin\libgio-2.0-0.dll unloaded.
C:\Windows\System32\ole32.dll unloaded.
C:\Windows\System32\winmmbase.dll unloaded.
C:\Windows\System32\winmm.dll unloaded.
C:\Windows\System32\ws2_32.dll unloaded.
C:\Program Files\Gtk-Runtime\bin\libglib-2.0-0.dll unloaded.
C:\Program Files\Gtk-Runtime\bin\libgdk-3-0x64.dll unloaded.
The thread 0x1590 has exited with code 1 (0x1).
The thread 0x1598 has exited with code 1 (0x1).
The thread 0x1594 has exited with code 1 (0x1).
The program '[5472] test.exe' has exited with code 1 (0x1).
Renaming Program Files (x86)\Gtk-Runtime
Gives
C:\Windows\System32\dwmapi.dll unloaded.
C:\Windows\System32\setupapi.dll unloaded.
C:\Program Files\Gtk-Runtime\bin\libcairo-gobject-2.dll unloaded.
C:\Program Files\Gtk-Runtime\bin\libcairo-2.dll unloaded.
C:\Program Files\Gtk-Runtime\bin\libgio-2.0-0.dll unloaded.
C:\Windows\System32\ole32.dll unloaded.
C:\Windows\System32\winmmbase.dll unloaded.
C:\Windows\System32\winmm.dll unloaded.
C:\Windows\System32\ws2_32.dll unloaded.
C:\Program Files\Gtk-Runtime\bin\libglib-2.0-0.dll unloaded.
C:\Program Files\Gtk-Runtime\bin\libgobject-2.0-0.dll unloaded.
C:\Program Files\Gtk-Runtime\bin\libgdk-3-0x64.dll unloaded.
The thread 0x1480 has exited with code 1 (0x1).
The thread 0x1560 has exited with code 1 (0x1).
The thread 0x4f0 has exited with code 1 (0x1).
The program '[3936] test.exe' has exited with code 1 (0x1).
And x86 test.exe gives the error:
"The image File C:\Program
Files\Gtk-Runtime\bin\libatk-1.0-0.dll" is valid but is for a
machine type other than the current machine. Select Ok to
Continue or Cancel to fail the DLL load".
which was the original error I got.
At this point x64 gives the error:
object.Exception@generated\gtkd\gtkd\Loader.d(125): Library load
failed (libgdk-3-0x64.dll): The specified module could not be
found.
which has the code:
//TODO: A more general way to try more than one version.
if ( handle is null && library == importLibs[LIBRARY.GSV] )
handle = pLoadLibrary(importLibs[LIBRARY.GSV1]);
Which, if I'm not mistaken, suggests that maybe it is time to add
this "more general way" ;)
Now, why it is trying to load libgdk-3-0x64.dll, which is clearly
one of the modified files, but a dll of gdk, is unclear.
I have no file with gdk in it in any of the proper directories.
tried installing
https://sourceforge.net/projects/gtk3win/files/latest/download
but no luck. Says it's for x86 and x64 but I have my doubts.
So what is going on here?