Unity 判断windows系统类型
2020-08-07 本文已影响0人
ShawnWeasley
本来是想区分win10和win7系统,判断当前系统是否是windows10 64位,以使用不同的录屏插件,结果这么个简单的问题查了很久居然没几个靠谱的。
这里不说过程了,直接说一下结论。
//输出Microsoft Windows NT 10.0.18363.0
Debug.Log(Environment.OSVersion);
//输出True
Debug.Log(Environment.Is64BitOperatingSystem);
//输出Windows 10 (10.0.0) 64bit
Debug.Log(SystemInfo.operatingSystem);
可以看到最有用的还是最后一个SystemInfo.operatingSystem,但是这里官方API提示了win可能会出现识别不出来64位还是32位的情况:
image.png
因此这里调用时多加了几层判断:
string systemVersion = SystemInfo.operatingSystem;
if (systemVersion.StartsWith("Windows 10") && systemVersion.EndsWith("64bit") && Environment.Is64BitOperatingSystem)
{
//这里加三重判断确保是win10 64位
}
另外如果需要判断进程是否是64位的可以用这个:
Environment.Is64BitProcess