c# - 用于跨平台开发的单声道资源

标签 c# .net mono cross-platform pinvoke

是否有关于单声道跨平台开发的信息站点或存储库?显然我知道 MomaCross Platform Guidlines 并且我正在使用 Visual Studio Tools 在虚拟机中运行和调试应用程序,但是由于我正在迁移一个旧应用程序我有几十个(如果不是数百个)要迁移的 PInvoke。想必做这行的人都曾经遇到过这些问题,并且有解决的办法,或者对解决的建议。而不是在 stackoverflow 上发布一百个“什么是 Mono 等效于 user32.dll GetKeyState()”(或者这可能是解决方案),是否有存储库(像 Pinvoke.net 这样的维基),或者它是否隐藏在 mono forums 中从他们的搜索和 google search

为了回答下面的评论,我正在寻找进行 API 调用的跨平台方式。显然,最好的解决方案是采用托管方式来完成所有工作,但有关如何在 Windows、Linux 和 Mac 上执行此操作的某种引用也会非常有帮助。由于缺乏回应,我猜测不存在这样的引用站点,也许应该启动它。即使 mono 项目启动了一个以应用程序可移植性指南开始的 wiki,我相信它会随着时间的推移而发展并对社区有很大的用处。

最佳答案

我最近遇到了同样的问题。我将告诉您我的成功故事。

我的应用程序使用了一些第三方组件。其中一些使用 PInvoke。在第一次 MOMA 运行时,大约有 20 个地方。我用类似的 crossplaform(没有 PInvokes)替换了一个组件 - 还剩 10 个位置。大约 5 个地方我必须自己编写代码(很容易找到一些解决方法)- 还剩下 5 个地方。这5个地方居​​然从来没叫过。

我假设我们的许多 PInvoke 也从未被调用过。

关于c# - 用于跨平台开发的单声道资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1869208/

相关文章:

mono - 如何在 Mono 上安装 Nemerle

c# - 执行多条件时出错,未知列 - Mono + NHibernate + MySQL

c# - -1 * int.MinValue == int.MinValue??这是一个错误吗?

c# - 如何更改 WinForms Treeview 控件中用于内联编辑节点文本的字体?

C# mono - 传递 stringbuilder 以填充 C++ 中的 unicode 内容

c# - 从 Angular 向 Asp.net 发送 post 请求时出现错误 405

c# - "Colourizing".NET 中的位图

c# - 如何在 monotuch 中将自定义 View 添加到 XIB 文件定义的 View

c# - 如何使用 C# 从 Excel 工作表生成图表

c# - 上课吗?添加范围 ICollection?