Получите серийные номера системной платы и идентификаторы ЦП в C#

В этом примере показано, как получить серийные номера системной платы и идентификаторы ЦП. WMI (Инструмент управления Windows) позволяет использовать SQL-подобные инструкции, чтобы спросить компьютер о себе.

Функция GetBoardSerialNumbers, показанная в следующем коде, возвращает список, содержащий серийные номера материнской платы.

// Используйте WMI для возврата серийных номеров базовой платы системы.
private List GetBoardSerialNumbers()
{
    List results = new List();

    string query = "SELECT * FROM Win32_BaseBoard";
    ManagementObjectSearcher searcher =
        new ManagementObjectSearcher(query);
    foreach (ManagementObject info in searcher.Get())
    {
        results.Add(
            info.GetPropertyValue("SerialNumber").ToString());
    }

    return results;
}

В коде используется запрос WMI SELECT * FROM Win32_BaseBoard, чтобы получить информацию о материнских платах системы (базовых плате). Код проходит через результирующий набор Win32_BaseBoard ManagementObject s и добавляет их значения SerialNumber в список результатов.

Функция GetCpuIds, показанная в следующем коде, возвращает список, содержащий идентификаторы ЦП системы.

// Используйте WMI для возврата идентификаторов ЦП.
private List GetCpuIds()
{
    List results = new List();

    string query = "Select * FROM Win32_Processor";
    ManagementObjectSearcher searcher =
        new ManagementObjectSearcher(query);
    foreach (ManagementObject info in searcher.Get())
    {
        results.Add(
            info.GetPropertyValue("ProcessorId").ToString());
    }

    return results;
}

Этот метод использует запрос WMI SELECT * FROM Win32_Processor, чтобы получить информацию о процессорах системы. Код проходит через результирующий набор Win32_Processor ManagementObject s и добавляет их значения ProcessorId в список результатов.

Следующий код показывает, как основная программа отображает результаты в ListBox es.

// Отображение серийных номеров материнской платы и идентификаторов ЦП.
private void Form1_Load(object sender, EventArgs e)
{
    lstBoardSerialNumbers.DataSource = GetBoardSerialNumbers();
    lstCpuIds.DataSource = GetCpuIds();
}

Источник: http://csharphelper.com/blog/2014/12/use-wmi-to-get-the-systems-board-serial-numbers-and-cpu-ids-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector