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

上一篇下一篇

猜你喜欢

热点阅读