簡體   English   中英

如何在C#代碼中獲取操作系統詳細信息

[英]how to get Operating System Details in C# code

我需要獲得OsArchitecture的意思是O / s的位數,我使用了Win32_OperatingSystem,但其“ OsArchitecture”不適用於所有類型的操作系統

ManagementObjectSearcher objOSDetails = new ManagementObjectSearcher("SELECT * FROM Win32_OperatingSystem");
           ManagementObjectCollection osDetailsCollection = objOSDetails.Get();
 foreach( ManagementObject mo in osDetailsCollection )
  {
    String  _operatingSysBits = mo["OSArchitecture"].ToString();

  }

檢查IntPtr.Size 在32位平台上它將是4,在64位平台上將是8(除非您的進程以32位模式運行)。

對於.NET 4.0,有Environment.is64BitOperatingSystem

要么

    ManagementObject Mo = new ManagementObject("Win32_Processor.DeviceID='CPU0'");
    object o = Mo["Architecture"];
    UInt16 sp = (UInt16)(o);

    if (sp == 0)
    {
        //86
    } else if (sp == 9)
    {
        //64
    }

    Mo.Dispose();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM