c# 检查系统是32位还是64位

mac2024-10-09  42

using System;//www.uzhanbao.com using System.Collections.Generic; using System.Text; using System.Management;

    public  class Check64or32System     {         /// <summary>          /// 检查系统是32位还是64位          /// </summary>          /// <returns>0运行出错;32表示32位系统;64表示64位操作系统</returns>          public static int Distinguish64or32System()         {             try             {                 //得到AddressWidth值                  ConnectionOptions mConnOption = new ConnectionOptions();                 ManagementScope mMs = new ManagementScope("\\\\localhost", mConnOption);                 ObjectQuery mQuery = new ObjectQuery("select AddressWidth from Win32_Processor");                 ManagementObjectSearcher mSearcher = new ManagementObjectSearcher(mMs, mQuery);                 ManagementObjectCollection mObjectCollection = mSearcher.Get();                 string retVal = string.Empty;                 foreach (ManagementObject mObject in mObjectCollection)                 {                     retVal = mObject["AddressWidth"].ToString();                 }

                //根据值判断,不能直接返回得到的值,                  //32位返回"32",64位会因为CPU而有两个值,"N/A"或"64"                  if (retVal == "32")                 {                     return 32;                 }                 else                 {                     return 64;                 }             }             catch             {                 return 0;             }         }

    }

最新回复(0)