gpt4 book ai didi

vb.net - C# System.PlatformID.Unix 与 Linux

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:54:21 26 4
gpt4 key购买 nike

问题:

我需要在我的 C# 应用程序中进行一些系统调用。不幸的是,这在 Linux 上的表现与在 UNIX 上的表现不同。

现在我曾经像这样在运行时切换操作系统

If Environment.OSVersion.Platform = System.PlatformID.Unix Then
' Linux/Unix '
ElseIf Environment.OSVersion.Platform = System.PlatformID.MacOSX Then
' Apple '
Else
' Windows '
End If

现在的问题是我需要区分 UNIX 和 Linux,因为它们是不同的。

有什么方法可以判断操作系统是 Linux 还是 Unix?最好不要调用 uname -a

我不想放弃 Unix 而只做 Linux,因为微软没有添加 PlatformID.Linux...

最佳答案

您需要使用“uname -a”来区分 Linux 和 Unix,以及 OSX。由于历史原因,Mono 将 OSX 报告为 Unix,而不是 MacOSX。

此处提供了一些使用 uname 的代码: http://github.com/jpobst/Pinta/blob/master/Pinta/Platform.cs

关于vb.net - C# System.PlatformID.Unix 与 Linux,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3434757/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com