【问题标题】:Is it possible to convert a windows form application (c# , .Net) to a cross platform project? [closed]是否可以将 Windows 窗体应用程序(c#、.Net)转换为跨平台项目? [关闭]
【发布时间】:2014-03-18 16:14:06
【问题描述】:

windows 窗体应用程序(c#、.net) 转换为跨平台项目的可能方法有哪些?
我的目标是有一个可以在 Linux 基础操作系统和 windows 上运行的项目。
我真的很喜欢 .net,但由于安装了 .Net Framework,它与所有操作系统(例如 Linux)不兼容。

你有什么建议?

【问题讨论】:

  • 你看过单声道吗? --> mono-project.com
  • IronPython 只是 Python 的 .Net 实现。因此,您不会通过迁移到 IronPython 来消除 .Net 限制。
  • 当前项目(winforms、c#、.net)是否完全使用python?
  • 不,我什至不知道 IronPython。我只想要我项目的跨平台转换方式。 IronPython 对我来说并不重要。
  • 感谢 cmets - 我改变了我的问题 - mono 项目呢?

标签: c# winforms visual-studio-2012 mono cross-platform


【解决方案1】:

正如@paqogomez 所指出的,IronPython 并没有消除对某种 .net 的需求,因为正如网站 http://ironpython.net/ 上所述:“IronPython 是 .NET 框架的一个极好的补充,提供具有 .NET 框架功能的 Python 开发人员。”

由于您的目标是在 windows 和 linux 上运行现有的 winforms-c#-application,因此您可能只使用单声道 (http://www.mono-project.com/)。

如果这不起作用(有关兼容性问题,请参阅http://mono-project.com/Compatibility),您可以在纯 python 中手动重写现有的 C# 应用程序。但是,很可能使用任何其他非托管、托管或脚本语言,它们可以在两个系统上使用,并且更容易手动翻译或者甚至存在自动翻译器(但是,我不知道是否有对于 C# 是任意的)。

考虑到最后一点,我对“c# 交叉编译器”进行了快速网络搜索,其中显示了一些深奥的结果,根据您的项目类型,您可能会感兴趣。

【讨论】:

  • 只是一个关于mono的问题->我们应该在win和linux机器上都安装它来运行我们的exe文件吗?如果是,那么跨平台意味着什么?
  • 我承认我没有做过任何针对多个平台的大型 .NET 项目,但从我所做的小项目中,我可以看出我总是通过在 windows 上使用 Visual 编译相同的源代码来成功studio 和曾经在 linux 上使用 mono 环境,但是,可能有很多特殊情况下效果不佳。还可以考虑查看stackoverflow.com/questions/751648/… 和类似问题,这些问题为深入分析提供了一个很好的起点。
  • 如何使用单声道?太混乱了
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-04
  • 2013-12-30
  • 2011-02-01
  • 1970-01-01
  • 2019-11-16
相关资源
最近更新 更多