【发布时间】:2019-06-07 08:24:14
【问题描述】:
我正在构建一个 .Net 桌面应用程序 (C#),以便在不同平台上使用单声道执行。但是代码的某些部分只需要在特定的操作系统中运行。
我用它来确定操作系统:
“环境.OSVersion.Platform”
//Reproducible demo code.
using System;
public class Program
{
public static void Main()
{
Console.WriteLine(Environment.OSVersion);
Console.WriteLine(Environment.MachineName);
Console.WriteLine(Environment.OSVersion.Platform);
}
}
平台解析成
Windows : Win32NT
Ubuntu : Unix
Mac : Unix
问题是与 Linux 和 Mac 的冲突。 Java 中类似的命令“os.name”实际上给了我 macOS 的名称,而 mono 似乎并没有区分 Linux 和 Mac,至少在这些命令中是这样。
如何判断执行环境是macOS?
【问题讨论】: