Su mejor fuente de la información y de las noticias alrededor Vista, conductores y secretos en el Internet

ARTÍCULOS de Vista TAPA 50 Vista VIDEOS Vista SUAVE AYUDA de Vista

¿Termine la portabilidad de .NET con el vino y mono?


Mono es la versión de la abrir-fuente del marco de .NET de Microsoft. Pone la mayor parte de las características backend del marco en ejecución, pero desafortunadamente, las caídas completamente en su pequeña cara bonita al procurar exhibir el interfaz utilizador - que es sobre cuál están los apps de escritorio todo.

Vino en la otro-mano, está un puerto (las partes importantes de) de la biblioteca de Win32 de Microsoft - las dependencias de Linux de la base de las bibliotecas del desarrollo de Windows, y más importantemente, los elementos del interfaz win32. Con el vino, usted puede funcionar muchos executables tradicionales de C++ win32 en Linux, con ciertas limitaciones.

El mono bloque que tropieza más grande es los programas del GUI y de .NET que utilizan P/Invoke para llamar los dlls no-manejados nativos win32 - mono es un ambiente puro de .NET, y no puede manejarlos. Pero de la descripción arriba, eso es exactamente en qué VINO sobresalga… ¿No podemos utilizar tan el VINO + mono hacer apenas sobre programa de .NET funcionado en Linux fresco fuera del recopilador de .NET?

Desafortunadamente, la respuesta es no. Mueva hacia atrás cuando el mono proyecto era el primer comenzar hacia fuera, el mono equipo del desarrollo considerado usando el VINO para poner el namespace de System.Windows.Forms en ejecución del marco de .NET (que es el prácticamente 100% que C++ nativo unmanaged el código win32 en envolturas de .NET). Pero hicieron la opción derecha en decidir a no tome la manera fácil y vaya esa ruta, saliendo de la integridad del mono proyecto intacta y centrándose en bibliotecas verdaderas del interfaz utilizador de la cruz-plataforma en lugar de otro (el GTK# ahora es la biblioteca de UI de la opción para los usos de la cruz-plataforma .NET).

¿Pero hasta GTK# la biblioteca se convierte en una opción más viable o el mono “puerto” de SWF llega a ser más completo (véase abajo), no se debe algo similar hacer posible? Sería ciertamente grande apenas mecanografiar

$ de vino win32_NET_app.exe --mono=/usr/lib/mono/

o quizá (dependiendo de qué app hace la integración):

$ mono win32_NET_app.exe --wine=/usr/lib/wine/

Y tenga hand-off del vino el uso de .NET Win32 a mono, e intercepte las llamadas de P/Invoke a Win32 DLLs, substituyéndolo por sus propias bibliotecas viradas hacia el lado de babor Win32 en marcha. ¿Eso sería grande, no?

Desafortunadamente, no somos la gente responsable en el vino o mono y tal puesta en práctica tomaría cierto tiempo y esfuerzo para conseguir que va - aunque es nuestra opinión que si tal cosa se hace le necesidad sea el vino se modifica que y no mono - para preservar la naturaleza verdadera de la cruz-plataforma del mono proyecto y guardarla del quagmire legal que es la biblioteca Win32.

En el momento que, el mono equipo está trabajando en un “puerto” de las clases para System.Windows.Forms que deje casi todos los programas escritos y diseñado for Windows run on Linux without a problem. Instead of porting the actual SWF controls to Mono, the Mono team is working on a “compatibility layer” of sorts that will render the controls on-the-fly, making it look more “natural” no matter what platform it’s running on.

In the mean time, we highly recommend developers consider using the (technically-inferior, compatibility-superior) GTK# UI library instead of SWF for your .NET projects (on and off of Windows); and end-users can install the latest dev copy of Mono to gain access to the SWF “ported” library to make those Windows apps work!

Popularity: 6%


Written by Computer Guru. Read more great feeds at is source WEBSITE
no comments.
Read more articles on Coding and Alternatives and Mono and WINE and .NET Framework and c# and Windows and Programming and Linux and software.

Related articles

No comments

There are still no comments on this article.

Leave your comment...

If you want to leave your comment on this article, simply fill out the next form:




You can use these XHTML tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong> .