您的位置:首页 > 编程语言 > C#

C#获取当前操作系统是32位还是64位

2015-03-09 11:48 351 查看
using System.Management;
public static string Detect3264()
{
ConnectionOptions oConn = new ConnectionOptions();
System.Management.ManagementScope oMs = new System.Management.ManagementScope("\\\\localhost", oConn);
System.Management.ObjectQuery oQuery = new System.Management.ObjectQuery("select AddressWidth from Win32_Processor");
ManagementObjectSearcher oSearcher = new ManagementObjectSearcher(oMs, oQuery);
ManagementObjectCollection oReturnCollection = oSearcher.Get();
string addressWidth = null;

foreach (ManagementObject oReturn in oReturnCollection)
{
addressWidth = oReturn["AddressWidth"].ToString();
}

return addressWidth;
}


顺带整理一下当前操作系统的函数 自己整理一下吧 我判断是否是Win7 或者XP如果要判断别的自己扩展!

/// <summary>
/// 获取当前操作系统名称 现在我们只支持WinXP Win7
/// </summary>
/// <returns></returns>
public string FunctionGetOSName()
{
string str_OS = "";
OperatingSystem os = Environment.OSVersion;
switch (os.Platform)
{
case PlatformID.Win32Windows:
switch (os.Version.Minor)
{
case 0:
str_OS = "Windows 95";
break;
case 10:
if (os.Version.Revision.ToString() == "2222A ")
str_OS = "Windows 98 第二版 ";
else
str_OS = "Windows 98 ";
break;
case 90:
str_OS = "Windows Me ";
break;
}
break;
case PlatformID.Win32NT:
switch (os.Version.Major)
{
case 3:
str_OS = "Windows NT 3.51 ";
break;
case 4:
str_OS = "Windows NT 4.0 ";
break;
case 5:
switch (os.Version.Minor)
{
case 0:
str_OS = "Windows 2000";
break;
case 1:
str_OS = "Windows XP";
break;
case 2:
str_OS = "Windows 2003";
break;
}
break;
case 6:
switch (os.Version.Minor)
{
case 0:
str_OS = "Windows Vista";
break;
case 1:
str_OS = "Windows 7";
break;
}
break;
}
break;
}
return str_OS;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: