在这种特殊情况下,我需要为 Linux 运行 .complicated NET 应用程序。复杂我的意思是——那个项目已经开发了 3 年,我不想用 java 或其他东西再次编写它,并在以后开发和支持 .NET 和 Java 版本。
应用程序正在生成鼠标和键盘事件(通过 winapi/dll 导入)并使用串行端口。我也有很少的延迟计时器 - 用于串行端口通信(10-20ms,我在这里不需要很大的精度)。
剩下的只是很多简单的代码,没什么特别的,没有奇怪的控件,没有 Directx 等。
我应该期待什么?这行得通吗?
如果代码的某些部分会失败 - 我可以稍微改变它,在 .net 应用程序和 linux 上的迷你应用程序之间建立网络连接,我可以编写用于发送鼠标和键盘事件或 RS232 通信。
另外我想问一下 Wine 和 .NET 的一般情况:
如何编写应该在 Linux/Wine/Mono 上运行的 .NET 应用程序?
- 哪个版本的框架?(1.x、2.0 还是我可以使用 3.5?)
- 我应该避免什么(从 Windows dll 导入?计时器?)
编辑/从评论中移动:
几年前我看过单声道,但很糟糕。现在我看到它长大了,支持 LINQ、Threading 和其他复杂的功能。另外现在帮助看起来真的很严重。我还没有接受答案,因为我看到人们仍然发布非常有用的链接。如果这个问题得到很多+1,我会重写它,也许这会对其他人有所帮助。
我希望这里有人在这里有一些使用 .NET 在 linux 上的实践经验......