Класс Win32_VideoController — Информация о видеокарте

Класс Win32_VideoController — Информация о видеокарте Объектная модель Windows Management Instrumentation

Класс Win32_VideoController позволяет получить информацию о видеокарте, он происходит от класса CIM_PCVideoController. Win32_VideoController является крупнейшим видео-классов, так как содержит в своем составе 59 свойств, методов у него нет.

Как и для большинства классов, ключевым свойством класса Win32_VideoController является DeviceID. Сам класс предоставляет провайдер подсистемы Win32, связанные файлы — Cimwin32.mof и Cimwin32.dll, пространство имен rootCIMV2.

Если открыть утилиту CIM Studio, то на вкладке Associations можно просмотреть ассоциативные связи.

Утилита WMI CIM Studio - ассоциативные связи

Видим, что Win32_VideoController связан с CIM_VideoControllerResolution посредством ассоциативного класса Win32_VideoSettings. Аналогично, можно использовать утилиту командной строки – WMIC, для просмотра ассоциативных связей.

Просто введите команду:

WMIC CLASS Win32_VideoController ASSOC

Если в утилите WMI CIM Studio нажать кнопку Instances, то можно получить список экземпляров класса, двойной щелчок по имени экземпляра позволяет перейти к просмотру его параметров, а в реальности – информация о видеокарте.

Просмотр значений экземпляра класса Win32_VideoController

Аналогичную информацию можно получить с помощью команды в консольном окне:

WMIC PATH Win32_VideoController GET/FORMAT:HFORM>d:\WORK\info.htm
Просмотр информации о видеокарте в утилите WMIC

Если перейди на вкладку Associations для выбранного экземпляра. То можно просмотреть ассоциативные связи уже для него, в этом случае, их будет довольно много.

Утилита CIM Studio - ассоциативные праметры экземпляра класса

Для удобства. Можно вывести всю информацию во внешний файл средствами WMIC:

WMIC PATH Win32_VideoController ASSOC>d:\WORK\info.htm

Свойства класса Win32_VideoController

AcceleratorCapabilities – Свойство является массивом, в котором содержится информация относительно графических и 3d возможностей видеокарты, (CIM_VideoController). Значения:

  • 0 — Нет данных
  • 1 – Другое
  • 2 — Графический ускоритель
  • 3 — 3D-ускоритель

AdapterCompatibility – Информация о микросхемах, которые используются в видеокарте.

