PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Möglichkeit .NET mit DirectX?



gray
06.11.05, 13:31
Hallo,

Ich suche nach einer Möglichkeit win Programme welche das .NET Framework nutzen unter Linux laufen zu lassen. Bin nach langer suche dann auf libwine-cil gestoßen. Mit deren Hilfe man Mono und wine "koppeln" kann. Nun habe ich aber noch ein Problem: Ich versuche einen Client (Krrios UO, falls den jmd. kennt) zum laufen zu bekommen, der DirectX benutzt. Also das lese ich jedenfalls aus den Fehlermeldungen. Vielleicht hat schonmal jmd. Erfahrungen damit gemacht und kann mir helfen.


gray@demeter:~/.wine/drive_c/Program Files/Ultima Online 2D/Beta 13$ swf_invoke Client.exe

** (Client.exe:9935): WARNING **: The following assembly referenced from /home/gray/.wine/drive_c/Program Files/Ultima Online 2D/Beta 13/Client.exe could not be loaded:
Assembly: Microsoft.DirectX.Direct3D (assemblyref_index=4)
Version: 1.0.900.0
Public Key: 31bf3856ad364e35
The assembly was not found in the Global Assembly Cache, a path listed in the MONO_PATH environment variable, or in the location of the executing assembly (/home/gray/.wine/drive_c/Program Files/Ultima Online 2D/Beta 13/).


** (Client.exe:9935): WARNING **: The class Microsoft.DirectX.Direct3D.Device could not be loaded, used in /home/gray/.wine/drive_c/Program Files/Ultima Online 2D/Beta 13/Client.exe (token 0x0100003a)

** (Client.exe:9935): WARNING **: The class Microsoft.DirectX.Direct3D.PresentParameters could not be loaded, used in /home/gray/.wine/drive_c/Program Files/Ultima Online 2D/Beta 13/Client.exe (token 0x01000040)

** (Client.exe:9935): WARNING **: The class Microsoft.DirectX.Direct3D.VertexBuffer could not be loaded, used in /home/gray/.wine/drive_c/Program Files/Ultima Online 2D/Beta 13/Client.exe (token 0x01000029)

** ERROR **: file class.c: line 1692 (mono_class_init): assertion failed: (class)
aborting...
/usr/bin/swf_invoke: line 7: 9935 Aborted /usr/bin/cli "$@"

xanlosch
06.11.05, 15:27
Ich will dich nicht enttäuschen, aber es ist nicht möglich - jedenfalls meiner Erfahrung nach - in Wine .NET-Code auszuführen bzw. Wine ist nicht .NET-fähig. Vor kurzem gab es ne entsprechende Diskussion auf der Wine-Devel-Liste.

gray
06.11.05, 19:37
Also hier die Beschreibung der libwine-cil von der ich gesprochen habe:

WINE bindings for Mono
This package contains a library required to implement core
functionality of the Mono assembly Systems.Windows.Forms using the WINE
libraries.

Es gibt ja auch Programme die laufen, welche definitiv in .NET sind. Aber wie schon gesagt funktioniert DirectX nicht... Selbst wenn ich die swf_invoke (Shell script) so ändere, dass es cedega und dessen dlls benutzt.

Das Problem zu libwine-cil ist, dass es relativ wenig Informationen darüber gibt.

stefan.becker
06.11.05, 19:54
Qemu bzw. VMWARE Player mit echten Fenstern sollte die bessere Lösung sein.

THEReapMan
06.11.05, 20:38
Also hier die Beschreibung der libwine-cil von der ich gesprochen habe:

WINE bindings for Mono
This package contains a library required to implement core
functionality of the Mono assembly Systems.Windows.Forms using the WINE
libraries.

Es gibt ja auch Programme die laufen, welche definitiv in .NET sind. Aber wie schon gesagt funktioniert DirectX nicht... Selbst wenn ich die swf_invoke (Shell script) so ändere, dass es cedega und dessen dlls benutzt.

Das Problem zu libwine-cil ist, dass es relativ wenig Informationen darüber gibt.

Meiner ansicht nach macht die Lib genau was andres. Nämlich ist dazu da das mono die Windows-forms zeichnen kann (halt per wine).