macos - Mono DLL 打开适当的 Windows/Mac DLL/DyLib

标签 macos mono native dllimport dylib

我正在使用 Mono 编写一组 native 公开命令的包装器。

该集合是相同的(命令和签名),但是它是通过 Windows 中的 DLL 和 Mac 中的 DyLib 公开的。

我想知道是否有一种方法可以让我只创建一个包装器 .NET/Mono DLL,同时让它仍然找到正确的库来自行导入。

如果是这样,语法是什么?如果不是,那么将 DllImport 从我要编译的 2 个不同操作系统中分离出来的编译器定义是什么?

编辑:对于 Mac 部分,使用静态库 (.a) 而不是动态库 (.dylib) 会得到加分,如果 Mono 也可以这样做的话。

最佳答案

您可能想要发送一个 dll 映射配置文件,告诉 Mono 在每个平台上加载哪个库:

http://www.mono-project.com/Config_DllMap

关于macos - Mono DLL 打开适当的 Windows/Mac DLL/DyLib,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6555079/

相关文章:

objective-c - 在基于 NSTableView 的 View 中处理自定义选择样式

java - 在哪里可以找到 JRE 的 native 库?

c# - Mono.Simd Vector3( float )丢失了吗?

linux - SteamBot.exe 没有出现在 SteamBot/Bin/Release 中

mono - 在 ubuntu 上使用 mono 恢复 nuget 命令行实用程序包

sql - 如何在 Hibernate Native SQL Query 中急切获取连接表集合?

ios - 从移动网页通过 native Facebook iOS 应用程序登录

macos - OSX 庆典 "sleep"

bash - 在 Mac 上升级 bash

c++ - C/C++ 有效指针,但获取 EXC_BAD_ACCESS 和 KERN_INVALID_ADDRESS