Получить системные показатели в C#

Функция API GetSystemMetrics возвращает системные метрики, значения, которые дают размеры, используемые системой, такие как размер значков по умолчанию и толщина границ изменяемого размера окна. Например, выделенная строка на рисунке справа показывает, что в моей системе ширина значков по умолчанию (SM_CXICON) составляет 32 пикселя.

Следующий код показывает, как программа объявляет функцию API GetSystemMetrics. (Обратите внимание, что программа включает в себя пространство имен System.Runtime.InteropServices, чтобы он мог использовать DllImport.)

[DllImport("user32.dll")]
static extern int GetSystemMetrics(SystemMetric smIndex)

Следующая перечисление SystemMetric определяет значения системных метрик, которые вы можете передать в функцию GetSystemMetrics.

public enum SystemMetric
{
    SM_CXSCREEN = 0,  // 0x00
    SM_CYSCREEN = 1,  // 0x01
    SM_CXVSCROLL = 2,  // 0x02
    SM_CYHSCROLL = 3,  // 0x03
    ...
    SM_REMOTECONTROL = 0x2001, // 0x2001
}

Обработчик события Load формы использует следующий код для отображения значений метрики системы.

// Покажите некоторые полезные показатели.
private void Form1_Load(object sender, EventArgs e)
{
    AddValue(SystemMetric.SM_CXSCREEN);
    AddValue(SystemMetric.SM_CYSCREEN);
    ...
}

Следующий метод AddValue отображает имя и значение метрики в элементе управления lvwMetrics ListView.

// Добавить значение в ListView.
private void AddValue(SystemMetric metric)
{
    ListViewItem item = lvwMetrics.Items.Add(metric.ToString());
    item.SubItems.Add(GetSystemMetrics(metric).ToString());
}

Загрузите пример и посмотрите на код, чтобы увидеть все 89 показателей системы.

Источник: http://csharphelper.com/blog/2017/10/get-system-metrics-in-c/

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