首页 / 问答 / C#/.NET/.NET Core应用程序编程开发中如何检测一个Windows操作系统是否是64位?

C#/.NET/.NET Core应用程序编程开发中如何检测一个Windows操作系统是否是64位?

0

在.NET 2.0的框架中,我们可以使用如下的方法来获取一个Windows操作系统的平台信息,如:

string os_platform = System.Environment.OSVersion.Platform.ToString();

但是,这个方法即使在64位的操作系统也始终返回的是Win32NT,所以,如果要检测一个Windows操作系统是否是64位,应该如何实现呢?

回复 [×]
提交评论
请输入评论内容

4 个回答

  • 0

    如果是.NET Framework 4.0 及以上版本,则可以直接调用Is64BitOperatingSystem属性来获取当前操作系统是否是64位的,如下:

    输出示例:

    Rector的个人主页

    Rector

    2020-04-23 回答

    • 0

      在.NET Framework 2.0 中,IntPtr.Size并不能返回真正的操作系统信息,你首先需要检测是否运行在64位的进程中,如果是运行在32位的进程中,则还需要调用Windows的API函数IsWow64Process进行进一步的检测,实现方法如下:

      Rector的个人主页

      Rector

      2020-04-23 回答

      • 0

        再提供一个可以检测Windows XP系统的自定义实现方法:

        Rector的个人主页

        Rector

        2020-04-23 回答

        • 0

          以下是微软提供的一种检测操作系统位数的示例代码,如:

          Rector的个人主页

          Rector

          2020-04-23 回答

          我来回答