AdapterDACType – Название или идентификатор микросхемы DAC (Digital-to-Analog

AdapterRAM – Информация о размере памяти видеокарты.

Availability – Доступность и состояние видеокарты, значения те же, что и для класса Win32_DesktopMonitor, (CIM_LogicalDevice).

CapabilityDescriptions – Строка, содержащая более подробные объяснения любой из функций видеокарты, указанных в массиве AcceleratorCapabilities, (CIM_VideoController).

Caption – Короткая информация о видеокарте, (CIM_ManagedSystemElement).

ColorTableEntries – Показывает информацию о системной цветовой палитре в том случае, если видеокарта имеет глубину цвета не более 8 бит на пиксел. В противном случае значение свойства будет пустым.

ConfigManagerErrorCode – Информация об ошибке конфигурации.

ConfigManagerUserConfig – Логическое значение, определяющее, использует ли видеокарта настройки пользователя, (CIM_LogicalDevice).

CreationClassName – Класс-создатель, (CIM_LogicalDevice).

CurrentBitsPerPixel – Количество бит, которые используются для отображения каждой из точек, (CIM_VideoController).

CurrentHorizontalResolution – Количество точек по горизонтали, (CIM_VideoController).

CurrentNumberOfColors – Количество цветов, которые поддерживаются видеокартой при данных разрешениях, (CIM_VideoController).

CurrentNumberOfColumns – Количество столбцов в текстовом режиме, (CIM_VideoController).

CurrentNumberOfRows — Количество строк в текстовом режиме, (CIM_VideoController).

CurrentRefreshRate – Информация о текущей частоте обновления экрана. Значение 0 – частота по умолчанию, 0xFFFFFFFF — оптимальная частота, (CIM_VideoController).

CurrentScanMode — Текущий режим развертки, (CIM_VideoController).

  • 1 – Другое значение
  • 2 – Данные отсутствуют
  • 3 — Чересстрочная
  • 4 — Без чередования

CurrentVerticalResolution — Количество точек по вертикали, (CIM_VideoController)

Description – Информация о видеокарте, (CIM_ManagedSystemElement).

DeviceID – Идентификатор видеокарты, (CIM_LogicalDevice).

DeviceSpecificPens — Количество световых перьев, используемых с устройством. Если значение свойства равно 0xFFFFFFFF, то устройство не поддерживает световых перьев.

DitherType – Информация о способе формирования полутоновых изображений видеокартой. Значения:

  • 1 — Полутона не формируются
  • 2 — Формирование грубой кистью
  • 3 — Формирование тонкой кистью
  • 4 — Штриховые полутона
  • 5 — Устройство создает полутоновые изображения

DriverDate – Дата и время последней модификации видеокарты.

DriverVersion – Информация о номере версии драйвера видеокарты.

ErrorCleared — Ошибка, которую вернуло свойство LastErrorCode, устранена (значение TRUE), (CIM_LogicalDevice).

ErrorDescription – Описание ошибки видеокарты, (CIM_LogicalDevice).

ICMIntent – Содержит информацию о методе подбора цвета. Значения:

  • 1 — Насыщенность
  • 2 — Контрастность
  • 3 — Точное Цвет

ICMMethod – Свойство указывает, как осуществляется ICM. Для не-ICM приложений это свойство показывает, включен ли ICM. Для ICM-приложений компьютер ссылается на это значение, чтобы определить, как обрабатывать поддержку ICM. Значения:

  • 1 — ICM отключен
  • 2 — ICM реализуется Windows
  • 3 — ICM реализуется драйвером устройства
  • 4 — ICM реализуется самим устройством

InfFilename — Путь к INF-файлу видеокарты.

InfSection — Раздел в INF-файле, в котором находится информация о видео.

InstallDate – Дата установки видеокарты, (CIM_ManagedSystemElement).

InstalledDisplayDrivers –Имя установленного драйвера видеокарты.

LastErrorCode – Информация о коде последней ошибки, (CIM_LogicalDevice).

MaxMemorySupported – Информация о максимальном размере в байтах поддерживаемой памяти, (CIM_VideoController).

MaxNumberControlled – Максимальное количество портов, поддерживаемых данным контроллером, (CIM_Controller).

MaxRefreshRate – Информация о максимальной частоте (Гц), которую поддерживает видеокарта, (CIM_VideoController).

MinRefreshRate — Информация о минимальной частоте (Гц), которую поддерживает видеокарта, (CIM_VideoController).

Monochrome – Свойство показывает, какой режим дисплея используется (цветной — FALSE или монохромный — TRUE), (CIM_ManagedSystemElement).

Name – Название (метка) видеокарты, (CIM_ManagedSystemElement).

NumberOfColorPlanes — Текущее число цветовых плоскостей, (CIM_PCVideoController).

NumberOfVideoPages — Количество страниц видеопамяти, поддерживаемых при текущем разрешении и размере памяти, (CIM_VideoController).

PNPDeviceID – Идентификатор Win32 данного устройства, (CIM_LogicalDevice).

PowerManagementCapabilities – Параметры питания, те же значения, что и для класса Win32_DesktopMonitor.

PowerManagementSupported – Осуществлена ли поддержка управления питанием видеокарты (TRUE – да, FALSE — нет), (CIM_LogicalDevice).

ProtocolSupported – Протокол, используемый контролером для доступа к управляемым устройствам, (CIM_Controller). Возможные значения можно просмотреть в документации Microsoft.

ReservedSystemPaletteEntries — Количество записей в системной цветовой палитре на данный момент. Свойство содержит пустое значение, если компьютер не использует палитру.

SpecificationVersion – Номер версии данных специализации.

Status – Статус видеокарты, те же значения, что и для класса Win32_NetworkAdapter, (CIM_ManagedSystemElement).

StatusInfo – Информация о статусе видеокарты, те же значения, что и для класса Win32_NetworkAdapter, (CIM_LogicalDevice).

SystemCreationClassName — Имя класса создания системы, (CIM_LogicalDevice).

SystemName – Системное имя видеокарты, (CIM_LogicalDevice).

SystemPaletteEntries – Количество цветовых индексов.

TimeOfLastReset – Информация о дате и времени последней перезагрузке контроллера, (CIM_Controller).

VideoArchitecture – Видео-архитектура, (CIM_PCVideoController). Значения:

  • 1 — Другой тип
  • 2 — Неизвестно
  • 3 — CGA
  • 4 — EGA
  • 5 — VGA
  • 6 — SVGA
  • 7 — MDA
  • 8 — HGC
  • 9 — MCGA
  • 10 — 8514A
  • 11 — XGA
  • 12 — Linear Frame Buffer
  • 160 — PC-98

VideoMemoryType – Тип видеопамяти, (CIM_VideoController). Значения:

  • 1 — Другой тип
  • 2 — Неизвестно
  • 3 — VRAM
  • 4 — DRAM
  • 5 — SRAM
  • 6 — WRAM
  • 7 — EDO RAM
  • 8 — Burst Synchronous DRAM
  • 9 — Pipelined Burst SRAM
  • 10 — CDRAM
  • 11 — 3DRAM
  • 12 — SDRAM
  • 13 — SGRAM

VideoMode — Текущий видео режим, (CIM_PCVideoController).

VideoModeDescription – Информация о текущем разрешении, цвете и режиме развертки для видеокарты.

VideoProcessor – Видеопроцессор, (CIM_PCVideoController).

Вывод информации о видеокарте средствами Windows Script Host

Язык VBScript:

'**************************************************************
' Информация о видеокарте
' Win32_VideoController.vbs
'**************************************************************
Option explicit
 
dim objService, colNetworkAdapters, objItem
dim VideoInfo, objClassProperty
dim FSO, TempPath, TxtFile
 
Set objService = GetObject("WinMgmts:\\.\Root\CIMV2") 
Set colNetworkAdapters = objService.ExecQuery("SELECT * FROM Win32_VideoController") 
 
VideoInfo = "Информация о видеокарте" & vbCrLf & vbCrLf
 
' Начинаем перебор коллекции
For Each objItem in colNetworkAdapters
    ' Начинаем перебор всех свойств для текущего экземпляра класса WMI
    For Each objClassProperty In objItem.Properties_
        ' Если значение больше 0
        If Len(objClassProperty.value)>0 Then 
            VideoInfo = VideoInfo & objClassProperty.Name &"= " & objClassProperty.value &vbCrLf
        End If
    Next
    VideoInfo = VideoInfo & "----------------------------------------------" &vbCrLf &vbCrLf
Next 
 
ShowInNotepad(VideoInfo)
 
'Процедура создания временного файла с данными
Sub ShowInNotepad(StrToFile)
    Set FSO = CreateObject("Scripting.FileSystemObject")
    TempPath = CreateObject("WScript.Shell").ExpandEnvironmentStrings("%TEMP%") & "\" & FSO.GetTempName
    Set TxtFile = FSO.CreateTextFile(TempPath)
    TxtFile.WriteLine(StrToFile)
    TxtFile.Close
    CreateObject("WScript.Shell").Run "wordpad.exe " & TempPath
End Sub

Язык JScript:

//**************************************************************
// Информация о видеокарте
// Win32_VideoController.js
//**************************************************************
 
var objWMIService, colItems, objItem
var VideoInfo, objItemC, objClassPropertyC, objClassProperty, strVal
var TempPath, TxtFile
 
// Получаем доступ к инструментарию Windows Management Instrumentation
objWMIService = GetObject("WinMgmts:\\\\.\\Root\\CIMV2");
// выполняем WQL запрос и получаем коллекцию
colItems = objWMIService.ExecQuery ("Select * from Win32_VideoController");
 
// Начинаем перебор коллекции
objItem = new Enumerator(colItems);
 
VideoInfo = "Информация о видеокарте\n\n";
 
for (; !objItem.atEnd(); objItem.moveNext()) {
    objItemC = objItem.item();
    // Начинаем перебор всех свойств для текущего экземпляра класса WMI
    objClassPropertyC = new Enumerator(objItemC.Properties_);
 
    for (; !objClassPropertyC.atEnd(); objClassPropertyC.moveNext()) {
    objClassProperty = objClassPropertyC.item();
            // Если значение больше 0
            strVal = objClassProperty.value
            if (strVal != null){
                VideoInfo+= objClassProperty.Name + "= " + objClassProperty.value + "\n";
            }
    }
    VideoInfo += "----------------------------------------------\n\n";
}
ShowInNotepad(VideoInfo)
 
//Функцияя временного файла с данными
function ShowInNotepad(StrToFile){
    FSO = WScript.CreateObject("Scripting.FileSystemObject");
    TempPath = WScript.CreateObject("WScript.Shell").ExpandEnvironmentStrings("%TEMP%") + "\\" + FSO.GetTempName();
    TxtFile = FSO.CreateTextFile(TempPath);
    TxtFile.WriteLine(StrToFile);
    TxtFile.Close();
    WScript.CreateObject("WScript.Shell").Run ("wordpad.exe " + TempPath);
}
Оцените статью
Технологии программирования и ведение блога
Добавить комментарий