Pregunta

Duplicar: Ejecute .NET exe en Linux

Hola,

¿Es posible hacer que mi aplicación Windows Forms existente, realizada con Visual Studio 2008 y .Net framework 2.0, se ejecute en Linux al compilar en Linux con menos cambios de código o sin cambios?

Gracias

¿Fue útil?

Solución

muy posible, sin embargo, dependiendo de su aplicación, su kilometraje puede variar. los no-nos incluyen bibliotecas / DLL de terceros que dependen de las llamadas COM y Win32, y P / Invokes. También es posible que tenga que vigilar el código que realiza la concatenación de archivos / directorios, ya que unix usa " / " como separador de directorios, mientras que Windows utiliza " \ " ;.

Otros consejos

Le sugiero que vuelva a compilar el mismo código en el IDE de Mono y que realice las modificaciones menores que puedan ser necesarias. Lo he hecho muchas veces.

Puede obtener información aquí: Ejecute .NET exe en Linux

sí, la última vez que lo verifiqué, su DataGridView está mejorando, ahora puede ocultar columnas, sin embargo, su VirtualMode en dgv todavía no funciona.

Utilizo Mono principalmente para cosas remotas, el tipo DateTime ahora es compatible con Remoting (yipee!) en Mono 2.4. antes (en 1.9), tengo que convertir mis campos de fecha y hora en una cadena para que pueda ser transportado desde y hacia Remoting de nivel intermedio, esto ya no es necesario en 2.4.

Use esta guía para escribir software portátil: http://mono-project.com/Guidelines:Application_Portability

un ejemplo:

  

Para escribir software portátil, debes   asegúrate de usar el   System.IO.Path.DirectorySeparatorChar   (http: / monodoc / P: System.IO.Path.DirectorySeparatorChar)   personaje cuando debes concatenar   caminos, o incluso mejor, usar el   System.IO.Path.Combine   (http: / monodoc / M: System.IO.Path.Combine (cadena, cadena))   método para combinar rutas de acceso.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top