获取显示器信息:厂商、品牌等

wmi可以获取基本的一些信息,但是厂商品牌等好像获取不到:

On Error Resume Next

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colItems = objWMIService.ExecQuery("Select * from Win32_DesktopMonitor",,48)

For Each objItem in colItems

    Wscript.Echo "Availability: " & objItem.Availability

    Wscript.Echo "Bandwidth: " & objItem.Bandwidth

    Wscript.Echo "Caption: " & objItem.Caption

    Wscript.Echo "ConfigManagerErrorCode: " & objItem.ConfigManagerErrorCode

    Wscript.Echo "ConfigManagerUserConfig: " & objItem.ConfigManagerUserConfig

    Wscript.Echo "CreationClassName: " & objItem.CreationClassName

    Wscript.Echo "Description: " & objItem.Description

    Wscript.Echo "DeviceID: " & objItem.DeviceID

    Wscript.Echo "DisplayType: " & objItem.DisplayType

    Wscript.Echo "ErrorCleared: " & objItem.ErrorCleared

    Wscript.Echo "ErrorDescription: " & objItem.ErrorDescription

    Wscript.Echo "InstallDate: " & objItem.InstallDate

    Wscript.Echo "IsLocked: " & objItem.IsLocked

    Wscript.Echo "LastErrorCode: " & objItem.LastErrorCode

    Wscript.Echo "MonitorManufacturer: " & objItem.MonitorManufacturer

    Wscript.Echo "MonitorType: " & objItem.MonitorType

    Wscript.Echo "Name: " & objItem.Name

    Wscript.Echo "PixelsPerXLogicalInch: " & objItem.PixelsPerXLogicalInch

    Wscript.Echo "PixelsPerYLogicalInch: " & objItem.PixelsPerYLogicalInch

    Wscript.Echo "PNPDeviceID: " & objItem.PNPDeviceID

    Wscript.Echo "PowerManagementCapabilities: " & objItem.PowerManagementCapabilities

    Wscript.Echo "PowerManagementSupported: " & objItem.PowerManagementSupported

    Wscript.Echo "ScreenHeight: " & objItem.ScreenHeight

    Wscript.Echo "ScreenWidth: " & objItem.ScreenWidth

    Wscript.Echo "Status: " & objItem.Status

    Wscript.Echo "StatusInfo: " & objItem.StatusInfo

    Wscript.Echo "SystemCreationClassName: " & objItem.SystemCreationClassName

    Wscript.Echo "SystemName: " & objItem.SystemName

Next

其中有一个字段PNPDeviceID倒是显示了可能的品牌:

---------------------------

Windows Script Host

---------------------------

PNPDeviceID: DISPLAY\DELD036\5&60ECEDB&0&UID1048833

---------------------------

 

可见wmi的信息不足够,获取厂商和品牌等信息可以通过EDID来获取,这个信息在注册表:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\DISPLAY\DELD036\5&60ecedb&0&UID1048833\Device Parameters

EDID里。

 

EDID: Extended Display Identification Data(扩展显示标识数据)是一种VESA 标准数据格式,其中包含有关监视器及其性能的参数,包括供应商信息、最大图像大小、颜色设置、厂商预设置、频率范围的限制以及显示器名和序列号的字符串。 这些信息保存在 display 节中,用来通过一个 DDC(Display Data Channel)与系统进行通信,这是在显示器和 PC 图形适配器之间进行的。最新版本的 EDID 可以在 CRT、LCD 以及将来的显示器类型中使用,这是因为 EDID 提供了几乎所有显示参数的通用描述。
EDID 由128个字节组成,大致划分如下
0-7 :头信息 ,8个字节,由00 FF FF FF FF FF FF 00 组成
8-9:厂商ID
10-11: 产品ID
12-15:32-bit序列号
16-17 :制造日期
18-19 : EDID 版本
20-24 : 显示器的基本信息(电源,最大高度,宽度)
25-34 : 显示器的颜色特征
35-37 : 显示器的基本时序,定时 ,分辨率
38-53 : 显示器的标准时序及定时
54-125: 显示器的详细时序及定时
126: 扩展标志位,EDID-1.3版本需要忽略,设置为0
127: 求和验证值

 

 获取信息如:

你可能感兴趣的:(获取)