linux - 在 Mac 上,可以使用 Mono 与 winsock2.h 一起构建吗?

标签 linux macos mono winsock2

想要使用一些 Microsoft 特定工具进行练习;特别是 winsock2.h。我知道 Mono 可用于制作 C# 程序,但在进行安装之前,我希望了解它是否能做更多的事情。

最佳答案

对于 winsock2.h 这样的 API,您指的是直接 win32 API 和相关库。

Mono/C# 通过语言运行时提供更高级别的网络 API,从而无需使用这些低级别的平台特定 API。

因此,您无法在 Mac 上通过 Mono 使用 C# 来使用 winsock2.h APIS。底层库和代码根本不会出现在该平台上。您确实需要使用 Windows 系统来使用它们,在这种情况下,使用它们时使用 C/C++ 会更容易。

在 mac 上处理 win32 API 的一些潜在方法是:

  • 使用 VM 进行虚拟化 - 例如virtualbox、vmware、parallels
  • 使用训练营进行双启动 (您可以在运行 OSX 的同时通过 VM 启动您的训练营分区,但这与虚拟化几乎相同,您只是节省了磁盘空间)

可以尝试使用 wine 来模拟 Windows API,但我什至没有考虑过它,因为付出的努力可能会超过 yield ,而且您最终还是要写 C/C++代码。

关于linux - 在 Mac 上,可以使用 Mono 与 winsock2.h 一起构建吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39797250/

相关文章:

linux - 一个 liner shell 脚本,用于按日期重组文件

macos - NSCollectionView 滚动到底部

c# - 检查字节数组是否为零的 SSE 指令 C#

c# - 在 Mono (Linux) 上为当前线程设置处理器关联

c# - 在 Mono 中获取 MissingDLL 错误

linux - 使用 Docker (NVIDIA Xavier Jetson) 在 ARM64 上安装 Parity

c - 多进程多线程的同步问题

linux - 如何选择目录中的所有文件并运行命令

ios - react native 0.47.1 : Hot reload is not reflecting code changes on MacOS

macos - 有没有办法在 MAC 上从 OpenSSH_5.6p1 更新到 OpenSSH 5.9?